Since we first mentioned it in the Radar, k6 has become a go-to tool for performance testing. We continue to be fans of how easy it is to write JavaScript code for tests, but k6 also has a low-code test builder to make playing with the tool even easier. The documentation shows how easy it is to add performance testing to a pipeline across multiple CI/CD tools. Our teams find it easy to integrate visualization tools like Grafana and New Relic, which help them tune both infrastructure and applications. The developer friendliness and ecosystem make k6 a compelling option for investigating a system's behavior under heavy load.
We've had a bit more experience performance testing with k6 since we first covered it in the Radar, and with good results. Our teams have enjoyed the focus on the developer experience and flexibility of the tool. Although it's easy to get started with k6 all on its own, it really shines with its ease of integration into a developer ecosystem. For example, using the Datadog adapter, one team was quickly able to visualize performance in a distributed system and identify significant concerns before releasing the system to production. Another team, with the commercial version of k6, was able to use the Azure pipelines marketplace extension to wire performance tests into their CD pipeline and get Azure DevOps reporting with little effort. Since k6 supports thresholds that allow for automated testing assertions out of the box, it's relatively easy to add a stage to your pipeline that detects performance degradation of new changes, adding a powerful feedback mechanism for developers.
We're quite excited by k6, a relatively new tool in the performance testing ecosystem with a heavy focus on developer experience. The k6 command line runner executes scripts written in JavaScript and allows you to configure the execution time and the number of virtual users. The CLI has several advanced features that let you see the current statistics before the test has finished executing, scale the number of virtual users beyond what was originally defined and even pause and resume a running test. The command line output provides a set of customizable metrics with transformers that let you visualize the results in Datadog and other observability tools. Adding checks to your scripts is an easy way to integrate performance testing into your CI/CD pipeline. For accelerated performance testing, check out the commercial version, k6 Cloud, which provides cloud scaling and additional visualizations.