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 | bash
Which 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 LOCATION
Then add the Toothpick JDK facade to your project:
- Open the
Project Structure
dialog viaFile > Project Structure
from the menu bar - Under
Platform Settings > SDKs
, click on the+
icon then clickAdd JDK
- Choose the path to the
jdk
directory 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
.