"To give people to fish, rather than to teach the fishing" is to impart knowledge, rather than teach people to learn the method of knowledge. Today I would like to focus on this from the thinking level to do a sublimation: "Grant to the fishing, then the first enlightenment."
To do a good job in software testing, the first accomplishment is to understand three questions. This is the "enlightenment" mentioned above. If a developer modifies a bug, we test it with the idea of "three questions," which can be helpful for testers to understand the requirements.
How to comprehend "three questions". You will certainly ask: "which three questions?" "
For example, let's design a scene: Imagine that you're walking down the road, a stranger without further ado a slap in the face.
You will think of something rationally. "Did I inadvertently offend him?" Is this person mentally problematic? "He's mistaken for someone?" And so on Whatever you think about, it boils down to the question of "What is the reason for hitting me".
First question: "What is the reason?"
The developer submits the bug that was fixed, and the first question that the tester needs to understand before launching the test work is "what is the cause of this flaw". In order to facilitate the analysis of the cause of the problem, test plan, to carry out testing work. The connection between things is diverse, and in the thinking of software testing, the relationship between "leading follow-up", "causing and being aroused" and the dialectical methodology of materialism are introduced. It gives us a more thorough understanding of the reasons for this flaw and provides a deeper understanding of the business-level requirements.
Through communication, analysis to understand: Walking in the street was slapped because it is too ugly. Some people will have doubts: "Although too ugly, can not slap it." Why slap it? " That's the second question we're trying to figure out, "why did the flaw do that?"
Second question: The root cause-"Why do we fix this?"
Defects can be fixed to a number of scenarios, based on business, technology implementation, design risk and so on, the developer has chosen the best solution. Understanding why this is done helps us to design test cases and comprehensively measure the risks of testing to make it easier to expose problems and increase the focus on the test points with the corresponding risk factors.
Aristotle said that all existence is made up of the source, and that everything that exists at first comes from it, and finally reverts to it. Figuring out "Why do this" allows us to maximize the traceability of our software testing efforts and develop a test plan. Exposing the defect to a greater extent.
Find out "The reason for the slap is ugly and hopeless". But then again, you can use language to influence me, why hit me, why not use the language to influence me, why not to beat others.
From the point of view of software testing, we need to figure out the third question, "Why not?"
Third question: Inspiration--"Why not do that"
As a professional software tester, it is not enough to understand only the cause of the problem and why the root cause should be fixed. From the perspective of divergent thinking, we need to further consider the "another way". This is important. Why is the fix for this defect using plan A, and why not plan B? Is there plan C besides plan B? Understanding these issues makes it easier for us to become familiar with the business, understand the system, improve testing skills, and design test cases. The demand behind these requirements is a bottleneck for the growth of many software testers.
In my humble opinion, "three questions" as a software testing methodology can make everyone repair the heart of testing, understanding the nature of testing. After work, more communication, growth and progress together.
......
To view more highlights of this issue, please click here to download: http://www.51testing.com/html/98/n-1298298.html
Software testing self-accomplishment (a): Three questions of the mind