Write software performance test technology
Author: Xuan to wide
1 Introduction
With my country's joining WTO, all walks of life are facing more opportunities and challenges. How to improve the quality of the product, enhance market competitiveness, and become an urgent issue that the company's development must solve, especially for software companies. Software companies should directly participate in the competition of the international software market. The primary issue is to ensure the quality of the software, and at the same time, it is necessary to speed up the release and delivery of software products. Therefore, how to improve the quality of software, increasingly becoming an imminent problem in the development of the current software industry. This article is only for the performance of software quality, and it is some discussion.
2. Software quality
The strength of quality assurance capacity directly affects the development and survival of the software industry. So what is the quality of the software? "GB / T 16260 Information Technology Software Product Evaluation Quality Characteristics and Its Use Guide" clearly defined: Software quality is the characteristics and characteristics of software products that meet the characteristics and characteristics of clear or implicit demand. Specifically, the following six aspects of quality characteristics:
1, functionality
A set of properties associated with a set of functions and their designated nature. The function here refers to those features that meet the clear or implicit needs.
2, easy to use
A set of attributes related to a set of provisions or potential users to use software and the evaluation of such uses.
3, reliability
A group of properties related to the ability of the software maintains its performance level under the specified period of time and conditions.
4, efficiency
With a set of properties associated with the performance level of the software between the software in the specified conditions.
5, maintainability
A group of properties related to the efforts required to make a designated modification.
6, portability
A group of properties associated with the capabilities of the software to another environment.
Therefore, in order to evaluate the quality of the software products, it is necessary to implement and perform testing for each characteristic of software quality. With the development of modern software architecture technology, especially the development of web technology, software performance related to software reliability, efficiency quality characteristics The problem is increasingly attached to the software practitioners, experts scholars, and software users. The quality of the performance indicators of software has directly affected the quality of the software.
3. Software performance test technology
Software performance tests generally include three aspects, namely, performance evaluation, load testing, and intensity tests. Every aspect has its own different test objectives, test technology, completion standards, as follows:
3.1 Performance Evaluation
Evaluate and evaluate the response time, transaction rate and other related needs. The goal is to verify that performance requirements are met.
Test goals:
Verify that the specified transaction or business function is performed in the following situations:
(1) Normal expected workload
(2) The most important workload expected
testing technology:
Test procedures that are used as feature or business cycle tests.
(1) Increase the number of transactions by modifying the data file, or increase the number of iterations of each transaction by modifying the script.
(2) The script should run on a computer (preferably a single user, a single transaction), and repeat on multiple clients (virtual or actual clients).
Complete the standard:
(1) A single transaction or a single user: successfully completed the test script within the time range expected or required by each office without any failure.
(2) Multiple transactions or multiple users: successfully completed the test script within an acceptable time range without any failure.
Precautions:
The integrated performance test also includes adding background workloads on the server. You can do this in a variety of ways, including:
(1) Directly assign the "transaction to" on "servers, which is usually implemented in the form of" Structured Query Language "(SQL).
(2) Simulate many (usually hundreds) clients by creating a "virtual" user load. This load can be implemented by the Remote Terminal Emulation tool. This technique can also be used to load "traffic" in the network. (3) Use multiple actual clients to add a load on the system.
(4) Performance test should be performed on a dedicated computer or in a dedicated machine to achieve complete control and accurate evaluation.
(5) The database used by the performance test should be the actual size or the same zoom ratio.
3.2 load test
The load test uses different effort to evaluate and evaluate the performance behavior under different working conditions, and the ability to operate normally. The goal is to determine and ensure that the system can operate normally in the case of exceeding the maximum expected work, as well as software performance, such as response time, transaction rate, and other aspects.
Test goals:
Verify the performance behavior of the specified transaction under different workload conditions.
testing technology:
Use the test to be developed as a function or business cycle. Increase the number of transactions by modifying data files or by modifying testing.
Complete the standard:
Multiple transactions or multiple users: successfully completed tests in an acceptable time range without any failure.
Precautions:
(1) The load test should be performed on a dedicated computer or in a dedicated machine to achieve complete control and precise evaluation.
(2) The database used by the load test should be the actual size or the same zoom ratio database.
3.3 intensity test
The intensity test is to find errors caused by insufficient resources or resource contention. If the memory or disk space is insufficient, the test object may exhibit some defects that are not obvious under normal conditions. Other defects may be caused by a contention shared resource (such as database lock or network bandwidth). The intensity test can also be used to determine the maximum amount of work that the test object can process.
Test goals:
Verify test objects can run normally under the following intensity conditions without any errors:
(1) There is almost no or not available on the server (memory and disk space)
(2) Connect or simulate clients with maximum actual (actual allowable)
(3) Multiple users perform the same transactions on the same data or account
(4) The most heavy transaction volume or the worst transaction combination
Note: The goal of intensity testing can be expressed as a case or condition that makes the system cannot continue to function properly.
testing technology:
(1) Tests developed for performance evaluation or load testing. To test a limited resource, you should run test on a computer, and should reduce or limit the memory and disk space on the server.
(2) For other intensity tests, multiple clients should be used to run the same test or complementary test to produce the most heavy transaction volume or the worst transaction combination.
Complete the standard:
The planned test has all been executed, and no software failure occurs when reaching or exceeding the specified system limit, or the condition that the system has failed is not within the specified condition range.
Precautions:
(1) If you want to increase the network work intensity, you may need to use the network tool to load your message or packet to the network.
(2) The disk space for the system should be temporarily reduced to limit the growth of the database available space.
(3) Make multiple clients to synchronize the same record or data account.
4 Conclusion