How to learn software testing (test development) when entering or switching to a career

When I first entered this industry in 2009, I was at a loss as to what to learn. I remember that in 2008, the company I joined gave us training for these newcomers. The training introduced a lot of concepts, telling us that quality is very important, the prospect of software testing is good, and it also taught us a lot of software testing theory and knowledge, and at the end also introduced us to the so-called high-level automated testing and performance testing. However, in the following three years, the wrong knowledge that was instilled in me during the training at that time continued to hinder my career. During the trough period, I even felt that this work was a waste of time. At that time, I can do it for a little while. It is good or bad after I finish the measurement. I can’t distinguish it. It's up to my fate. It's up to you. How much time does the developer leave for you. For development with low code quality, every bit of it is all bugs. Then I was asked to back up, saying that there was a bug because I didn't detect it. Occasionally, I will meet some technicians who do performance testing, but to me it is completely heavenly book, I don't know what they are doing.

Later, I gradually realized that all the problems at that time were the result of the misconceptions instilled in the induction training.

Where is the error:

The test theory of the waterfall model is not applicable or not completely applicable to the current iterative model.
Back then, testing focused on black box testing and automated graphical interface testing, and these two testing methods are destined to have a low upper limit and poor prospects. Black box testing is for individuals and can be tested after training. Maybe the newcomer is not as good as me, not as fast as me. However, the newcomer wins by being cheap and by the number of people. In the black box test, the number of people can completely defeat the quality of people. In black box testing, it is difficult to measure the impact of personal technical level on the effectiveness of testing work, that is, performance is basically invisible. Therefore, this field is extremely involuntary, and everyone wants to manage. And then keep backing the pot.

Graphical interface automation, poor stability, the front end may not cooperate, and the biggest problem is that the code for graphical interface automation is just a simple call to the third-party library interface. It's great to make a page object mode to separate the positioning statement from the test logic. Any fresh graduate with a little code foundation will definitely be able to get started after a month of training. Perhaps newcomers are not as skilled in calling third-party libraries, and not easy for me, but newcomers are better than cheap, better than more people, graphical interface automation, the number of the same people is better than the quality. Later, I also saw that the entire graphical interface automation team was of a newcomer-level technical level, and it was still done by frequently changing test scripts. And the only page object design mode is the difference between knowing and not knowing. As long as you know it, you can master it very quickly, because there is no technical threshold.

Performance testing, you only know how to do it with tools, you don’t know how to do it, you don’t know what specific things to do, you don’t understand the indicators, and you won’t optimize. The training I participated in that year only told me that this thing is difficult, the design scenario is difficult, the analysis chart is difficult, and the tuning is difficult. In fact, after I learned later, I learned that performance testing is not that difficult. (For performance testing, please see: Zhang Ting: How to get started with performance testing)

How to learn software testing (test development) when entering or switching to a career

There are many things to learn:

1. Testing theory 2. Programming language 3. Network knowledge 4. Common testing tools 5. Operating system 6. Continuous integration and delivery 7. Specific technologies (interface testing, graphical interface automation, performance testing, web development)

The key points:

Test theory must keep pace with the times, and the untimely things in classical theory must be bold to abandon it.

In order to learn programming languages ​​in depth, it must reach the level of ordinary developers.

Network knowledge runs through all the technical knowledge in the entire learning process, and many book-like problems are determined by network knowledge.

Common testing tools should be mastered step by step, and learn where to use them.

To learn the operating system slowly, first learn to set up a test environment, find and analyze logs and other common operations.

Continuous integration does not only build up jenkins, there are many complicated points behind it.

Specific technology is the focus, although I put it at the end. But the four specific technologies here are very important except for the automation of the graphical interface. The most important of these are interface testing and web development. Both have been studied to get through the knowledge network. Connect everything you learned before. In addition, databases, containers, etc. are simply covered in the learning of web development, don't need to be more proficient, just know the general idea.

Insert picture description here
Insert picture description here
The above are some video resources I collected, which helped me a lot in this process. If you don't want to experience the feeling that you can't find the information during self-study, no one answers your questions, and insists on giving up after a few days, you can join our deduction group [313782132], which has various software testing resources and technical discussions.

Insert picture description here
Of course, there are interviews. Interviews are generally divided into technical and hr interviews. In terms of format, there are few group faces. A small number of companies may have an intersection, but in general, the technical aspect is basically an inspection of your professional and technical level. , then hr surface mainly to see the person's overall quality and family situation character does not meet company requirements, in general, technology, then as long as through the technical hr surface is basically no problem (there are a few companies hr face will brush a lot of people)
we Mainly speaking on the technical side, the technical side is mainly to examine the professional technical knowledge and level. The above are also selected interview questions I have compiled.

Come on, test man! If you need to improve your plan, do it. It's better to be on the road than to wait and see at the beginning. There must be a law, and then there will be success.

If the resources are good, give a recommendation~

Guess you like

Origin blog.csdn.net/weixin_50271247/article/details/108667439