Videos, demos, webinars
Codemotion 2019 Amsterdam: Performance Testing for DevOps in the Cloud
At Codemotion Amsterdam, Lars Wolff talks about how to introduce and execute load test and performance testing in DevOps teams and how they benefit from regular test practice.
Slides
- slides from presentation
- plus some bonus extras
Test Case
The example test case from the presentation, see below to run it.
// System under Test – the target system you'll generate traffic against
definition.setTarget("testapp.loadtest.party");
// your Load Generator Cluster
definition.setTestOptions({
cluster: { sizing: "preflight", },
});
// user base of 10.000 unique users
// doing a user journey
// in highest hour in a week
var $userBase = 10000;
var $newUserPerSecond = $userBase / 60 / 60;
definition.setArrivalPhases([
// for 5 minutes
// start RATE new clients/users per second
{ duration: 5 * 60, rate: $newUserPerSecond }, // 100%
{ duration: 5 * 60, rate: $newUserPerSecond * 2 }, // 200%
{ duration: 5 * 60, rate: $newUserPerSecond * 3 }, // 300%
{ duration: 5 * 60, rate: $newUserPerSecond * 4 }, // 200%
]);
// the user Journey
definition.session("flower-shop-user-journey", function(session) {
session.get("/flowers", {
tag: "flower-list"
});
session.wait(30); // wait for 30 seconds
var flower = session.ds.generate("random_number", { range: [1000, 9999]});
session.get("/flowers/:flowerId", {
tag: "flower-detail",
params: {
flowerId: flower
}
});
session.wait(30); // wait for 30 seconds
session.post("/flower-cart/add", {
tag: "add-flower-to-cart",
payload: JSON.stringify({
"item": {
"qty": session.ds.generate("random_number", { range: [1, 9]}),
"flower_id": flower
}
})
});
});
Run the example test case
Just copy & paste it to app.stormforger.com and start a load test
And then, you can checkout how to define non-functional requirements.
Happy Load Testing
Related Blogs
Does Your Multi-Cloud Stack Need a Control Plane?
Most infrastructure teams never decide to run a dozen tools across three clouds. It accumulates, one reasonable choice at a…