170 likes | 306 Views
Automation Testing tool that can be used in software engineering course. Ran Shi 04/29/2011. Why use automated performance testing tools?.
E N D
Automation Testing tool that can be used in software engineering course Ran Shi 04/29/2011
Why use automated performance testing tools? • There is no way to manually test the way a Web application performs under the stress of hundreds of users until it is deployed on a public Web server. However, there are some tools that can help.
Automated Performance Testing Tools • Commercial - LoadRunner, Rational Robot, QALoad, SilkPerformer • Open Source - Apache JMeter, OpenSTA
Apache JMeter • Apache JMeter is open source software, a 100% pure Java desktop application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has expanded to other test functions.
What can it do? • It can be used to simulate a heavy load on a server, network or object to test its strength or to analyze overall performance under different load types. • Users can use it to make a graphical analysis of performance or to test their server/script/object behavior under heavy concurrent load.
Apache JMeter Features • It can test many different server types; • Complete portability and 100% Java purity; • The full multithreading framework allows concurrent sampling by many threads and simultaneous different functions sampling by separating thread groups; • Its careful GUI design allows faster operation and more precise timings; • Caching and offline analysis/replaying of test results.
Users Thread Group (cont.) • Thread Group tells JMeter the number of users that want to simulate, how often the users send requests and how many requests they send. • Number of Threads: the number of users. • Ramp-Up Period: how long to reach the maximum test stress. • Loop Count: how many times to repeat the test.
Apache JMeter Graph Results (cont.) • Samples: the number of requests. Sample= Number of Threads * Loop Count. • Average: the average response time • Median: 50% users response time • Throughput: the number of Requests/Minute the server handled.
Apache JMeter Graph Results (cont.) • The Graph Results listener generates a simple graph that plots all sample times. • Users can increase the number of threads to discover their server’s maximum throughput.
SplineVisualizer (cont.) • The SplineVisualizer provides a view of all sample times from the start of the test till the end, regardless of how many samples have been taken.
Summary • Advantages • Open source and free • Detailed tutorial from Apache • Unlimited Load generation • Disadvantages - In specific unicast scenarios, such as repeatedly downloading very large files, the ability of agents to generate load falls off abruptly due to memory issues.
Further Tutorial or Information • Apache Jakarta Project provides detailed tutorial for using Apache JMeter • http://jakarta.apache.org/jmeter/usermanual/index.html