Skip to content

Load Testing Blog

Recording HTTP traffic with Fiddler

Fiddler is an HTTP proxy primarly designed to debug HTTP requests. It allows to capture HTTP traffic and export it in different format. OctoPerf supports importing HAR (Http Archive v1.2), which is precisely what Fiddler can do. In this post, you will learn how to record your web or mobile app with Fiddler, and then run a load test from the Cloud with OctoPerf.

We are going to use FiddlerCap, which is a very simple and powerful.

Why recording

Recording an HTTP app is the best way to run realistic load tests. You are guaranteed to capture the real HTTP traffic between a customer and your web app. It's also quicker to record the traffic instead of creating it manually from scratch.

Recording HTTP traffic with JMeter

JMeter is an open-source load testing tool. See related posts if you want more information about JMeter. JMeter allows to record HTTP traffic with its built-in HTTP(S) Test Script Recorder. OctoPerf natively supports importing JMeter recordings.

Installation

First, you need to install JMeter on your computer:

  • Get JMeter from JMeter Download Page,
  • Decompress the archive,
  • Run JMETER_HOME/bin/jmeter executable (extension depends on your OS).

JMeter GUI should appear. JMeter is a Java program, it requires a Java JRE. Install one if you don't have any.

Real-time analytics with ElasticSearch

When we first started to think about real-time analytics, we though that our previous experience in load testing would help us to get quickly to something working fine. It always seems easy to rethink about a problem you already solved in the past. We were totally wrong.

We wanted to provide our users a completely new analytics experience when load testing their website. Our requirements are :

  • Real-time: users should not wait the end of the test to analyze results,
  • Blazingly Fast: users should experience sub-second response times, regardless of the number of concurrent virtual users,
  • Scalable: we must be able to scale horizontally as the number of users grows,
  • Reliable: the analytics system should be redundant to provide fault tolerance and avoid outage,
  • Testable: we should be able to easily verify through unit testing that the analytics system is working correctly,
  • Open-source: we don't want to build this by ourselves. We believe that it's not our job. We don't want to waste our time reinventing the wheel.

We placed the bar very high. If you want to reach the moon, shouldn't you somehow aim for the stars?

JMeter vs Gatling Tool

I think you'll agree when I say:

It's REALLY hard to decide whenever JMeter or Gatling Tool should be used.

You're probably wondering:

  • How does JMeter to Gatling Tool compare?
  • Which tool has best documentation? Performances? Script Maintainability?
  • Should I use JMeter or Gatling? Or maybe both?

Well, it turns out you can gain significant insight on JMeter and Gatling differences in just 5 minutes reading!

Following up our article about why we chose JMeter to build OctoPerf, our Cloud Load Testing Platform, this post compares JMeter and Gatling Tool on many different fields:

  • Project History: which tools is improved and maintained more actively,
  • Features: which of the two has the most features,
  • Setup: how each tool can be installed,
  • Documentation: which tool does have the most complete documentation,
  • Scripting: compares how to design scripts with both tool,
  • Performances: is JMeter faster than Gatling? Which is the most efficient tool,
  • and even more!

Ready for some action? Let's go!

Building Better Software

OctoPerf has been built from the ground with one unique idea: writing code that's pleasant to work with. Code quality is our number one priority. When you create your own startup, you quickly understand that the number one enemy are not your competitors: it is yourself!

When creating a startup you realize that your product:

  • must be released as quickly as possible on the market,
  • needs as many features as possible to catch back the competitors,
  • must be bug free to give your users the best possible experience.