This extension adds Tracetest support to k6!
That means that if you're testing an instrumented system, you can use this extension to trigger test runs.
Currently, it supports HTTP requests and the following propagation formats: tracecontext
, baggage
, b3
ot
, jaeger
and xray
.
It is implemented using the xk6 extension system.
To build a k6
binary with this extension, first ensure you have the prerequisites:
- Go toolchain
- Git
Then:
- Download
xk6
:
$ go install go.k6.io/xk6/cmd/xk6@latest
- Build the binary:
$ xk6 build --with github.com/kubeshop/xk6-tracetest@latest
- Run a script:
$ ./k6 run examples/list-pokemons.js --env XK6_TRACETEST_API_TOKEN=<your token> -o xk6-tracetest
To run a full example take a look at the fully flesh demo we have for you in the Tracetest main mono repo: examples/tracetest-k6
Moving forward the latest updates will be only available from the tracetest App, if you want to keep using it with the OpenSource version make sure to build it with the version supporting it.
- Build the binary:
$ xk6 build --with github.com/kubeshop/xk6-tracetest@0v.1.7 # OSS supported version
If you want to configure the tracetest k6 binary you can do it by using any of the following environment variables
- XK6_TRACETEST_SERVER_URL: Updates the tracetest server url for API interactions (can be overwritten by the script config)
- XK6_TRACETEST_SERVER_PATH: Updates the tracetest server path for API interactions (can be overwritten by the script config)
- XK6_TRACETEST_TOKEN: Updates the tracetest server token that will be used to authenticate with the server (can be overwritten by the script config)
You can also set a default tracetest endpoint when running the k6 binary by using the following option:
./k6 run examples/list-pokemons.js -o xk6-tracetest=<server-url>