Novice Xiaobai switched to software testing, how to change from a monthly salary of 5,000 to a monthly salary of 20,000?

A few days ago, a small partner asked in the background, how should transfer personnel enter the testing field?

Today, I will give a complete answer to this question. By the way, I would like to talk about the direction of continuous efforts after entering the software testing industry, for you who want to switch to testing and have not switched to testing, have already switched to testing, but recently entered the testing field. Yes, these types of friends can refer to it. For those in doubt, we welcome continued discussion.

Insert picture description here

1. The threshold of software testing

Software testing, as a part of the software R&D process, is an important guarantee for the quality of software R&D. As the demand for the Internet industry and software continues to increase, the demand for such talents continues to be strong. Therefore, more and more people see I want to enter this industry for this opportunity. On the one hand, as an information-based industry, this industry has a higher salary than other industries; on the other hand, as more information technology enters our lives, the development prospects in this area have also been recognized by everyone. So, all this is not difficult to understand.

So, what preparations do you need to make if you want to enter this industry? In my opinion, the first thing to understand is the basic concepts and ideas of software testing. The process of software testing in the software development process, the basic principles of software development, and the basic methods of software testing all need to be understood and mastered. Only by knowing these can we have a good understanding of what software testing is all about, and can better participate in the software testing work, and then contribute to the quality assurance of software development.

The basic concepts and ideas of software testing, I won't go into it here. What I want to say is that in my many years of test management work, I interviewed many candidates. Many candidates are not clear about the concepts and methods of software testing. They feel that software testing is just a little bit of the content in the requirements document. Even if the test is completed, the answer is very bad.

As practitioners in the software testing industry, we must be clear that software testing requires basic testing methods to ensure the quality of software. There are still many interviewers who talk about the basic method of testing. They are very good, but when they really give a requirements document to design test cases, they don’t care about what is given to us in the test method, but diverge in a wild way. stand up. This kind of decoupling between theory and reality will make the interviewer feel that he still does not have a good grasp of the testing methods. The quality of the software products tested by him is uncontrollable, so there will be a great quality risk.

Only the basic concepts and methods of software testing can be well applied to daily work, and only the "proficient in software testing methods" that we often see in candidate resumes can be transformed into real mastery. That seems to me It has passed the most basic threshold for engaging in the software testing industry. To achieve this, actively thinking about the relationship between the test method and the test case of the software being tested in daily work, and cultivating the awareness of test case design in the daily use of the software, can well improve oneself in this regard. ability.

Two, the basic skills of the test

Insert picture description here

After crossing the threshold of software testing, the next step is to master the basic skills of testing. This skill includes further understanding and mastery of the software being tested and familiarity with the testing tools used in the testing work.

In the interview, we saw that the candidate’s resume mentioned the basic introduction of the test project, including the language and framework used, but when we really asked it, we didn’t have a basic understanding of these, which was inappropriate in our opinion. . There is also the lack of basic common sense of the candidates on the platform where the project they are testing is on, which is also fatal in the interview. For example, I have experienced candidates like this in the interview. I did mobile APP testing, but I don’t know the basic characteristics of APP testing, what aspects need to be paid attention to, and how to do compatibility testing. These are all very basic in daily testing. If you can’t say it well, it will be said to be terrible.

In our daily software testing, the first thing we should pay attention to is the basic characteristics of the platform where the software under test is located. Is it Web or APP? What are the characteristics of Web products, what is the principle of implementation, what needs to be considered during the test, how does the browser carrying the Web products work, and what aspects need to be paid attention to when doing compatibility testing. What are the characteristics of APP products, what are the characteristics of the system where they are located, what are the interactions with the terminal system, and what indicators need to be considered. On this basis, combine the requirements and functional characteristics of the software to be tested to design test cases, what are the functional characteristics, how to use the boundary value method, how to divide equivalence classes, what are the exception scenarios, and so on.

In addition, we saw "proficient use of XXXX test tools" in the resumes of many candidates, but we really asked what the principle of this tool is, what are the basic operations, and what tests can help us do. I don't know. What's more, just know which button can produce what, and ask more about how these produced things are obtained, and what information is included, then I don’t know. These should not be. Such "proficient" is more about the most routine and basic use of "repetitive proficiency", rather than a deeper understanding and mastery of this testing tool.

In my opinion, using a testing tool, what is the basic principle of the tool, what the tool can and cannot do, why can it be done, what data can be provided to us during the use, and we can use this data What to do and how to assist us in testing are the first things we can understand when we get a tool. Only with this understanding of a tool can we use it better and more proficiently in our daily testing work, and maximize our testing work.

Third, the ability to test

Insert picture description here

After we have a certain grasp of the basic skills, we need to further improve our software testing capabilities.

At this time, the definition and scope of testing capabilities can be further expanded. When we test a software, we need to start contact with the lower-level things of the software, the language used, the characteristics of the framework, and the technical architecture of the software. These are very helpful for us to better understand the tested software and discover the problems in it. For larger software, we also need to understand how the modules of the entire system are divided, what is the calling relationship between modules and whether there are exceptions in the calling process, how to design the use cases here, and the use cases for error handling How to structure it, whether the corresponding data is reported after the software is released, and what kind of problems the reported problems reflect, etc., are all things we need to understand.

In the use of testing tools, we also have higher requirements, such as what other similar tools can achieve similar functions, why we use the current tool, what information can be obtained by this tool, how the data is obtained, and accurate What is the rate, whether the error is within our acceptable range, whether we need to optimize on this basis, and so on.

In addition, as our requirements for software testing are getting higher and higher, the granularity of testing is getting finer and finer. When some basic tests and conventional tools cannot be satisfied, can we develop some scripts and tools to meet our testing needs? , Can we continue to use tools to solve problems in testing, use tools to improve testing efficiency, strengthen testing depth, and so on.

Fourth, the professional development of the test

Finally, briefly talk about the career development of the software testing industry. Software testing is a technical post, and constantly improving one's technical capabilities is the core development element. Under the guidance of this major premise, it is the key to continuously accumulate the accumulation of one's own technical field and expand one's knowledge and ability in technically solving test problems.

In this sense, the development of software test engineers will progress step by step from junior engineers who can solve independent requirements testing, to intermediate engineers who can independently be responsible for larger system tests, to senior engineers who can complete the construction of test systems. In the process, his technical capabilities have also changed from the basic realization of the software under test, to mastering the system architecture, and conducting complete tests on the system architecture, from using small tools to improve test efficiency, to using test platforms and test systems to implement a complete set of tests. Implementation of the architecture.

Test management is also an option for the development of software test engineers, from independent follow-up requirements testing, to leading a small team to jointly complete a project’s testing, and then leading a larger testing team to complete improvements in multiple areas including functional testing, tool construction, etc. .

In short

Software testing is a job that requires continuous understanding of the industry, continuous improvement of oneself, and continuous consideration of the significance of testing to the project team. Only by constantly advancing, one's own career will have a better future and greater development.

Those interested in software testing can also follow my official account:Programmer two black, Focusing on software testing sharing, mainly sharing testing foundation, interface testing, performance testing, automated testing, TestOps architecture JmeterLoad, Runner, Fiddler, MySql, Linux, resume optimization, interview skills, and actual video data of large-scale test projects. Those interested can Pay attention

Share the wonderful content with your friends

Guess you like

Origin blog.csdn.net/m0_52650621/article/details/113396594