Skip to main content

Test Commands Reference

Complete reference for all testing commands in the Heimdall project.

Quick Start

just test           # Run all unit tests
just test-all # Run ALL tests (unit + E2E)
just test-quick # Run fast tests only
just test-ci # Run CI test suite
just test-help # Show testing guide

Rust Tests

API Tests

just test-api               # Run API tests
just test-api-verbose # With output (--nocapture)
just test-api-security # Security tests only

Bot Tests

just test-dc-bot            # Discord bot tests
just test-dc-bot-verbose # With output
just test-tw-bot # Twitch bot tests
just test-tw-bot-verbose # With output

Crate Tests

just test-audit             # heimdall-audit crate
just test-audit-verbose # With output
just test-storage # heimdall-storage crate
just test-proto # heimdall-proto crate
just test-crates # All crates (audit + storage + proto)

All Rust

just test-rust              # All Rust tests (workspace-wide)
just test-rust-verbose # With output
just test-rust-watch # Watch mode (requires cargo-watch)

Shared Library Tests

API Library (@elcto/api)

just test-api-lib           # Run tests
just test-api-lib-coverage # With coverage report
just test-api-lib-watch # Watch mode

UI Library (@elcto/ui)

just test-ui                # Run tests
just test-ui-coverage # With coverage report
just test-ui-watch # Watch mode
just test-cookies-consent           # Run tests
just test-cookies-consent-watch # Watch mode

Video Player Library (@elcto/player)

just test-player            # Run tests
just test-player-watch # Watch mode

All Shared Libraries

just test-shared            # All shared library tests
just test-shared-coverage # With coverage

Webapp Tests

Backend Dashboard

just test-backend           # Unit tests
just test-backend-e2e # E2E tests
just test-backend-e2e-ui # E2E interactive UI mode
just test-backend-e2e-headed # E2E visible browser
just test-backend-e2e-debug # E2E debug mode
just test-backend-report # Show E2E test report

ID App

just test-id                # Unit tests
just test-id-e2e # E2E tests
just test-id-e2e-ui # E2E interactive UI mode
just test-id-e2e-headed # E2E visible browser
just test-id-e2e-debug # E2E debug mode
just test-id-report # Show E2E test report

Policies App

just test-policies          # Unit tests
just test-policies-e2e # E2E tests
just test-policies-e2e-ui # E2E interactive UI mode
just test-policies-e2e-headed # E2E visible browser
just test-policies-report # Show E2E test report

Documentation

just test-docs              # Build check (verifies docs compile)

All Webapps

just test-webapps           # All webapp unit tests
just test-webapps-e2e # All webapp E2E tests

Combined Commands

just test-unit              # All unit tests (Rust + shared + webapps)
just test-e2e # All E2E tests
just test-all # ALL tests (unit + E2E)
just test-security # All security tests
just test-quick # Fast tests only (no E2E)

CI/CD Testing

just test-ci                # Full CI test suite

This runs:

  1. All Rust tests (cargo test --workspace)
  2. All shared library tests
  3. All webapp lint tests
  4. All E2E tests

Usage Examples

Before Committing

# Quick verification
just test-quick

# Full verification
just test

After Adding New Feature

# Run relevant tests
just test-api # If API changes
just test-backend # If backend changes
just test-backend-e2e # If UI changes

# Run all tests
just test-all

Debugging Test Failures

# Rust - see full output
just test-api-verbose

# E2E - interactive debugging
just test-backend-e2e-debug
just test-backend-e2e-ui # Use Playwright UI

# Watch mode for rapid iteration
just test-rust-watch
just test-ui-watch

Security Testing

# Run all security tests
just test-security

# Run specific security tests
just test-api-security