Test Method and Test Tool Solution (1) Pacific Software (China) Co., Ltd.
(This article is reproduced from Software Engineering Expert Network
Www.21cmm.com)
With the development of soft and hardware technology, the computer's application field is getting wider, and the function of software is getting more and more powerful, and software is increasingly complex. This makes the quality of the software to ensure the high reliability of the software, facing huge challenges. Especially in industries such as military, aerospace, communications, transportation, software, software, can cause huge property of life safety, astronomical figures, and even seriously threatened national security. Therefore, the measurement, assessment and guarantee of software product quality has become a problem that users and project undertakers are very concerned. Based on these reasons, international standardization and certification organizations have developed some software standards (in ISO-9001, and SEI CMM frameworks). For software development processes, these standards can be constrained and measured. In order to ensure the quality of the software, software testing is necessary. Through the survey of well-known software providers and system integrators at home and abroad, we use the two methods proposed in the software engineering in terms of test in software products, namely, white boxes and black boxes. White box is a known product's internal work process, which can prove whether each internal operation meets the design specifications, all internal components have passed inspection. White box test is also a structural test. Black box is a functional design specification of known products. It can be tested to prove whether each implemented function meets the requirements, black boxes are called functional testing, but it is not only applied to the development phase, but more importantly, in the product test phase and Maintenance phase is essential. Since the introduction of the first test tool in 1995, the Pacific Software (China) Co., Ltd. (PTS) has been involved in the field of testing for many years. It has deep research and understanding of today's popular test software, test theory and methods. Upon, it is carried out business for users to provide test methods training and testing professional services. Through the service, we strive to help users have effectively, to adjust their existing software production processes, help companies adopt ISO9001 certification, improve the development team's CMM level, and ultimately reach the quality of software products, strengthen corporate competitiveness to promote enterprise development purpose. The following is a test method and test tool solution introduced by PTS. I. Implementation of white box test In the development phase, it is necessary to ensure the quality of the product, and the production process of the product should follow certain industry standards. Software products are also the same, no standard can be discluded naturally without quality. All organizations, units concerning software development quality, must define or understand the quality standards and models of software. The advantage is to ensure the uniformity of the company's practice, the maintenanceability, reliability, and portability of the product. Like the development process of the software product during the test phase, the testing process also requires certain guidelines to guide, measure, and evaluate the quality of the software testing process. Defining Test Guidelines To control the validity of the test and the degree of completion, the guidelines and policies must be defined to determine when to end the test phase. Guidelines must be objective, demolulent elements, and cannot be experience or feel. According to the application's criteria and project-related constraints, project leaders can define the metrics of use, and the coverage to achieve. The effectiveness of metrics, integrity to override the information and cumulative information for each test, display the overlay ratio with graphics, and update the test operation in real time according to the test operation, and display the new test reflected in the test overlay. Allows all test operations to be managed according to its validity, and users can reduce the process of not suitable for non-regression testing. The optimization test process is the first step in the test phase, and the test is performed is a functional test. Its purpose is to check if the desired function has been implemented. At the beginning of the test, the coverage increased rapidly. Same sample testing can generally reach a 70% coverage. However, it is very difficult to increase the coverage at this time because new tests often cover the same test path. At this stage, you need to change some changes to the test strategy: from functional testing to structured testing.
That is, the appropriate test case is constructed to cover these paths for the path that does not perform. During the test, the test strategy is adjusted in time and check the key factors to improve test efficiency. The adjustment of coverage trends and strategies during the test process has a little understanding in the maintenance stage. It is increasingly recognized by most people: the maintenance cost of the application system is basically equal, while in the maintenance process, in the maintenance process The time spent on the structure, logic, and operational understanding is to use 50% time. Since the system maintenance personnel are likely to not be the developer's own, plus the flow of people's flow, the insufficient communication between the team needs to understand the application system. Understanding the application system design, in the form of file form (relationship between component files) and the form of call maps (function, and process). The logical structure of the function is displayed in the form of a flow graph, and a node is selected on the control flow graph to obtain the corresponding code. The application system can analyze on different abstractions, navigation associations between different levels, promote the overall understanding. The use of the use of its resources is detected, thereby facilitating the information flow between the functions (parameter transfer), the relationship between the data, and the understanding of other resources. Safely modifying software maintenance software means modifying software, modified program, confirming, requires a lot of work. Because, it is very small to modify, and there may be no changes in dozens or even hundreds of people. This subsequent modification requires, the better the better, it is best to find and make changes before compiling, the worst case is discovered during debugging and non-regression testing. Second, the implementation of the black box test The programming language and logic of the traditional system is all process. This logic order only changes when the values in the data cause different cyclic or control sequence changes. The client / server and graphical user interface system is not process. They are event-driven. This means that the computer performs the corresponding program for an event that occurs. The event here refers to the behavior taken by the user, like keyboard activity, mouse movement, mouse button action, and button actions, are examples of events. Because the order of the event cannot be known in advance, the event drive system is more difficult to test. Developers cannot know which button or menu item to be selected next time. In fact, the application must prepare for all events and possible events at any time. In addition, with the introduction of RAD (fast application development), the application has a fast realization speed, but this approach has its shortcomings. An important disadvantage is that project planning often misses an important test phase. Test images are often overlooked, and it is often neglected and gives a very unrealistic time and resources. For this, the application submitted in the RAD mode is tested and ensures that the software quality is the primary work of the test team. The black box test is divided into the client's test and server-side performance test. The client's test is mainly concerned about the application's business logic, user interface, functional test, etc .; the server-side test main attention to the performance of the server, measures the system's response time, transaction speed, and other time sensitive needs. The test is not defective before the application is ultimately delivered. Since the test is not a process that can be completed once, it is necessary to generate different test procedures based on the change of the product version. If this process is only difficult to achieve by manual manual. It takes the help of tools to simplify the complexity of the test, reducing the cost of the test cost, shortening the time of the market. There is also a prominent feature that the application's regression test, which is a process that cannot be completed manually, and can only be implemented by tools. The regression test is a very important process in the test phase, and many implicit defects and errors can be found by regression testing.