More than 100 days, 0 basic self-learning and switching to software testing, from 3000 to 15k monthly salary, I have compiled a super complete study guide

Switching to software testing is a last resort, but fortunately, through my own efforts, I got a satisfactory return. I hope you can get some help and ideas from my experience.

I majored in hotel management at university. When I entered the school on the first day, I imagined that one day I would become a senior hotel manager and manage a five-star hotel. It's a pity that what I gained in three years of university was just one regret. For various reasons, I did not learn the major well, and finally gave me a very absurd internship experience.

The work was fruitless. After suffering for a month, I began to consider changing careers. After understanding various information, I finally chose software testing. Because everyone knows that the IT industry is synonymous with high wages, which makes it look decent in front of relatives and friends. And software testing is the easiest way to get started in the IT industry.

The first difficulty encountered in changing careers with zero foundation is how to learn. At first, I was confused. I could only read some books online, but the results were very limited. So, I started frantically looking for tutorials on the Internet and asking for help, but in most cases, I was in a mess and couldn't get an effective answer. And I don't have the ability to sort out these materials. I once began to doubt myself, should I choose to give up?

I thought about giving up, but I don't have any more options. Even if there is, will I face giving up again? The beginning of everything is difficult, and I need to have this kind of awareness. I can only continue to move forward. Fortunately, the turning point has come. When I was looking for resources on the Internet, I added a lot of related technical groups and met some friends in the industry. With a clearer understanding. I also received a lot of help, which gave me more confidence to do this well.

For more than 100 days, from day to night, I was either studying or on the way, from testing theory to actual operations, big and small problems, with the help of the seniors in the group, they could always be solved quickly. Slowly, test methods, use case design, web testing, app testing, interface testing. Although it is still far from being a technical master, it should be no problem to find a job as a junior test engineer.

According to the suggestions of the seniors, before looking for a job, I did a lot of interview questions, and I was well prepared. Finally, after interviewing 5 companies, I got an offer from an e-commerce company, which cost 8,000 per month. It has been very successful for me, and it makes me look forward to the future.

0 Is it difficult to test software for basic career change? How can I study to get a job? This should be a problem that all newcomers will face, so I combined my own experience and made some summaries and learning methods, hoping to be helpful to everyone.

I roughly divide it into 3 grades according to the difference in salary:

  • Monthly salary 5-9k: from zero basic entry to being able to find a job
  • Monthly salary of 15-25k: test on-the-job performance testing and automated testing
  • Annual salary of 30W+: complete test development and enter first-tier factories

The first stage: monthly salary of 5-9k, just entering the industry, first learn functional testing!

Maybe you are a fresh graduate, or you are planning to change careers to enter the software testing industry, so first of all, you must master the following basic theories :

Definition, life cycle, workflow, and requirement analysis of software testing;
design, writing, and review of test cases;
basic knowledge of bugs and the use of Zen Tao;
writing of test plans and test reports; use of
SVN and Git version control tools;

After getting the above basic necessary content, you already know that you can do specific actual content. At this time, it is best to find a web test project to do it. If a project is obtained, run it according to the following set of procedures. :

Publish the project for project approval, establish a project team for division of labor;
require review, learn how to read requirements documents, conduct requirements analysis, and list test points;
organize test points, write test cases, and then conduct use case review;
Execute tests, such as functions, interfaces, front-end Background, compatibility, database, submit the found bugs to ZenTao;
analyze, summarize, and write test reports;

After running this process completely, it can only be said that the overall testing process is mastered, but it is still not enough to find a suitable job. If you want to learn to do functional testing, the following contents must also be mastered:

Linux, database, interface testing, APP testing, etc.

OK, that's all done, congratulations, you're ready to send out your resume to find a test job!

Well, that is probably the content above. All of the above are theoretical and documentation skills. As long as you are willing to memorize and write, you can master them independently.

After meeting the above content, it can only be said that you can get a job, but now the industry has higher requirements for recruiting people, and you can get a monthly salary of more than 10k if you do automation or performance testing.

The second stage: monthly salary of 15-25k, get performance, automated testing, and be on your own!

Let’s talk about performance testing first. There are many misunderstandings and pain points in the industry:

  • Only testing, not adjusting, cannot give R&D and operation and maintenance personnel implementation suggestions
  • Unable to locate problems, lack of clear logic and data to prove value
  • Performance testing tools ≠ performance testing
  • The performance testing technology system is backward (loadrunner), and it is urgent to embrace open source software

If you want to solve these problems, then performance testing you have to learn:

