Running Server Tests Locally
Server integration tests run against PostgreSQL by default using Docker containers managed by Testcontainers. No additional flags are needed — ./gradlew test -x webapp uses PostgreSQL automatically. The Gradle test task pulls the necessary Docker images and starts the containers.
Prerequisites
Before running server tests, make sure you have a working Docker setup:
- Install Docker Desktop or Docker Engine and Docker CLI.
- Enable remote access for the Docker daemon.
Executing Tests from IntelliJ
You can execute the database tests by running the run configurations provided in the repository:
- For PostgreSQL tests (recommended):
Artemis Server Tests Postgres - For MySQL tests:
Artemis Server Tests MySQL
Creating a Custom Configuration
Alternatively, you can create a custom configuration.
Executing Tests from the Console
PostgreSQL Tests (default)
./gradlew test -x webapp
MySQL Tests
./gradlew testMysql -x webapp
H2 Tests (in-memory, no Docker needed)
For quick local iteration without Docker, you can run tests against H2. Note that H2 may not catch all Postgres-specific issues.
./gradlew test -x webapp -Dzonky.test.database.type=H2
