My personal understanding of the software testing Industry 1

Source: Internet
Author: User
Tags testng xunit

I want to sort out my understanding of the software testing industry over the years.

 

  • Classification of engineers in the software testing Industry

Black-box test engineers and white-box test engineers who do not view the code

Financial testing engineers, communication testing engineers, localization testing engineers, and game testing engineers are classified according to their main businesses.

Automated Testing engineers, Performance Testing engineers, and security testing engineers.

Mobile app testing engineers, mobile game testing engineers, web page testing engineers, and client testing engineers.

Sometimes there are Java testing engineers,. Net Testing engineers, and database testing engineers based on the language and technology of the software to be tested.

Also mixed with development: Test and development engineers, test tool development engineers, test architects

The most general ones are: software test engineers, Senior test engineers, Senior test engineers, test supervisors, and test managers.

In addition, the most common is compound, such as outsourcing Java testing senior engineers, IOS Mobile Games senior test engineers, the above all kinds of attribute random combination

 

  • Testing staff confused due to many job types-looking at the characteristics of the industry

Looking at the above positions, we can feel that the software testing industry is a hodgedge. There are all positions and it is hard to imagine the complicated career development path.

Therefore, on the Forum, I often see test engineers posting that "I have been working for X years, I am confused." X ranges from 1 to 10. For more than 10 years, it is a middle-aged person, I don't have time to post a post, which means I am confused or I have already been transferred. Of course, this industry does not have many years in China...

This industry has the following features:

 

  1. The income gap is huge. There are black box testing engineers with a monthly salary of 4000 or 5000, and senior testing engineers with an annual salary of several hundred thousand.
  2. There is a huge technical gap. There are manual testers who only point in the mouse, and senior testers who are proficient in program code.
  3. There is a huge gap in work content. someone clicks the mouse every day to test the xxx Information Management System. Someone tests complicated financial services and someone writes test tools, someone tests servers, middleware, socket, and high concurrency, and someone builds a test platform.
  4. There are severe technical barriers between different positions. For example, if you ask a black-box manual tester to watch two security testers perform penetration tests, he may not understand what these testers are doing. If you give a manual/automated Tester of a website a written question (the SQL, function, and stored procedure of a specific database), it is likely that you have to submit a White Paper. On the other hand, there is no barrier to switch from a technical testing position to a black box manual testing personnel, but it is generally not the case ....
  5. The entry threshold is low. After three months of simple training, an irrelevant professional can master the normal black box testing method and become a software testing engineer, earning 3-5 kb of salary.
  6. Manual black box testing is a mainstream profession. Most small and medium enterprises in China need a large number of manual black box testers. At the same time, large financial institutions and Internet companies still need senior black box testers.

As a result, a large number of layers flood into the Black Box manual testing positions in the software testing industry and give the overall impression that the testing personnel are not technically competent.

  • Development path of positions in the software testing Industry

Black box testing has the following features:

  1. The training threshold is low and can be mastered for three months. When I was outsourcing, I had a company disguised my 3-month-trained fresh graduates as two years of experience as black box testing engineers who sent them to the customer. The customer did not doubt and finally gave praise.
  2. The technical route is zero in length, so it is difficult to create a black box.
  3. Without updating the testing technical knowledge, it is still the black box testing method around the 1960s S.
  4. Relying on business knowledge as the core competitiveness, such as financial testing engineers
  5. The career development route is generally the test management direction or simply the transfer. It can be said that if most practitioners do not want to change their careers, they all want to perform test management. Then we can imagine that the competition is fierce, and it is increasingly difficult for people who only want to perform black box testing to obtain management posts. Why? Because many people now know a little about technology.

  

A little technical understanding means a little automated testing.

Automated Testing has the following features:

  1. Everyone is talking about it and there are descriptions of the job, but most people only know what it is (because they have been black box for a long time, and there is no accumulation of technical routes)
  2. Automated Testing is hard to find. First, automated testing is very costly for enterprises and can be effective only after long-term investment. This is impossible for small domestic companies. Second, there are not many projects that are suitable for automation, for example, if you want to perform 8 years of localization testing for 40 languages, it is very suitable, but after all, it is not suitable for a very unstable website, but most of them are in China. Once again, there are basically two types of people you can recruit. One is for black box testing and one is for automated testing, technically, it is basically not expected, and there is basically no learning ability, which must be taught by experts. The other is the original development, persons performing automated tests due to stress, boredom, and other reasons. This technology is acceptable. However, the problem is lack of test thinking. Can do, but not necessarily do well, often fall into the trap of automated testing and mud pool. However, if you want to recruit people with good technical skills and test thinking, you will not be able to do so. Of course, a giant with a lot of money can break these people out of money.
  3. Understanding the automation testing technology may not necessarily help you find the automation testing job, but it is of great help to find the manual testing job. So if black box testers are afraid of unemployment or being squeezed out by fresh graduates, they must learn a little automated testing to improveOn the surfaceTechnical competitiveness. Even if you don't do it, you have to do it, and you are basically at ease. Generally, companies cannot afford the cost of automated testing and won't really let you do automated testing.
  4. Self-taught, No one taught. I don't know how to use automated testing to read various automated testing tutorials, books, and videos in China. After reading this, I thought it was Shi.Why? They don't teach principles, they only teach tools. Don't teach thinking, just teach methods.The consequence is that you learned what you learned, and learned what you learned ". We recommend that you use English documents for self-study, which is 100 times better than Chinese documents. Of course, there are also good Chinese materials, but there are very few. They are mostly written by some people who make money, and some people who have their own personal knowledge can't help people. There are many good materials.
  5. High-end positions and developers have high skill overlapping. What's the problem? You do black box testing and know a little about automated testing. When you compete for a high-end automated testing job, you cannot compete with senior developers. Go to the job descriptions of the high-end automated testing jobs of Internet giants, and you will find that it has nothing to do with what you usually use. That is to say, the employees of automated testing want to take high-end positions and need to face the huge challenges of developers from the transfer.
  6. Can be replaced by manual tests. For most small and medium-sized enterprises, once the cost of automated testing is not estimated enough, the automated testing will fall into a trap and Quagmire. Based on the National Day, many companies will use a large number of manual testing interns to replace automated testing. The effect is also good. Therefore, unless it is a suitable project for automated testing and a company that has sufficient cost estimates, automation is generally not performed. Another advantage of recruiting a large number of interns is that management jobs are easy to generate, and most of those who are black box testers are waiting for this opportunity to become supervisors.
  7. The career development path is generally to continue to automate or try to challenge the high-end positions of giant companies. More people will automatically compete with black box testers for testing and management positions, at this time, they have inherent technical advantages.

  

