| name | run-sdk-tests |
| description | Run the Restate SDK conformance test suite locally against this SDK's Docker image. Use when the user wants to run sdk tests, run conformance tests, or verify an implementation. |
| user-invocable | true |
Running SDK Conformance Tests Locally
Quick start
./.tools/run-sdk-tests.sh
./.tools/run-sdk-tests.sh --skip-build
./.tools/run-sdk-tests.sh --skip-build --test-suite=default --test-name=Combinators
Prerequisites
- Java 21+
- Podman or Docker
What the script does
- Reads the suite version from
.github/workflows/integration.yaml (single source of truth)
- Builds the service image:
podman/docker build -f test-services/Dockerfile .
- Downloads and caches
sdk-tests.jar in tmp/ (version-pinned)
- Pulls the Restate runtime image explicitly
- Runs
java -jar sdk-tests.jar run ... directly on the host
Key flags (passed through to the runner)
| Flag | Purpose |
|---|
--test-suite=default | Which suite to run (default, alwaysSuspending, threeNodes, etc.) |
--test-name=ClassName | Run only one test class (requires --test-suite) |
--exclusions-file=path | YAML file listing tests to skip |
Reading results
Logs are written to tmp/test-report/<timestamp>/<suite>/<TestClass>/:
testRunner.log — client-side request/response logs
runtime_0.log — Restate server log
default-service_0.log — SDK service container log