Software Engineering--Test of theory, method and practice
Software crises were once the hottest topic in the software world and even the entire computer world. In order to solve this crisis, software practitioners, experts and scholars made a lot of efforts. Now people have come to realize that the so-called software crisis is actually only a situation, you are the software error, which is caused by the software development in cost, schedule and quality of runaway.
Error is the property of software, and can not be changed, because the software is done by people, all the work done by people will not be perfect. The problem is how to avoid errors and eliminate errors that have already occurred. Make the error density in the program as low as possible. In order to grasp the correctness of all aspects of software development, a variety of verification and validation work is required. Verification and validation are standardized evaluation methods that run through the software life cycle.
Broadly speaking, testing refers to all the inspection, review and validation activities in the SOFTWARE PRODUCT life cycle, such as Design Review, System review, and system testing. In the narrow sense, testing is the detection and evaluation of software PRODUCT quality, it checks the quality of software products in the existing problems, while the objective evaluation of products.
Software products typically require unit testing, integration testing, validation testing, and system testing before they are delivered to use.
The methods of software testing are varied and can be categorized from different angles. From the point of view of whether the test software needs to be executed, it can be divided into static test and dynamic test, and it can be divided into white box test and black box test from the point of view of the internal structure of the system and the concrete implementation algorithm.
Object-oriented is currently a mainstream software development technology, has basically replaced the process-oriented development approach, is considered to solve the software crisis of an advanced technology. However, no matter what approach to develop software, the requirements for high-quality software will not change, so the goal of software testing will not change.
Software testing occupies a very important place throughout the software development process, and as with other processes and activities, testing has its own case tool. At present, the mainstream testing tools in the market mainly cover the following aspects: Functional testing tools, performance testing tools, defect management tools, test management tools. Includes JUnit, LoadRunner.
Software Engineering--Test of theory, method and practice