Traps and traps of automated testing:

  1. HP's qtp ads are deeply rooted in the hearts of the people, and there are still many supporters of the automation of recording playback. However, this type of job stays on the use of tools. For individuals, the technical route is extremely short. This tool is designed to be used by people who are not very technical. For the company, commercial tools are indeed the lowest-cost automated testing solution. So many companies still use him. However, it is difficult for him to recruit people who are willing to sacrifice their technical routes for the company. Generally, he can only recruit black box testers who know a little bit of technology to perform such automated tests. There is a very old story: a tester came to a software company, and the Technical Director pointed to a computer filled with dust in the corner and said, This is our dedicated automated testing machine, however, the recorded scripts cannot run normally. Now we are not doing automated testing.
  2. Open-source tools cannot be used independently, but black-box testers with a little knowledge of technology cannot build a testing framework. Selenium, the most popular open-source tool for website testing, must be used with the test Executor (xunit series. The team must have at least one person capable of building a testing framework. In fact, many teams do not have this number. The four words used to build the test framework are a mess. In short, this will have a great impact on the people behind the project. If the person taking the framework has left, you 'd better figure out whether or not you want to go to this project for automated testing. A poor framework will make you feel uncomfortable and give rise to the idea that it is better to do a manual test.
  3. Why is it difficult for black-box testers who understand a little technology to build a testing framework. Why is it difficult for developers who know a little about testing to build a testing framework.Because they share a common feature: they do not understand the principle of automated testing.For example, for automated testing, we need to focus on maintainability and design a reasonable code reuse mechanism. Taking selenium, the most popular open-source tool for Web testing, the official website will introduce how to use the Page Object Model. But most people do not understand it. For example, building a good selenium framework requires a good programming language foundation. Suppose you have recruited a majority of junior developers or black box testers who know a little about the technology to use Java and selenium for automated Web Testing. You told him that "multi-purpose combinations use less inheritance ", he doesn't understand what you are talking about at all. He writes Java, regardless of the inheritance of November 21, and then the inheritance of his mother, he will inherit, or he simply inserts everything into a class, then you will see that they write thousands of lines of God classes in the test code and write inheritance chains of dozens of classes. You told him about the test execution mechanism of testng, and he was confused. I have seen that an actual project uses an automated test script for five years. It actually uses its own code to re-implement the built-in function of testng, in addition to increasing the complexity of the test code, there is no benefit (isn't it the great wisdom of their first-generation authors to improve the irreplaceable ability of testers ?), Some developers may use spring to encapsulate the test class in a whimsical manner (so he certainly never used the xunit series test executor ). In addition, you will see thousands of lines of test data and thousands of lines of test results in the same text file, and then people cannot find the data to be found, he just randomly writes a line of data he wants into this huge text file, regardless of whether it is repeated above. In this case, I just want to say, the original author who has left the company. If you come back, let me have a sigh of relief.

To sum up, for these reasons, most of your small and medium-sized companies want to perform automated testing on the user interface layer. However, automated testing does not mean automated testing on the user interface. You can also perform interfaces and unit tests. Interface testing is a very suitable starting point for automation. If the technical director asks me how to start automation, I will recommend him to start from the automation of interface testing. This is a rare win-win situation for companies and testers.

My experience in interface testing:

  1. This is countless times simpler than the black box test, and the salary is actually higher than the black box test.
  2. It's so easy.
  3. Do not recruit me a black box tester who understands a little technology, or recruit me for preliminary development of testing. Okay, you can only recruit this. I have to redo all the things they made at last. It's better to do it myself ...... Forget it and teach it slowly. If you do not understand the principle of automated testing, you will be bored. If you are tired of doing well, I will not bother teaching.
  4. Interface testing relies on the cooperation of developers. We don't have time to read the code (for more people, we don't actually understand it). If developers are willing to help you, in this position, your work is easy to achieve.

Interface function testing is a prime point in the testing industry. Naturally, you can access the stress testing of interfaces and authentic performance testing. (To be continued)

 

My personal understanding of the software testing Industry 1

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.