Grafana k6 v0.45.0 release: gRPC streaming support, cloud script updates without running tests and more!

:eyes: Originally posted at https://grafana.com/blog/2023/06/27/grafana-k6-v0.45.0-release-grpc-streaming-support-cloud-script-updates-without-running-tests-and-more/

Grafana k6 v0.45.0 has been released, featuring a new experimental module for gRPC streaming support, a new browser recorder extension for Firefox and Chrome, and tons of improvements for Grafana k6 OSS and Grafana Cloud k6.

Here’s a quick overview of the latest k6 release and all the news from the community:

Grafana k6 v0.45.0 release

This release includes a new experimental module to support gRPC streaming: k6/experimental/grpc. It is a copy of the k6/net/grpc module with added stream support. You can just replace k6/net/grpc import with k6/experimental/grpc to use the new functionality. To learn more, check out the grpc module documentation.

Also with this release, users can now upload a test to the cloud without running it. They can simply add --upload-only when invoking k6 cloud as in k6 cloud --upload-only script.js. This is likely going to be most useful in a CI on the actual test script project: CI can run k6 cloud --upload-only new-version-of-script.js on “release” and later the newer version will be used, for example, by a scheduled run.

Lastly it is now possible to set or delete metadata for the whole virtual user with a similar API as used for tags. This also introduces the sub-object metrics on the vu object. See an example below:

The release included more internal improvements, minor changes, and fixes from the k6 team and the community. Check out the full list in the k6 release notes.

k6 browser updates

k6 browser lets you automate browser actions and collect web performance metrics. In the k6 0.45.0 release, the team has continued to add bug fixes and improvements, which include:

  • Removing existing browser_* metrics in favor of Google Web Vital metrics.
  • Bug fix for the timeout error for the Locator.WaitFor functionality when the state defined is either hidden or detached.
  • Bug fix for remote object parsing when subtype is null.

As a preparation for the next release, a new browser option has been added inside scenario definitions to configure the browser test. In future releases, the browser lifecycle will be handled automatically without the need to explicitly launch and close the browser. For more information, check out k6 issue #3022.

New in Grafana Cloud k6

In March, we announced the general availability of Grafana Cloud k6, our managed performance testing solution in Grafana Cloud. If you want to try it out, Grafana Cloud has a free-forever plan with 500 virtual user hours per month and more. (Sign up for free today!)

Note: Existing k6 Cloud customers will not be impacted — they will be migrated to the new experience at a later date.

We continue to add more features to Grafana Cloud k6. Some of the latest additions include:

  • The browser recorder lets you generate a k6 script based on a browser session. It’s available as an extension for Chrome and Firefox.
  • The project activity view helps you get a brief overview of what’s happening in your projects.
  • You can send notifications in a few ways, including to a third-party platform such as Slack and Microsoft Teams, through custom webhooks and through email.
  • The Audit Trail allows admin users to monitor security events.
  • You can now save tests to persist the data if needed.

The latest on k6 Extensions

This was a productive release cycle as it relates to extensions.

The xk6-output-prometheus-remote and xk6-webcrypto experimental modules received some minor updates as we continue to stabilize the features. Additionally, xk6-grpc was added as an experimental module providing support for GRPC protocol in scripts.

The latest Golang security patches were applied to the xk6 docker image thanks to @kempsterc.

A bugfix was applied to xk6-sql thanks to @ynovytskyy.

Of course, the community continues to introduce impactful updates:

Using k6 in your GitHub workflows? Be sure to update to the latest version of k6-action for some updates to the base k6 image.

Introducing more k6 Champions

The k6 Champions program aims to recognize experts within our community to amplify their contributions and partner with the k6 team.

Starting off with some awesome news! We have accepted four new contributors in the program:

We look forward to seeing how our new champions engage and get involved with the community!

Our existing k6 champions have also been busy with speaking about k6 and load testing:

If you love using k6 and have done advocacy and education work on behalf of the project, you can apply to be part of our growing program by filling out this k6 Champions application form.

Load testing must-reads and resources

You can also watch the following episodes of k6 Office Hours:

If you are interested in upcoming k6 news or want to connect with the k6 community, please join us on Slack, Twitter, LinkedIn, or YouTube. Happy testing!

Download the latest version of k6 OSS today, or get started with performance testing on Grafana Cloud, which has a generous free-forever tier that includes 500 k6 Virtual User Hours (VUh) and plans for every use case. Sign up for free now!