Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Continuous Performance Testing with Taurus and Jmeter


Published on

Continuous Performance Testing with Taurus and Jmeter by Dipanjan haldar

Published in: Technology
  • Be the first to comment

Continuous Performance Testing with Taurus and Jmeter

  1. 1. Dipanjan Haldar 22-04-2016 Continuous Performance Testing with JMeter and Taurus
  2. 2.  The problem to be solved  Role of Continuous Integration (CI)  Why Taurus and its advantages ?  How to Integrate with Jenkins  Live Demo
  3. 3.  Agile methodologies are based mostly on short iterations (one or two weeks). Challenges How do you test efficiently? How can we be sure of the released software's performance and quality? How do we manage/plan test that fit within budgets and resources? Automatedtests At first thought, the answer is really easy - as often as possible and as quickly as possible. If we think about automated tests, the question is: how often and when should we run automated tests? OneSolution Continuous Integration
  4. 4. CI is the practice of regular, comprehensive, and automatic building and testing of applications in software development Figure 1: System and Software Architecture Supporting a CI Build
  5. 5.  CI allows us to run automated performance tests after each/desired commit and send feedback with results to developers and all stakeholders  Good automated tests should cover all functionality, or at least most of it so that we start knowing the performance from the early stage We all know – Earlier the better
  6. 6. JMeter • Great - Open-source, Easy to use • Pain point – • Automation and integration with other system • Steep learning curve Taurus • Open source • Extends and abstracts Jmeter • Simple way to run and analyze performance test Taurus is an acronym that stands for Test Automation Running Smoothly, which reflects its baseline mission
  7. 7.  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. Console stats 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
  8. 8.  For instance, a simple load test with 10 concurrent users, a ramp-up time of 1 minute, a duration of 2.5 minutes and hitting an site with HTTP GET requests will look as simple as: 8 lines of simple human-readable language that represents a (more or less) complete load scenario.
  9. 9. Let’s assume that the above YAML configuration is stored in example.yml file. In that case, you can invoke it as simple as: bzt example.yml Once you hit Enter, the Taurus engine will start the test execution, including: downloading the latest JMeter version (with the latest plugins) to the ~/.bzt/jmeter-taurus folder 1.preparing the JMeter .jmx script based on the example.yml provided 2.kicking off the actual JMeter test 3.displaying real-time statistics and basic ASCII-art graphs in the text console 4.printing a summary to the console upon the test’s completion 5.saving JMeter test results in format.
  10. 10. This space is reserved for demonstration of Taurus integration with Jenkins on local system Taurus+ Jenkins + Jmeter = Consistent Automated Collaborative Solution