A Kubernetes-native, massively parallelized, distributed integration test runner for Scala. Currently, it supports ScalaTest, with ZIO Test support coming soon.
Make sure your JAVA_HOME environment variable already points to an OpenJDK 11+ distribution, then run:
curl -L https://raw.githubusercontent.com/shopstic/toothpick/main/scripts/install.sh | bashWhich installs latest version to the default location of ~/.toothpick.
Alternatively, to install a specific version to a specific location:
curl -L https://raw.githubusercontent.com/shopstic/toothpick/main/scripts/install.sh | bash -s VERSION LOCATIONThen add the Toothpick JDK facade to your project:
- Open the
Project Structuredialog viaFile > Project Structurefrom the menu bar - Under
Platform Settings > SDKs, click on the+icon then clickAdd JDK - Choose the path to the
jdkdirectory inside the installed Toothpick directory, which defaults to~/.toothpick/jdk - Rename the newly added JDK to
Toothpick
The Helm chart is published as an OCI registry package at ghcr.io/shopstic/chart-toothpick
helm chart save /path/to/charts/toothpick/ ghcr.io/shopstic/chart-toothpick:"${COMMIT_HASH}"Place a .toothpick.conf file at the root of your project directory to override any configuration. See tp-runner-app.conf for reference.
Run any ScalaTest as usual, then edit its Run configuration dialog. Scroll down to the bottom of the dialog and simply select Toothpick as the JRE. Click Apply then Run.