10 years of software testing engineer's insights - writing to friends who are still confused

In the past two days, I talked with my friends about the development of software testing. In fact, software testing has undergone great changes unknowingly. The software testing industry in the past few years was still an outlet. The software testing industry has flooded into the software testing industry. At present, the "gap" in the software testing industry has been basically saturated. Of course, what I am talking about is that there are very few job requirements for the most basic functional testing, but there are still many opportunities for automation, performance, security, and even big data testing and AI testing that may appear in the future.

"The back waves of the Yangtze River push the front waves, and the front waves die on the beach", a joke that once made people smile, has now become a true portrayal of the software testing industry. Due to the low barriers to entry and high salaries in the software testing industry, there are constantly fresh blood washing over the "forerunners" in the software testing industry, which has brought us great pressure.

One can imagine the pressure faced by those students who have been in the industry for several years but are still functional tests. After all, the software testing industry is still a technical position. Since it is a technical position, it must rely on technology to speak. Continuously mastering new skills and improving the ability of software testing to "find bugs" has become an urgent problem that software testing practitioners need to solve. Therefore, most junior functional testers are now moving closer to automation, performance, and security.

However, there are still many software test engineers standing at the "crossroads" confused, helpless, and unable to find their own direction.


All the confusion is due to thinking too much and doing too little! Every practitioner in the software testing industry is aware of the current dilemma they are facing, but there are still too few people who can make timely changes and adapt to the changes of the times. Do most people obviously "mountain Tai collapsed in front of them and their faces are like dirt" but they can only watch themselves being eliminated by the industry?

No, the following software test engineer development direction knowledge architecture system diagram will tell you where to work hard:

1. Necessary knowledge of Linux

As the most popular software environment system, linux must be mastered. The current recruitment requirements require linux ability.

2. Shell script

Master shell scripts, including shell basics and applications, shell logic control, shell logic functions, etc.

3. Principles of Internet Programs

The only way to automate: basic knowledge of front-end development and necessary knowledge of Internet networks.

4. Mysql database

Software test engineers must have Mysql database knowledge, not just the basic "addition, deletion, modification and query".

5. Packet capture tool

Fiddler, Wireshark, Sniffer, Tcpdump and various packet capture tools are suitable for various projects, and there is always one suitable for you.

6. Interface testing tools

Interface testing artifact, a powerful tool you can't avoid: Jmeter. Small and flexible: Postman.

7. Web automation test Java&Pyhton

Understand the purpose of automation, master testng&unittest automation framework, and assertion and log processing.

8. Interface automation and mobile phone automation

Professional interface calling and testing solutions. Build a complete web and interface automation framework, which is used by Appium as a whole.

9. Agile testing & TestOps construction

Unveiling the mystery of TestOps, the continuous integration of the Jenkins framework is familiar.

10. Performance Test & Security Test

The other side of software testing: performance testing and security testing, choose the right direction, and work hard to climb the pit!

The above is a knowledge architecture diagram of the development direction of software testing engineers that I compiled for you. I hope that everyone can complete the construction of such a system within 3-4 years according to this system. It can be said that this process will make you miserable, but as long as you get through it. Later life will be much easier. As the saying goes, everything is difficult at the beginning, as long as you take the first step, you have already succeeded in half, and when you look back on this journey after completion, you will definitely feel a lot of emotion.

If you don’t want to experience the feeling of not being able to find information, no one answering questions, and giving up after a few days of self-study, the resources I compiled below should help you a lot:

全部资料获取:

insert image description here

Guess you like

Origin blog.csdn.net/m0_53918927/article/details/131542127