Software testing is a process used to promote the correctness, completeness, security, and quality of the certified software. The goal is to quickly identify the problems that exist in the SOFTWARE product as soon as possible-with user requirements, pre-defined inconsistencies, that is, to find as many defects and deficiencies in the software as possible.
For software testing classification, the most familiar is based on the software structure and algorithm of the angle to classify: white box test, black box test and gray box test.
White-Box testing, also known as structural testing, transparent box testing, logic-driven testing, or code-based testing, is a detailed examination of the procedural details of the software. For white-box testing, testers must fully understand the internal logical structure of the program and test all logical paths. The "white Box" method is a poor lift path test. When using this scenario, the tester must examine the internal structure of the program, starting with the logic of the checker and drawing the test data.
White box testing is mainly to the program module to check the following:
1, test all the independent execution path of the program module at least once.
2, to all the logical judgment, take "true" and take "false" two cases can be measured at least once.
3. The loop body is executed within the boundaries of the loop and the boundary of the operation.
4. test the validity of internal data structures.
Black-Box testing, also known as functional testing, is tested to see if each function is working properly. is a functional design specification for a known product and can be tested to verify that each implemented function meets the requirements. In the black box test, the program as a black box can not be opened, regardless of the internal structure of the program and internal characteristics of the case, in the program interface testing, it only checks whether the program function in accordance with the requirements of the specification of normal use, the program can properly receive input data and produce the correct output information. Black box testing focuses on the external structure of the program, regardless of the internal logical structure, mainly for the software interface and software function testing.
The black box test is mainly to find the following types of errors:
1. Whether there is an incorrect or missing function.
2, on the interface, the input can be correctly accepted? Can output the correct results.
3, whether there is a data structure error or external information (such as data file) Access error.
4, whether the performance can meet the requirements.
5, whether there is initialization or termination error.
Gray box test, is between the white box test and black box test, the gray box test is concerned about the output of the correctness of the input, but also pay attention to internal performance, but this concern is not as detailed and complete as the white box, but through a number of representational phenomena, events, signs to determine the internal operating state, sometimes the output is correct, But the internal is actually wrong, this situation is very much, if every time through the white box test to operate, the efficiency will be very low, so need to take such a gray box method.
Software Testing ——— White-box testing, black-box testing, and gray-box testing