||In order to ensure a software system can survive large number of concurrent users, load testing and stress testing are two major approaches to verify such a non-functional requirement. To test such a non-functional requirement, we need to mimic a large number of concurrent users using stress testing tools. |
In the past, a TaaS (Test as a Service) portal was built to support 3rd party independent testing service. This portal adopt the open source stress testing tool “JMeter” to build a transparent service which support a large number of concurrent users but hide the setup and implementation details from the testers. To simulate numerous concurrent users, this TaaS portal can automatically assign a lot of testing servers to execute load/stress testing at the same time.
Besides, to find out the scalability problem of a system, emulating a large number of concurrent users that is close to the real scenarios is the ultimate solution. However, this is an expensive approach which may requires a lot of computing resources. In this thesis, we propose an attempt to avoiding such a problem. Instead of simulating the real number of concurrent users, we install different sensors on system under test. Through increasing the workload on system, and inspecting the system’s resource consuming history, we can observe the growth rate of these resource usages to predict what could happen when the expected number of concurrent users are reached.
||1. Lian, Y., et al. Testing as a Service over Cloud. in Service Oriented System Engineering (SOSE), 2010 Fifth IEEE International Symposium on. 2010.|
2. Selenium. Available from: http://www.seleniumhq.org/.
3. JMeter. Available from: http://jmeter.apache.org/.
4. Jenkins. Available from: https://jenkins-ci.org/.
5. Zhen Ming, J., et al. Automatic identification of load testing problems. in Software Maintenance, 2008. ICSM 2008. IEEE International Conference on. 2008.
6. Gao, J., et al. Testing as a Service (TaaS) on Clouds. in Service Oriented System Engineering (SOSE), 2013 IEEE 7th International Symposium on. 2013.
7. Khanna, R. Making the Most of Test Automation as a Service. in Cloud Computing in Emerging Markets (CCEM), 2012 IEEE International Conference on. 2012.
8. Minzhi, Y., et al. WS-TaaS: A Testing as a Service Platform for Web Service Load Testing. in Parallel and Distributed Systems (ICPADS), 2012 IEEE 18th International Conference on. 2012.
9. Menasce, D., Load testing of Web sites. Internet Computing, IEEE, 2002. 6(4): p. 70-74.
10. Xingen, W., Z. Bo, and L. Wei. Model Based Load Testing of Web Applications. in Parallel and Distributed Processing with Applications (ISPA), 2010 International Symposium on. 2010.
11. Performance vs. load vs. stress testing. Available from: http://agiletesting.blogspot.tw/2005/02/performance-vs-load-vs-stress-testing.html.
12. 負載測試. Available from: http://baike.baidu.com/view/651437.htm#2.
13. Banzai, T., et al. D-Cloud: Design of a Software Testing Environment for Reliable Distributed Systems Using Cloud Computing Technology. in Cluster, Cloud and Grid Computing (CCGrid), 2010 10th IEEE/ACM International Conference on. 2010.
14. Regression Test. Available from: http://en.wikipedia.org/wiki/Regression_testing.
15. Java Remote Method Invocation. Available from: http://www.oracle.com/technetwork/articles/javaee/index-jsp-136424.html.
16. JMeter Remote Testing.
17. Cristiana Amza, E.C., Anupam Chanda, Alan L. Cox, Sameh Elnikety, Elmootazbellah N. Elnozahy, Romer Gil, Julie Marguerite, Karthick Rajamani and Willy Zwaenepoel. Bottleneck Characterization of Dynamic Web Site Benchmarks Available from: http://www.research.ibm.com/acas/projects/01rajamani.pdf.
18. Manzoor, S. Web applications Performance Symptoms and Bottlenecks Identification. 2012; Available from: http://www.agileload.com/agileload/blog/2012/11/27/web-applications-performance-symptoms-and-bottlenecks-identification.
19. MediaWiki. Available from: http://www.mediawiki.org/wiki/MediaWiki.
20. Redmine. Available from: http://www.redmine.org/.