What is the highest level of testing?

     Participated in the unit organization's test architect training today. The external consultant asked me a question: what is the highest level of testing? The hasty answer I gave at the time was: "Help your organization to improve and establish a correct quality concept; help your organization to establish an effective process system and technology stack to prevent and detect bugs." Due to time constraints, this question was not discussed in depth, but I can't stop thinking about it all the time. What is the highest level of testing? After thinking about it carefully, I found that my answer is quite good.


      The highest state represents the ultimate, and the ultimate is to continue to pursue when it has reached a very good point: Can I do better? If you continue to do this, at some point, there will be a qualitative leap, allowing you to jump out of the original frame and get a bright answer. There are many such examples: after people found tungsten filaments to replace Edison's bamboo charcoal fibers as the filaments of incandescent lamps, subsequent engineers made thousands of times of Edison's efforts, but they could not effectively improve the photoelectric conversion ratio of incandescent lamps until The emergence of energy-saving light bulbs has changed the way of thinking, and the energy efficiency has been improved by an order of magnitude.

      The original definition of testing was to find defects. You will all be familiar with this curve in the figure below: the later a defect is discovered, the more expensive it is to fix. According to this line of thinking, the earlier the defect is found, the better? What is early? If it is a general software life cycle, it is perfect if all defects can be found in the requirements phase. This is obviously a fantasy, the code has not yet been written, how can you find the defects in the coding process? Defects occur in various stages of the software life cycle, imagine if you can find all the defects in this stage at the beginning of each stage Defects are also good, but they are impossible. Take the defects generated by the coding process as an example. When a method has not been written, how do you find its defects? There are 2 ideas to solve this problem:

1. Stage subdivision, the work of each stage is subdivided (agile idea: work subdivision, such as the scrum model, which allows each sprint to implement features that can be tested)  

2 . Another way of thinking, how can we do better than testing? That is prevention. Based on this theory, there are various checklists and various entry reviews (relative to this stage, which is inspection, and relative to the next stage, prevention), and test-driven development is strictly a means of prevention.

The essence of doing these two things is to help the company establish an effective process system and technology stack for preventing and discovering bugs.

And this can not only be done by the strength of the testers themselves, but also by the joint efforts of all team members. The students who do the test should act as promoters and practitioners to instill quality awareness into each team member. conscious or even subconscious (note: instilling awareness is not just the responsibility of testing classmates!)

  Finally, a short story is briefly reviewed: Bian Que is a famous doctor in ancient times, but when people ask him, he thinks that the elder brother who provides health care for people is a genius doctor. But in the eyes of others, his eldest brother is just an ordinary man.

That last sentence doesn't actually happen to software testers. You can do it, or push to do it. It will be generally recognized by everyone:) The consciousness of the IT industry is still very advanced.



Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325426359&siteId=291194637