Software Testing Method
There are a wide variety of software testing methods, which can be divided from different perspectives into the following common methods:
I,Software Test Category
Below I will talk about white box testing, black box testing and gray box testing.
Ii. Software Test Definition
White box testing: In the test books, white box testing has a variety of naming methods, such as glass box testing, transparent box testing, open box testing, structured testing, code-based testing, and logic-driven testing. White box testing is a test case design method. Here the box refers to the software to be tested, white box. As the name suggests, the box is visible, you can understand what is inside the box and how it works. Therefore, white box testing requires you to have a clear understanding of the internal structure and working principle of the system, design your use cases based on this knowledge.
Black box testing: Also called function testing, this is because in the black box testing, the main focus is on the function implementation of the tested software, rather than the internal logic.
Black box tests show the following types of errors:
1) function errors or omissions
2) interface Error
3) data structure or external Database Access Error
4) performance error
5) initialization and termination errors.
Gray box test: A test between a white box and a gray box. The most common gray-box test integration test.
(1) Comparison of advantages and disadvantages of white-box testing and black-box testing:
| Comparison |
Advantages |
Disadvantages |
| White box testing |
The testers are forced to think carefully about the implementation of the software.
It can detect every branch and path in the code.
Uncover hidden errors in code.
The Code test is thorough.
Optimized. |
Expensive.
The path and data sensitivity errors that are missing in the Code cannot be tested.
The specification is not verified. |
| Black box testing |
High test efficiency.
Testers do not need to know details, including specific programming languages.
Testers and coders are independent of each other.
Testing from the user's perspective is easy to understand and accept.
This helps to expose any type inconsistency or ambiguity issues.
Test cases can be performed immediately after the specifications are completed. |
Only a small portion of possible input is tested, and it is almost impossible to test each possible data stream.
Without clear and concise specifications, it is difficult to design test cases.
How can testers not be notified of the use cases that have been executed by developers? There are unnecessary duplicates in the test data.
Many program paths are not tested.
You cannot directly target specific program segments. These programs may be very complex (and thus more problems may be hidden ). |
The comparison between the white-box test and the black-box test shows that the white-box and black-box test start points are different:
The white box test considers the code of the test software. It does not guarantee whether the complete requirement specification is met.
Black box testing only takes into account the requirement specification. It does not guarantee that all the implemented parts are tested. Black box testing discovers missing defects and indicates that the specification is not completed.
(2) Common black and white box testing technologies
For common black box and white box testing techniques, refer to the figure below.
Iii. References:
I recommend two blogs: I personally think they are more professional and better summed up. It is worth learning and I will share it with you here.
Big Summary of software testing methods -- small tank: http://www.cnblogs.com/TankXiao/archive/2012/02/20/2347016.html#undefined
Software testing method summary: http://www.360doc.com/content/11/0613/14/54470_126627944.shtml