The concept and process of performance testing: analysis of common problems, popular tools, solution design
Performance testing tools: the use of jmeter tools, actual combat; jmeter multi-protocol, expansion and customization; distributed stress testing and task scheduling;
performance monitoring: performance monitoring system and Monitoring data collection
Performance implementation: distributed service stress testing, scenario design, scenario execution; test result correlation analysis, TPS, response time, thread correlation analysis, pressure and resource usage correlation analysis
Performance analysis and reporting: jvm debugging and system debugging; Performance Bottleneck Analysis

If you can get to this level in performance testing, 15k is appropriate. If you can master the learning content of the automated test below, you can directly impact the monthly salary of 25k!

To get the Python or Java language, it is recommended to start with Python and learn the basic syntax of Python first.

Web-side automated testing: selenium installation, recording, processing; web controls, JavaScript scripts, PO mode;
mobile-side APP automated testing: appium usage, recording, element positioning methods; APP control positioning, interaction, parameterized use cases; appium problem location analysis , source code analysis, secondary encapsulation;
server-side interface automation testing: interface automation testing framework request; interface request construction, assertion; json/xml request, response assertion; headcookie processing, authentication system;

The third stage: monthly salary of 30k+, benchmarking against large factories, impact testing and development positions!

You are proficient in performance and automation, and a monthly salary of 10k+ or even 20k+ is very easy. How to hit 30k+? This requires development to technical experts or management, but even if you do management, it is necessary to require a hard enough technical level? Saying that you don't need technical proficiency to do management? Will the people below you try to turn against you?

On the test development route, it is required to be more specialized and comprehensive:

Improve the testing technology system: Linux, docker, shell, SQL, Python/java,
lay a solid foundation for automated testing technology:
web automated testing: selenium testing framework; PageObject design patterns, principles, and drills;
APP automated testing: Android automated testing framework; appium advanced Applied to principle analysis; APP automation test practice; test framework packaging transformation; ios automation test;
mobile special test: robustness test, weak network test, crash detection, power consumption analysis, etc.; mobile terminal performance test; mobile terminal security test;
Interface automation test: interface protocol and packet capture, proxy technology and mock; interface automation test framework, HTTPrunner test framework; dubbo interface automation test; interface management tool swagger, interface security test
Docker container technology: docker container, docker image;
continuous integration/ Continuous delivery/devops: jenkins continuous integration; Jenkins continuous delivery;

Here, I would like to give some advice to friends who want to advance: Many times, many things are not as simple as you think. Don’t think that it is easy and don’t want to do it. Many things can only be done by yourself. After a while, you will find that things are not as simple as you thought at first.

In fact, there are only so many knowledge points in automated testing, and there are still so many things to ask in interviews. So there are no other tricks to the interview, it only depends on how well you understand these knowledge points. So, when you go out for an interview, first look at which stage of your review you have reached.

After mastering the above content, and then integrating your own understanding and practice, and running the whole process again, then you basically have mastered the overall testing process. If you encounter problems later, you will be solved easily. If you don't understand the problem, you can privately message me to interpret it for you.

Practice brings true knowledge

The learning of any skill is based on practice, and the IT industry places special emphasis on project experience. If you don't practice, it's like spending half a day learning the theory of shooting, but you don't have a chance to touch the gun at all. Do you think you're accurate? If you want to learn software testing well and have a deeper understanding of the technology, you must practice more. There is no proficiency bonus. No matter how much you learn, it is only on paper. Once you face real problems, you will not be able to start. .

It is actually not difficult to learn software testing, the difficult thing is to persevere and believe in yourself. My experience is that since you have chosen software testing, you must believe it and believe that it can become an efficient channel for your future advancement, so that you will be more Faith to learn, in order to persevere in the face of difficulties.

Also, don’t fight alone, it’s better to be in a group to keep warm and achieve mutual success and grow together. The effect of the mass effect is very powerful. When everyone learns and punches together, they will be more motivated to learn and more able to persevere.


Finally, I would like to thank everyone who has read my article carefully. Watching the rise and attention of fans all the way, there is always a need for ritual exchanges. Although it is not a very valuable thing, if you can use it, you can take it directly.

These materials should be the most comprehensive and complete preparation warehouse for friends who do [software testing]. This warehouse has also accompanied me through the most difficult journey. I hope it can also help you! Everything should be done as early as possible, especially in the technology industry, and the technical foundation must be improved. I hope to be helpful…….

Guess you like

Origin blog.csdn.net/jiangjunsss/article/details/124344798