BlazeMeter

This add-on is operated by BlazeMeter Ltd.

BlazeMeter is a self-service, web and mobile load testing platform (PaaS).

BlazeMeter

Last Updated: 27 January 2014

The BlazeMeter add-on is currently in beta.

Table of Contents

Introduction

BlazeMeter is a Heroku add-on that provides an integrated self-service, on-demand, cloud-based, 100% JMeter compatible load and performance testing for your web and mobile apps.

Load Report- Compare KPIs and Previous Tests

BlazeMeter’s self-service, web and mobile load testing platform (PaaS) provides developers an enterprise grade, out-of-the-box load testing solution that is 100% compatible with Apache JMeter™.

BlazeMeter provides developers simplified integration into their native development environment, realistic user simulation, advanced scripting capabilities, unlimited on-demand load testing capacity, comprehensive, interactive real-time reporting, sophisticated result analysis and geographically distributed testing across 8 different locations. Users can run multiple load tests in order to quickly locate and fix performance bottlenecks.

BlazeMeter offers users a lifetime free tier of 10 hours and up to 50 concurrent users, per month. (See all BlazeMeter Monthly and Hourly (on-demand) pricing plans).

BlazeMeter also has an integration with New Relic which provides application level monitoring while you run a performance test.

Product Highlights

BlazeMeter provides developers and QA professionals the ability to script complex user sequences and scenarios to execute extra high capacity loads using a self-service, on demand platform.

  • A self-service, secured load testing cloud with unlimited testing capacity.
  • Build a dedicated, virtual load testing lab in the cloud in a matter of minutes, requiring only a browser with a choice of 8 multi-geo locations.
  • Extra-large testing capacity: BlazeMeter provides easily resizable testing resources. Launch a single testing server or a cluster of up to 100 dedicated servers, by moving a slider handle. Resize tests at any time.
  • Fine-Grained Interactive Reporting: Performance reports are detailed in an easy to use, easy to understand way.
  • KPIs include latency, response times, hit ratio, throughput, errors, render times and connection times.
  • Reports provide KPIs in both an aggregated fashion and per transaction allowing the user to query about any key performance indicator for any transaction at any given time.
  • Automatic Scripting
  • Manage and Control Tests: Manage tests, logs, reports and view real time KPIs like CPU, Memory and bandwidth consumption in a centralized test management system.
  • Also includes an archive allowing users to compare prior test run results easily.
  • 100% compatible with Apache JMeter

BlazeMeter, like Heroku, is a fully cloud based solution which cannot be beat when dealing with:

  • Scalability: The ability to scale using cloud based services. All resources required to perform the load testing are only used when needed and are available on demand 24/7. There is no need to install or configure anything and it’s available to use or access data from anywhere using only a browser.This holds whether you require 50 servers or 100k concurrent users (This alleviates the need for extraneous local resources).
  • Easy integration continuous integration tools and application performance monitoring BlazeMeter’s has plugins for Jenkins, TeamCity and Bamboo which allows for easy integration of performance testing into the development life-cycle.

  • Remote access, ease of sharing extensive reporting and data within working team environments In terms of working as a team- when software is cloud based you have all the configurations and data/results of load tests and reporting in a centralized place- and you can access it from anywhere, again using only a browser.

Provisioning the add-on

You can install the BlazeMeter add-on to your Heroku application via the CLI. Run this command from an app folder or specify which app to use with –app APP:

A list of all plans available can be found here.

$ heroku addons:add blazemeter
-----> Adding blazemeter to sharp-mountain-4005... done, v18 (free)

Once BlazeMeter has been added a BLAZEMETER_APIKEY setting will be available in the app configuration and will contain the User Key used to configure the client libraries and to identify the app in API requests. This can be confirmed using the heroku config:get command:

$ heroku config:get BLAZEMETER_APIKEY
37bd6ezzz19da2ade2xx

After installing BlazeMeter, the application should be configured to fully integrate with the add-on.

Using the BlazeMeter UI

To use BlazeMeter’s platform to run performance and load tests, login to Heroku and use the Heroku web interface to find your app, then open the Add-ons menu and select BlazeMeter: Or, to launch BlazeMeter’s UI from the CLI, type:

$ heroku addons:open blazemeter
Opening blazemeter:pro for myapp.heroku.com

Because BlazeMeter supports single sign-on, you will be logged into the blazemeter.com web interface using your Heroku credentials.

