Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Created by
brew bump
Created with
brew bump-formula-pr
.release notes
k6 new
command now supports templates and ProjectIDs.k6/experimental/csv
module gets a newasObjects
option.k6/experimental/browser
module, in favor ofk6/browser
.internal
package.Breaking changes
k6/experimental/browser
. If you're still using it, follow the instructions to move to the graduated and stablek6/browser
module.internal
package. This was based on the publicly available extensions for k6 and may break private ones. More APIs will likely be removed or updated in follow-up releases after this more mechanical change..ts
extension. It also deprecatesexperimental_enhanced
compatibility mode as it is no longer necessary.New features
New functional testing focused official jslib k6-testing
The k6 team has been developing a new official jslib dedicated to functional testing. While it is still under active development and will potentially see breaking changes, the set of APIs and behaviors it offers are meant to make their way into k6 eventually, and it is now available for early feedback.
k6-testing is a k6 JavaScript library that offers a seamless way to write functional tests in k6, using a Playwright-compatible assertions API. It exposes an
expect
function, with which assertions can be performed using specific matchers that reflect the expected results.Unlike current k6's
check
whenexpects
assertions fail, the test will immediately fail with a clear error message, including the expected and actual values in a similar fashion to what users would observe when using Playwright assertions.There are many generic matchers (and more to come), such as
toEqual
,toBe
, ortoBeTruthy
, to only name a few, that can be used to assert conditions during a k6 test.k6-jslib-testing also includes browser-specific async matchers that wait until the expected condition is met such as
toBeVisible
,toBeDisabled
, ortoBeChecked
, to name a few.It is currently available as part of the jslib.k6.io repository and is available to use in your k6 tests by adding the following import:
Try it out and give us feedback or contribute to the project on the k6-jslib-testing repository!
--template
and--project-id
flags fork6 new
command #4153The
k6 new
command has been revamped to provide an improved experience when scaffolding new k6 tests. It now supports a--template
flag with options such asminimal
,protocol
, andbrowser
, letting you generate a script tailored to your specific use case.The command also now accepts a
--project-id
flag, which allows you to easily parameterize the test's Grafana Cloud configuration.New
asObjects
option ink6/experimental/csv
module #4295The CSV module's parsing operations now support the
asObjects
option, which enables parsing CSV data into JavaScript objects instead of arrays of strings (the default behavior).When
asObjects
is set totrue
, the module parses CSV data into objects where:With the option set to
true
,the following CSV file:
will be parsed into the following JavaScript objects:
Refer to the CSV module's documentation for more information.
UX improvements and enhancements
xk6-browser-data-
tok6browser-data-
.file
scheme URLs across file loading APIs -open
,k6/experimental/fs.open
andk6/net/grpc.Client#load
.Bug fixes
--local-execution
runs by isolatingArchive
's urls.Maintenance and internal improvements
modulestest
to make experimental streams test simpler.browser
module working with reused VUs that originally weren't used in browser scenarios.