1.1 Overview
The overview describes the work of the test engineer and describes two levels of testing.
Overview
???? The test models are divided into four categories: graph, logical expressions (logical expression), input field features (input domain characterization), and syntactic descriptions (syntactic description). In the book, the test criteria are divided into the above four categories to simplify testing.
The work of the test engineer
???? The work of the test engineer is divided into three parts, which runs through the test process at all times.
- Design tests, create test requirements
- Implementing Tests, converting the test requirements you create into actual test case values and scripts
- Perform the test and evaluate the test results
Formal testing standards are the basis for testing.
Test level
???? There are two types of classic classifications for test levels that are commonly used. One is accompanied by the entire software development process of the grading method, the different stages of development corresponding to different tests, the test level is naturally divided, the other is from the attitude of testers, the book mainly introduces the Beizer classification method, Beizer by the test of maturity is divided into 5 levels.
- Software-based Activities
Development process: requirements analysis, system design, subsystem design, detailed design-specific implementation
Test process: acceptance Test <-system Test <-Integration Test <-Module Test <-Unit Test
As shown above, the tests required for each development process correspond to the above. It is important to note that the testing requirements at each stage are designed before the development process begins.
Acceptance testing is to determine whether the software meets the requirements of the needs of the customer requirements analysis, often users or people with a field background knowledge to participate.
The system is designed to determine if the overall system is consistent with the protocol and generally does not look for lower-level errors. Usually have independent test group to complete.
The integration test is to determine the interface of each module in the system is consistent, communication is normal, the premise is that the function of each module is normal. It is usually the responsibility of the development team members.
Module testing is an independent evaluation module that includes component building interactions and associated data structures. It is usually done by the programmer.
Unit tests are designed to determine the correctness of the implementation of a unit. It is usually done by the programmer.
The resolution of the defect type is generally based on the test workpiece .
- Beizer Test level based on process maturity
Level 0: Test and debug the same
Level 1: The test is to prove that the software can be used
Level 2: Test to prove that the software is not available
Level 3: The purpose of the test is to identify risks and mitigate risks
Level 4: An intellectual activity to improve software quality
?
Level 0: The software reliability does not help, the general novice Programmer's view.
Level 1: For a small program can prove, but the program is slightly larger, the workload is not predictable, even can not complete
Level 2: Identify errors, but there is no guarantee that all errors will be identified
Level 3: Once you accept the facts mentioned in Level 2, you will find a way to avoid the risk, which is the purpose of this level 3.
Level 4: Testers are consistent with developers ' goals, and testers can help developers write high-quality software. The spelling checker.
?
"Software Testing Fundamentals" Reading report: Chapter I overview 1.1