Simply upload your JMeter script or enter your URLs of choice (via GET and POST):

BM Dashboard for Heroku

Integrations Use our integration with New Relic (for example) for application performance monitoring, right from the BlazeMeter dashboard.

BM New Relic

Interactive reports that allow you compare old test reports to current ones, or simply view, customize and print, export data to csv and share links BlazeMeter Report 1

BlazeMeter Report 2

Using the BlazeMeter REST API

BlazeMeter is a 100% JMeter-compatible, self-service web load testing cloud. Load tests are easily created and configured online. Once these tests are created, it is possible to run them using the BlazeMeter REST API. This means that instead of manually starting the tests, users simply create an automated script that will automatically run a predefined test via the API. The API also returns links to the generated reports. These reports are available online or as a downloadable ZIP file.

Using the BlazeMeter Ruby Gem

Add the BlazeMeter gem to your Gemfile:

  gem 'blazemeter'

After adding the gem, bundle install and commit your changes to Gemfile and Gemfile.lock. Before you can start using Ruby Gem you must initialize it with your BlazeMeter API Key

   blazemeter api:init

If called from Heroku application scope, plugin will autorecognize BlazeMeter API Key from Heroku ENV variable and prompt you to use it or to enter key manually.

Initializing BlazeMeter Ruby Gem

After Ruby gem is initialized you can start using BlazeMeter commands. To see more details check the BlazeMeter Ruby Gem documentation

Getting Started

Open the BlazeMeter dashboard.

Click “Add Test” to create a new test and complete the test configuration. If you are creating a JMeter test, you will need to upload your test script.

After the test has been created, copy and paste the test ID into a document for later use (see screenshot below). This ID will be used as a parameter in the API to identify the test.

API Test Id

Under the profile section, copy and paste the User Key into a document for later use. This key will be used as a parameter in the API to identify the user.

API User Key

You can also get the User Key using the heroku config:get command:

$ heroku config:get BLAZEMETER_APIKEY
37bd6ezzz19da2ade2xx

This key will be used as a parameter in the API to identify the user.

To view your performance data

Click on the BlazeMeter icon on your list of Add-ons. You will be redirected via SSO to your account on the BlazeMeter site.

Dashboard

For more information on the features available within the BlazeMeter dashboard please see the knowledgebase.

The BlazeMeter dashboard allows you to:

Easily integrate into your own environment using our existing plugin library (Jenkins, Drupal, WordPress or JMeter for example) or use our API to connect to any system.

Decide whether to launch a single testing server or a cluster of up to 100 dedicated servers, by simply sliding a slider handle. You can resize your test at any time. BlazeMeter reduces the time required to set up and run tests to minutes, allowing you to quickly scale capacity, both up and down, as your testing requirements change.

Use our Master/Slave feature, users can test your website and aggregate multi-geo locations results into a single report OR run numerous tests, each executing a different script from a different geo-location and then aggregate results into a single report.

Opt for the geo location for traffic origin of choice. Our servers are located in California, Oregon and Virginia USA, Tokyo, Ireland, Brazil, Singapore and Australia.

Access the test report archive allowing users to review all current and past test results directly from the test management system.

To access your BlazeMeter dashboard run:

$ heroku addons:open blazemeter
Opening blazemeter for sharp-mountain-4005…

or by visiting the Heroku apps web interface and click on the BlazeMeter icon in your list of Add-ons

Migrating between plans

BlazeMeter’s lifetime free-tier allows users to test out the system and run 10 tests of up to 50 concurrent users per month.

See all BlazeMeter plans. Use the heroku addons:upgrade command to migrate to a new plan.

$ heroku addons:upgrade blazemeter:basic
-----> Upgrading blazemeter:basic to sharp-mountain-4005... done, v18 ($199/mo)
       Your plan has been updated to: blazemeter:basic

Removing the add-on

BlazeMeter can be removed via the CLI.

This will destroy all associated data and cannot be undone!

$ heroku addons:remove blazemeter
-----> Removing blazemeter from sharp-mountain-4005... done, v20 (free)

Support

All BlazeMeter support and runtime issues should be submitted via one of the Heroku Support channels. Any non-support related issues or product feedback is welcome at our Support or on twitter @BlazeMeter

Additional resources are available at: BlazeMeter Knowledge Base and BlazeMeter Blog