Black-box testing)
Black box testing: the functional design specifications of products are known. You can perform tests to verify that each implemented function meets the requirements.
The software black box testing means that the testing should be performed at the software interface. In this way, the test object is regarded as a black box. The tester does not consider the logical structure and internal characteristics of the program, but only according to the specification of the program, check whether the function of the program complies with its function description. Therefore, black box testing is also called function testing or data-driven testing. Black box testing mainly aims to discover the following types of errors:
1. Are there any incorrect or missing functions?
2. Is the input correct on the Interface accepted? Can I output the correct result?
3. Are there any data structure errors or external information (such as data files) access errors?
4. Can the performance meet the requirements?
5. Are there any initialization or termination errors?
White-box testing)
White-box testing: it is known that the internal working process of the product can be tested to verify whether each internal operation meets the design specifications and whether all internal components are inspected.
The white box test of the software is to carefully check the procedural details of the software. In this way, the test object is regarded as an open box, which allows the tester to design or select a test case to test all the logical paths of the program using the logical structure and related information in the program. Check the program status at different points to check whether the actual status is consistent with the expected status. Therefore, a white-box test is also called a structure test or a logic-driven test. The white box test mainly aims to check the program module as follows:
1. test all independent execution paths of the program module at least once.
2. You can test all logical judgments in either case of true or false.
3. Execute the loop body within the loop boundary and running boundary.
4. test the effectiveness of the internal data structure.
Unit Testing)
Unit testing is to test each program Unit implemented by source code and check whether each program module correctly implements the specified functions.
The unit test, also known as the module test, is a test of the correctness of the program module, the smallest unit of software design. The purpose is to discover various internal errors of each module. Unit tests need to design test cases from the internal structure of the program. Multiple modules can perform unit tests in parallel.
Integrated Testing)
Integration Testing assembles tested modules to test the structure of the software architecture related to the design.
Generally, on the basis of unit testing, all modules need to be assembled into a system according to the design requirements. In this case, you need to consider whether the data transmitted through the module interface will be lost when the modules are connected; -whether the functions of one module will adversely affect the functions of the other module;-whether the child functions can meet the expected parent functions when combined;-whether there is a problem with the global data structure; -Whether the error of a single module is accumulated and amplified to an unacceptable degree. Integration tests can be conducted at the same time as unit tests to discover and eliminate possible problems in module connections, and ultimately constitute the required software system. Subsystem integration testing, especially component testing, is used to identify the inconsistency between the integrated subsystem and the System Requirement Specification.
System Test)
System tests include validated software in the actual operating environment and are combined with other system components for testing.
System testing is a software that will pass validation testing as an element of the entire computer-based system, combined with computer hardware, peripherals, some supporting software, data and personnel and other system elements, a series of Assembly tests and validation tests on computer systems in the actual operating environment. The purpose of a system test is to compare it with the requirement definition of the system to find out the inconsistency or conflict between the software and the definition of the system.