Load Test Your Applications with Nouvola DiveCloud and AWS CodePipeline
By Eric Beard, Partner Solutions Architect at AWS
AWS CodePipeline is a CI/CD service that allows development teams to make fast and reliable application and infrastructure updates. It builds, tests, and deploys your code every time there’s a change. If a test fails, the pipeline stops. This allows you to catch bugs in your code early, when they are small and easy to fix.
Nouvola is an AWS Partner Network (APN) Advanced Technology Partner with the AWS DevOps Competency. Their intelligent automation and AI simplifies performance testing and optimization at every stage of development.
About Nouvola DiveCloud
DiveCloud is a cloud-based load and performance testing product that can be used to test web sites, mobile applications, and application programming interfaces (APIs).
DiveCloud uses machine learning and predictive analytics technologies to test your software from a wide range of geographic locations, with real-life user scenarios and in-depth performance analytics.
One of the key benefits of DiveCloud is speed—not just the speed of your application running in production, but the speed of your release cycles. You can deploy with confidence knowing your web and mobile apps perform well.
Integration with AWS CodePipeline
It’s easy to incorporate a DiveCloud load test into your pipeline. When creating a test stage, Nouvola is one of the few APN Partner offerings that appears directly in the AWS CodePipeline options.
When adding a new action to a stage, select Test as the Action category and then choose Nouvola Dive Cloud as the Test provider.
Figure 1 – Nouvola DiveCloud is available under the AWS CodePipeline Test actions.
At this point, you will be redirected to the Nouvola sign-in page. If you haven’t already created a Nouvola account, you will need to create one here. You can then create a new test plan to be used during the CodePipeline stage. You can configure a test plan manually, or you can use the Nouvola DiveTrace Chrome plugin to record a browsing session.
Many other options to create tests exist, such as importing directly from Postman or recording via a proxy for mobile apps. You can always add parameter correlation, authentication, and randomization to make test scenarios more realistic.
A wealth of data is available to you after a test plan has finished running. You can view charts on throughput, average response times, error rates, and the overall distribution of requests.
With DiveCloud, you can slice and dice through the data and get to the root cause of what’s slowing your application down. You can also compare performance metrics across test iterations and multiple geographies. If a test fails, the pipeline stops and a link takes you directly to a page where you can start investigating to cause.
Your latest test results are summarized when you log in to DiveCloud. In Figure 2, we see a chart that details error rates under load during the last test.
Figure 2 – Latest test results from DiveCloud.
The charts in Figure 3 show the relationship between response times and number of concurrent users accessing the site.
The goal is for users to see a consistent response time, regardless of how many people are using the application. Since this test revealed higher response times under load, it could indicate a need to improve the way the application scales.
Figure 3 – Average response times breakdown.
One of the great features of DiveCloud is the ability to run your load test from geographic regions around the world. You have complete control of which regions to use, and the weights of traffic coming from each region.
This kind of test can reveal high latencies for users in certain areas of the world where you might need to implement some sort of content delivery network (CDN), such as that offered by Amazon CloudFront.
Figure 4 – DiveCloud lets you run your load test from geographic locations around the world.
Nouvola DiveCloud gives AWS customers an easy and cost-effective way to incorporate robust load testing into their CodePipeline deployment workflows.
With DiveCloud, test cycles can be accelerated, reducing the risk of rollbacks. You can avoid crashes and build faster and better software by building quality testing into the cycle, catching performance issues before they reach customers.
Learn how MightyBell met SLAs and optimized AWS configuration using DiveCloud.
Nouvola – APN Partner Spotlight
Nouvola is an APN Advanced Technology Partner with the AWS DevOps Competency. They offer real-world performance and load testing for web, mobile, API, and IoT applications so developers, DevOps, and engineering managers can release better code faster.
*Already worked with Nouvola? Rate this Partner
*To review an APN Partner, you must be an AWS customer that has worked with them directly on a project.