open source load testing: jmeter, gatling and taurus

37
Open Source Load Testing: JMeter, Gatling and Taurus Dave Karow Developer Advocate

Upload: blazemeter

Post on 16-Apr-2017

286 views

Category:

Technology


13 download

TRANSCRIPT

Page 1: Open Source Load Testing: JMeter, Gatling and Taurus

Open Source Load Testing: JMeter, Gatling and Taurus

Dave KarowDeveloper Advocate

Page 2: Open Source Load Testing: JMeter, Gatling and Taurus

Load Testing at Scale Using Gatling and Taurus

Andrey PokhilkoOpen Source Initiative Leader

Page 3: Open Source Load Testing: JMeter, Gatling and Taurus

Agenda

1. Introduction to Gatling Tool

2. Gatling compared with JMeter

3. Introduction to Taurus

4. Live Demos

5. Q&A Section

Page 4: Open Source Load Testing: JMeter, Gatling and Taurus

Introduction to Gatling Tool

Page 5: Open Source Load Testing: JMeter, Gatling and Taurus

Key Features of Gatling

● Command-line tool

● Scala language for scripting

● DSL for HTTP requests

● Post-test HTML reports

Page 6: Open Source Load Testing: JMeter, Gatling and Taurus

Value of Gatling for Users

● Full power of programming language

● Easy to use custom code pieces and extra libraries

● Flexible load injection profiles

● Asynchronous concurrency model

Page 7: Open Source Load Testing: JMeter, Gatling and Taurus

Demo: Basic Usage of Gatling

● Package, imports, simulation class

● simulation ≈ scenario + injection profile + protocol

● Simulation file placement

● Simulation file naming convention

Page 8: Open Source Load Testing: JMeter, Gatling and Taurus
Page 9: Open Source Load Testing: JMeter, Gatling and Taurus
Page 10: Open Source Load Testing: JMeter, Gatling and Taurus
Page 11: Open Source Load Testing: JMeter, Gatling and Taurus
Page 12: Open Source Load Testing: JMeter, Gatling and Taurus
Page 13: Open Source Load Testing: JMeter, Gatling and Taurus

Gatling compared with JMeter

VS

Page 14: Open Source Load Testing: JMeter, Gatling and Taurus

Scripting Approach

● Simple GUI vs Scala for techies

● In JMeter you see one component at a time / Scala is ok

● JMeter JMX files are not VCS-friendly / Scala files are

● Code re-use and modularity in JMeter is huge pain

● Coding skills requirement is a limitation for Gatling

VS

Page 15: Open Source Load Testing: JMeter, Gatling and Taurus

Load Profiles

● Arrivals-based injection

● Concurrency-based injection

● RPS throttling

● All is doable in JMeter + Plugins

● In Gatling, it is not as obvious as in JMeter

VS

Page 16: Open Source Load Testing: JMeter, Gatling and Taurus

Community & Popularity

● JMeter is far more popular in net number of users

● Gatling users are more skilled techies on average

● More content on JMeter than on Gatling

● More tools, integrations and services support JMeter

VS

Page 17: Open Source Load Testing: JMeter, Gatling and Taurus

Challenges With Gatling Tool

Page 18: Open Source Load Testing: JMeter, Gatling and Taurus

What can be Improved for Gatling

● Easier start for beginners

● Rich real-time report

● Reports storage - collaborative and persistent

● Distributed testing

● Startup time

Page 19: Open Source Load Testing: JMeter, Gatling and Taurus

Introduction to Taurus

http://gettaurus.org

Page 20: Open Source Load Testing: JMeter, Gatling and Taurus

Overview of Taurus

● Simplified scripting

● Convenience for everyday users

● Automation-oriented

● Reporting and scaling

Page 21: Open Source Load Testing: JMeter, Gatling and Taurus

● Simplification for beginners - Scala, files layout, load

● Adds rich real-time reports

● Enables persistent reports storage

● Enables distributed tests

● Enables heterogenous tests (Gatling + Selenium)

Value of Taurus for Gatling Users

Page 22: Open Source Load Testing: JMeter, Gatling and Taurus

Live Demos

+

Page 23: Open Source Load Testing: JMeter, Gatling and Taurus

Demo: Simplified Scripting

● HTTP requests, headers

● Assertions

● Simplified load injection settings

+

Page 24: Open Source Load Testing: JMeter, Gatling and Taurus
Page 25: Open Source Load Testing: JMeter, Gatling and Taurus
Page 26: Open Source Load Testing: JMeter, Gatling and Taurus

Demo: Real-Time Reporting

● Console dashboard is enabled by default

● BlazeMeter reporting, not requiring an API key

● With API key, reports are persistent and have trends

+

Page 27: Open Source Load Testing: JMeter, Gatling and Taurus
Page 28: Open Source Load Testing: JMeter, Gatling and Taurus
Page 29: Open Source Load Testing: JMeter, Gatling and Taurus

Demo: Cloud Scaling

● Distributed testing with 100s of machines

● Multi-geo tests enablement

● Reports and KPI trends

+

Page 30: Open Source Load Testing: JMeter, Gatling and Taurus
Page 31: Open Source Load Testing: JMeter, Gatling and Taurus
Page 32: Open Source Load Testing: JMeter, Gatling and Taurus
Page 33: Open Source Load Testing: JMeter, Gatling and Taurus
Page 34: Open Source Load Testing: JMeter, Gatling and Taurus
Page 35: Open Source Load Testing: JMeter, Gatling and Taurus

Final Summary

1. Gatling is very similar to JMeter

2. Requires more technical skills

3. Taurus mitigates its problems

4. BlazeMeter for reports and scaling

Page 36: Open Source Load Testing: JMeter, Gatling and Taurus

Q&A Time

Page 37: Open Source Load Testing: JMeter, Gatling and Taurus

Next Steps

● Create your free account at blazemeter.com

● Taurus – gettaurus.org

● Gatling – gatling.io

● Performance Testing Blog – blazemeter.com/blog

● Learning Resources – blazemeter.com/resources

Stay tuned!