In part one of this series, we started defining the problem we are solving. Essentially, we are trying to leverage Docker and DevOps tools to ensure our decentralized team can release faster and with less centralized synchronisation. Before we dive into software choices, we have to talk about the elephant in the room.
Realism in your load testing scripts is paramount to collecting actionable performance data. You need your scripts to closely simulate real-world behavior, and that means every user is going to have different login credentials and spend varying amounts of time on each page.
One of the best ways to create a realistic user scenario and load test is to introduce randomness into your scripts.
The 2016 Summer Olympics will be the most-watched television event in the world for two weeks.
The engineering team at USA Gymnastics knew it was time to ramp up performance testing, and Load Impact is proud to partner with them to make sure their website and infrastructure will be ready to handle the prolonged uptick in traffic.
USA Gymnastics improved average load times on its most important pages by nearly 100 percent across the board, and they got there by analyzing data from their Load Impact tests.
Pokemon Go had serious performance issues upon release, but it looks like they’ve overcome those en route to becoming arguably the most popular game in the world in 2016.
Now ask yourself, would my application be able to recover from bad performance and pull off a similar feat?
In order to get actionable results from your performance tests, you need to create scenarios that closely mimic the expected behavior of your users.
After all, what good is a test if it’s not preparing you for a real-world event?
Whenever a user stops taking actions in order to think about their next move in an application, that translates to “client sleep time” in your user scenario — and it’s an incredibly important, yet often-forgotten function.
Tl;dr — UEFA, the second-largest soccer federation in the world, trusts Load Impact with its performance testing needs, and as engineers (and soccer fans, ourselves) that makes us very proud. Here’s an overview of UEFA’s latest success story: Euro 2016.
Tl;dr — More Load Impact customers than ever are continuously running load tests. In response, we’ve just shipped our “Performance Thresholds” feature. Now, engineers set Pass/Fail metrics for their scheduled tests in order to hone in on the data that’s most important to them. Here’s how we think that helps you:
- The binary status of Pass/Fail metrics is great for automated Continuous Integration flows
- Set thresholds for VU load time, page load time or any of your custom metrics
- Know right away if a test passed or failed your expectations
- Configure tests to abort when a metric fails and avoid completely crashing your application
Tl;dr — Performance is a key factor in how likely your Google ads and organic results will be seen and how much you need to spend. It's just another reason why we're building a performance testing solution to help you ship better applications, faster.
This article covers how Google puts a premium on speed + performance and the nitty gritty of how your Google Ad Rank is impacted by those factors.
So, I’ve started learning a bit of Go, which seems to be a language in my taste (small, fast and not too high-level), but some things are a little tricky to wrap my head around. Like, me being an old C programmer, happily discovering pointers but then getting confused by not being able to do pointer arithmetics, by pointers getting dereferenced automatically, etc. Or some things around the package system that I haven’t quite grasped.
Tl;dr — We have redesigned the user scenario editor to create a better scripting experience in our web app. You could also use your own editor of choice with the Load Impact CLI. The focus in the Developer Experience (DX) is to create a productive platform for performance testing.