This presentation will let you know all about doing performance testing. type of performance testing and step to do it. Then demo with Tsung.
Code Mania 110 at KMUTT Thailand on November 25, 2017
2. Performance Load Testing with Tsung
● Jirayut Nimsaeng (Dear)
● Interested in Cloud and
Open Source
● Agile Practitioner with
DevOps Driven
● CEO and Founder Opsta
#whoami
3. Performance Load Testing with Tsung
Performance Testing
Performance testing is a testing practice performed to
determine how a system performs in terms of
responsiveness and stability under a particular workload.
It can also serve to investigate, measure, validate or verify
other quality attributes of the system, such as scalability,
reliability and resource usage.
https://en.wikipedia.org/wiki/Software_performance_testing
4. Performance Load Testing with Tsung
Goal
- Demonstrate the system meets performance criteria.
- It can compare two systems to find which performs better.
- It can measure which parts of the system or workload
cause the system to perform badly (Bottleneck).
https://en.wikipedia.org/wiki/Software_performance_testing
5. Performance Load Testing with Tsung
Type of Performance Testing
- Load Testing
- Capacity Testing
- Stress Testing
- Soak Testing
- Spike Testing
6. Performance Load Testing with Tsung
Load Testing
https://www.radview.com/blog/4-types-of-load-testing-and-when-each-should-be-used/
7. Performance Load Testing with Tsung
Capacity Testing
https://www.radview.com/blog/4-types-of-load-testing-and-when-each-should-be-used/
8. Performance Load Testing with Tsung
Stress Testing
https://www.radview.com/blog/4-types-of-load-testing-and-when-each-should-be-used/
9. Performance Load Testing with Tsung
Soak Testing
https://www.radview.com/blog/4-types-of-load-testing-and-when-each-should-be-used/
10. Performance Load Testing with Tsung
Spike Testing
http://perfmatrix.blogspot.com/2017/01/type-of-performance-test.html
11. Performance Load Testing with Tsung
Comparison
https://www.stevefenton.co.uk/2015/03/load-stress-spike-and-soak-testing/
12. Performance Load Testing with Tsung
Performance Testing Steps
1. Identify Test Environment
2. Identify Performance Acceptance Criteria
3. Plan and Design Tests
4. Configure Test Environment
5. Implement Test Design
6. Execute Tests
7. Analyze, Report, and Retest
http://www.howtoautomate.in.th/theory-web-performance-testing-101/
13. Performance Load Testing with Tsung
1. Identify Test Environment
Environment for your performance testing
- Hardware/VM
- Network
- Software
- External System
14. Performance Load Testing with Tsung
Logical Architecture
http://www.howtoautomate.in.th/theory-web-performance-testing-101/
15. Performance Load Testing with Tsung
Physical Architecture
http://www.howtoautomate.in.th/theory-web-performance-testing-101/
16. Performance Load Testing with Tsung
System Architecture
http://www.howtoautomate.in.th/theory-web-performance-testing-101/
17. Performance Load Testing with Tsung
2. Identify Performance Acceptance Criteria
- Throughput
- Response Time
- Resource utilization
For example
Website must handles 100 concurrents and each request
must respond within 300ms and cpu utilize must not higher
than 85%
18. Performance Load Testing with Tsung
3. Plan and Design Tests
- Scenarios
- Test Data
- Clean Data
- Collect data to analyze
22. Performance Load Testing with Tsung
Tsung
- Tsung is a distributed load testing tool.
- Supported HTTP, WebDAV, SOAP, PostgreSQL, MySQL,
AMQP, MQTT, LDAP and Jabber/XMPP servers.
- Tsung is developed in Erlang
23. Performance Load Testing with Tsung
Why Tsung?
- Real world performance testing with dynamic data
- High Performance
- Distributed
- Fault-tolerance
- OS monitoring
- Report
24. Performance Load Testing with Tsung
Tsung key features
- XML Configuration Syntax
- Tsung recorder
- Dynamic scenarios with dynamic data
- Mixed behaviours with sessions
- Stochastic processes with random think times
25. Performance Load Testing with Tsung
Steps to do load testing with Tsung
1. Create scenario xml file with Tsung Proxy Recorder
2. Clean up scenario request
3. Create Tsung xml configuration file
4. Load test
5. Analyze with Tsung report
6. Retest