Skip to main content

Quick Start

This page showcases getting started with Tracetest by using the Tracetest CLI, Docker, or Kubernetes.

note

You need to add OpenTelemetry instrumentation to your code and configure sending traces to a trace data store, or Tracetest directly, to benefit for Tracetest's trace-based testing.

Install the Tracetest CLI

Terminal
brew install kubeshop/tracetest/tracetest

Install the Tracetest server

Terminal
tracetest server install
Terminal
How do you want to run TraceTest? [type to search]:
> Using Docker Compose
Using Kubernetes
note

Follow the prompts and continue with all the default settings. This will generate a ./tracetest/ directory that contains a docker-compose.yaml and two more config files. One for Tracetest and one for OpenTelemetry collector.

To see the output of this command, view this sample setup from our GitHub examples.

Start Docker Compose from the directory where you ran tracetest server install.

Terminal
docker compose -f tracetest/docker-compose.yaml up -d
Condensed expected output from the Tracetest container:
Starting tracetest ...
...
2022/11/28 18:24:09 HTTP Server started
...

Open your browser on http://localhost:11633.

Create a test.

Need more detailed information about how to install Tracetest? Read the detailed setup on the CLI installation page.

note

View deployment instructions for Docker and Kubernetes in the Deployment section.

info

Running a test against localhost will resolve as 127.0.0.1 inside the Tracetest container. To run tests against apps running on your local machine, add them to the same network and use service name mapping instead. Example: Instead of running an app on localhost:8080, add it to your Docker Compose file, connect it to the same network as your Tracetest service, and use service-name:8080 in the URL field when creating an app.

You can reach services running on your local machine using:

  • Linux (docker version < 20.10.0): 172.17.0.1:8080
  • MacOS (docker version >= 18.03) and Linux (docker version >= 20.10.0): host.docker.internal:8080