Automatic Load Test Verification Using Control Charts

Load testing is an important phase in the software development process. It is very time consuming but there is usually little time for it. As a solution to the tight testing schedule, software companies automate their testing procedures. However, existing automation only reduces the time required to run load tests. The analysis of the test results is still performed manually. A typical load test outputs thousands of performance counters. Analyzing these counters manually requires time and tacit knowledge of the system-under-test from the performance engineers. The goal of this study is to derive an approach to automatically verify load tests results. We propose an approach based on a statistical quality control technique called control charts. Our approach can a) automatically determine if a test run passes or fails and b) identify the subsystem where performance problem originated. We conduct two case studies on a large commercial telecommunication software and an open-source software system to evaluate our approach. Our results warrant further development of control chart based techniques in performance verification. Keywords-Performance Testing, Load Testing, Mining software repository

[1]  Elaine J. Weyuker,et al.  The Automatic Generation of Load Test Suites and the Assessment of the Resulting Software , 1995, IEEE Trans. Software Eng..

[2]  Jeffrey S. Chase,et al.  Correlating Instrumentation Data to System States: A Building Block for Automated Diagnosis and Control , 2004, OSDI.

[3]  Igor A. Trubin Capturing Workload Pathology by Statistical Exception Detection System , 2005, Int. CMG Conference.

[4]  W. Shewhart The Economic Control of Quality of Manufactured Product. , 1932 .

[5]  Boris Beizer,et al.  Software System Testing and Quality Assurance , 1984 .

[6]  Ying Zou,et al.  Mining Performance Regression Testing Repositories for Automated Performance Analysis , 2010, 2010 10th International Conference on Quality Software.

[7]  林俊彦 用Visual Studio实践敏捷测试(一) , 2010 .

[8]  Gilbert Hamann,et al.  Automatic identification of load testing problems , 2008, 2008 IEEE International Conference on Software Maintenance.

[9]  Haroon Malik A methodology to support load test analysis , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[10]  King Chun Foo AUTOMATED DISCOVERY OF PERFORMANCE REGRESSIONS IN ENTERPRISE APPLICATIONS , 2011 .

[11]  Jonathan W. Palmer Designing for Web Site Usability , 2002, Computer.

[12]  Elaine J. Weyuker,et al.  Experience with Performance Testing of Software Systems: Issues, an Approach, and Case Study , 2000, IEEE Trans. Software Eng..

[13]  Thomas Reidemeister,et al.  Automatic fault detection and diagnosis in complex software systems by information-theoretic monitoring , 2009, 2009 IEEE/IFIP International Conference on Dependable Systems & Networks.

[14]  Evgenia Smirni,et al.  Anomaly? application change? or workload change? towards automated detection of application performance anomaly and change , 2008, 2008 IEEE International Conference on Dependable Systems and Networks With FTCS and DCC (DSN).

[15]  Eric A. Brewer,et al.  Pinpoint: problem determination in large, dynamic Internet services , 2002, Proceedings International Conference on Dependable Systems and Networks.

[16]  Fred Spiring,et al.  Introduction to Statistical Quality Control , 2007, Technometrics.

[17]  Peter Membrey,et al.  The Linux Kernel , 2009 .