Talk about the types and differences of software testing

I have been in Internet software testing for a few years, but when I look back, I find that I haven't had a global view of the software testing industry. Fortunately, I met a big-time figure, and his perspective gave me the feeling of standing high and looking at the whole picture. Here are his views

If you have been in this industry for a while, you must be confused: what exactly is a test engineer? In the early years, we mentioned test engineers, or software test engineers. The concept is very clear, and it is such a job to test the system. But up to now, the topic of software testing engineers has become a bit ambiguous. why? Because the division of labor in modern software testing is becoming more and more detailed, there are many vertical divisions, even though each field is called a test engineer. But its main points of knowledge are different from what it does, as well as the abilities that are valued in the job during study and interview. So under this circumstance, let's first talk about what types of jobs are available in modern software testing. How do we learn this role based on this type of work. In this way, we can help you understand the overall situation of the entire software test.

Types of software testing:

  • Business test
  • Business automation testing
  • Test development
  • Performance Testing
  • Safety test
  • Quality assurance
  • Test architect
  • Test manager

The above are the more common types of testing tasks at present.

Let's talk about the core competitiveness of each type of work, or where the core competitiveness of this vertical field is. When companies recruit such engineers, they value these capabilities.

First, let's talk about business testing: business testing is the most traditional software testing, which is to use the product, verify the function, and test the product in multiple directions and angles based on the user's needs of the product. The core competitiveness is to have a full understanding of the system under test. In addition to the functions of these software, the most important thing is the understanding of the business itself. For example, your test object is an e-commerce company, such as Taobao and shopee. First of all, you must be an expert in the business field. In other words, you fully understand how the business is carried out, how the settings allow users to use the software, and can test whether the software is positive and non-positive in multiple directions and angles. This is based on the design of test cases based on your understanding of the functional business. This is the most traditional test.

Business automation testing: The main task is to transform business test cases into automated test cases, which means that on the basis of business test cases, through the choice of test framework, business test cases can be converted into test scripts that can be automatically executed. The core competence of such engineers lies in their proficiency in the use of tools and testing frameworks. Assuming that you use python+selenium to write web automation, it is your familiarity with selenium, how to locate elements, and make assertions.

In real companies, the first type of business testing and business automation testing are completely separate in some companies. In more companies, these two roles will be integrated. In other words, we will require business test engineers to have a certain ability to develop automated test scripts, and business automation engineers to have certain business testing capabilities.

Test development: Business automation testing is also test development, and test development is also development. Test development here is not about writing test cases or translating test cases into test scripts. This refers to tools to develop and implement tests. For example, the secondary development of selenium to achieve the package that meets the special requirements of your own company, and the package of assertions are added at the same time. That is to say, the essence of test development is development, but the products it develops are for software testing services. At present, big factories have a lot of demand for this kind of position, and the requirements are also the highest. In terms of salary, it is also the most competitive. It does not mean that business testing is not important, but that there are two dimensions to ensure software quality. Business test is the test itself, and test development is to make the test more convenient to complete the test of the business. This type of role is currently the most compact role. This core competence involves a relatively wide range of knowledge. In addition to basic knowledge of the testing theory system and engineering practice methods, it must be a qualified, preferably an excellent developer. In other words, he is at least no different from development.

Guess you like

Origin blog.csdn.net/chuancheng_zeng/article/details/109282434