Continuous performance testing and test automation made easy with Taurus, Jenkins and JmeterDipanjan Haldar
schedule 1 year agoSold Out!
When it comes to performance testing, JMeter is awesome but may not be complete. In this session,
we'll take a look at Taurus which is a free and open source automation framework, which is basically
an abstraction layer over JMeter (or Grinder or Gatling or Selenium, with more tool support
upcoming). The taurus tests can be easily integrated with jenkins using the available plugins and helps us in running the tests seamlessly.
Making Test Automation Simple with Taurus and Jmeter and integration with jenkins:
• Extremely simple setup and upgrading
• Ability to execute existing JMeter (or Grinder or Gatling or Selenium) tests
• The ability to create new tests from scratch using user-defined files
• Real-time reporting
• Ability to integrate with Jenkins for Continuous integration of performance tests
• Multiple test output formats
• Native results format of the underlying testing tool
• Console statistics and pseudo-graphic charts during the test execution
• Easy way to define flexible pass/fail criteria. In case the results exceed a threshold, it is possible to
automatically mark test(s) as failed
• platform-independent- runs where Python and Java can run
- The entire implementation is based on open-source tools so no additional investment for tools.
- The Taurus files are easy to understand, so no expertise is required in Jmeter for performance test development and maintenance. Can be handled easily by any team.
- Daily reporting of the metrics helps to make concise decision about the overall quality of the product under test.
- Highly suitable for agile based environment.
This will be followed by a live -demo.
Simulating Different Network Speeds using JMETER - An essential aspect for mobile app performance testDipanjan Haldar
schedule 1 year agoSold Out!
Simulating Different Network Speeds using JMETER
In the current digital world, mobile app usage has overtaken desktop traffic - and this trend just looks set to rise. But what does this mean for us?
For performance engineers, it means that now, more than ever, we need to focus on mobile users when running performance tests. If our mobile app doesn’t perform well - we stand to lose a lot of business.
How to Load Test Mobile Apps and Sites with Different Connection Speeds
In most of the cases, mobile device users access the internet via their cellular operator network. The mobile network coverage will vary depending on their location, meaning the connection speed will vary. Hence it is very critical to ensure that the system can fully handle mobile and tablets - even when they have different internet connection speeds.
In this session, I’ll be presenting about how to simulate such scenarios by controlling the bandwidth of simulated virtual users in a JMeter load test.
By default, Jmeter will send the requests to the target server as fast as it can. This is great for generating the load on the server - but not very realistic as real users don’t hit the server non-stop, they will have some time to think between operations. On top of that, mobile users are limited by network bandwidth, which can slow them down even more.
Throttling Outgoing Bandwidth to Simulate Different Network Speeds
JMeter gives us the option to throttle outgoing bandwidth in order to simulate different network speeds. The bandwidth can be controlled through these two properties:
These are for the HTTP and HTTPS protocols respectively. The properties default to zero, which means no limitations. The acronym “cps” stands for “characters per second”. When you set the properties to something above zero, the bandwidth will be throttled in accordance with your setting.
Here’s the formula of calculating “cps”:
cps = (target bandwidth in kbps * 1024) / 8
For example: to emulate the GPRS cellular network speed (which is 171 Kbits/second downstream), the relevant CPS value would be: 21888 (171 * 1024/8)
So here’s how you can limit the bandwidth through these properties:
- Add these two lines to the user.properties file (you’ll find this in the bin folder of your JMeter installation)
You’ll need to restart Jmeter to pick these properties up
- Alternatively, you can pass the properties’ values via the -J command line argument, like this:
jmeter -Jhttpclient.socket.http.cps=21888 -Jhttpclient.socket.https.cps=21888 -t /path/to/your/testplan.jmx
Now let’s see it in action!!!!