Performance testingPerformance testing
is executed to determine how fast a system or sub-system performs under a particular workload. It can also serve to validate and verify other quality attributes of the system, such as scalability, reliability and resource usage. Load testing is primarily concerned with testing that can continue to operate under a specific load, whether that be large quantities of data or a large number of users. This is generally referred to as software scalability. The related load testing activity of when performed as a non-functional activity is often referred to as endurance testing.
Volume testing is a way to test functionality. Stress testing is a way to test reliability. Load testing is a way to test performance. There is little agreement on what the specific goals of load testing are. The terms load testing, performance testing, reliability testing, and volume testing, are often used interchangeably.Load testingLoad testing
is the process of putting demand on a system or device and measuring its response. Load testing is performed to determine a system’s behavior under both normal and anticipated peak load conditions. It helps to identify the maximum operating capacity of an application as well as any bottlenecks and determine which element is causing degradation. When the load placed on the system is raised beyond normal usage patterns, in order to test the system's response at unusually high or peak loads, it is known as stress testing. The load is usually so great that error conditions are the expected result, although no clear boundary exists when an activity ceases to be a load test and becomes a stress testVolume testingVolume Testing
belongs to the group of non-functional tests, which are often misunderstood and/or used interchangeably. Volume testing refers to testing a software application with a certain amount of data. This amount can, in generic terms, be the database size or it could also be the size of an interface file that is the subject of volume testing. For example, if you want to volume test your application with a specific database size, you will expand your database to that size and then test the application's performance on it. Another example could be when there is a requirement for your application to interact with an interface file (could be any file such as .dat, .xml); this interaction could be reading and/or writing on to/from the file. You will create a sample file of the size you want and then test the application's functionality with that file in order to test the performance.Stress testingStress testing
is a form of testing that is used to determine the stability of a given system or entity. It involves testing beyond normal operational capacity, often to a breaking point, in order to observe the results. Stress testing may have a more specific meaning in certain industries, such as fatigue testing for materials.
Ví dụ:Load test
Kiểm thử load test cho Website A: cho 100user login cùng lúc, sau đó thử 200user, 500user, 1000user,...
và xem kết quả xử lý của website: thời gian đáp ứng bao nhiêu ms, mỗi user thực hiện một chức năng khác nhau => có chức năng nào không đáp ứng được hay không? có xảy ra lỗi gì hay không?...Stress test
Mong muốn của chủ website là 1000user online cùng lúc. vậy chúng ta sẽ thử 900user, 999user, 1000user, 1100user => xem có lỗi gì không?
Hoặc mong muốn server chạy trên cấu hình Pentium i3, RAM 2GB, HDD 500GB => chúng ta cho website chạy trên server có cấu hình tương tự nhưng lần lượt thay thế CPU, RAM, HDD thấp hơn 1/2 xem thử có xảy ra lỗi gì không? lúc đó chương trình còn thực hiện đúng nữa không?...Mời các bạn tham khảo Kiểm thử load test như thế nào?