Files
wehub-resource-sync 4b6817381b
Benchmark image — build + push to ECR (any adapter) / build + push (push) Waiting to run
CI / quality (ubuntu-latest) (push) Waiting to run
CI / test (tools-runtime) (push) Waiting to run
CI / test (e2e-general) (push) Waiting to run
CI / test (cli-runtime) (push) Waiting to run
CI / test (e2e-provider-and-openclaw) (push) Waiting to run
CI / test (integrations-and-misc) (push) Waiting to run
CI / coverage-report (push) Blocked by required conditions
CI / test-kubernetes (push) Waiting to run
CI / should-run-thorough (push) Waiting to run
CI / test-thorough (cloudwatch-demo) (push) Blocked by required conditions
CI / test-thorough (flink-ecs) (push) Blocked by required conditions
CI / test-thorough (upstream-lambda) (push) Blocked by required conditions
CI / test-thorough (prefect-ecs-fargate) (push) Blocked by required conditions
CodeQL / Analyze (python) (push) Waiting to run
Release / build-binaries (zip, opensre.exe, onefile, windows-latest, windows-x64) (push) Blocked by required conditions
Release / publish-release (push) Blocked by required conditions
Release / publish-main-release (push) Blocked by required conditions
Release / prepare (push) Waiting to run
Release / verify (push) Blocked by required conditions
Release / build-python-dist (push) Blocked by required conditions
Release / build-binaries (tar.gz, opensre, onedir, macos-15-intel, darwin-x64) (push) Blocked by required conditions
Release / build-binaries (tar.gz, opensre, onedir, macos-latest, darwin-arm64) (push) Blocked by required conditions
Release / build-binaries (tar.gz, opensre, onedir, ubuntu-22.04, linux-x64) (push) Blocked by required conditions
Release / build-binaries (tar.gz, opensre, onedir, ubuntu-22.04-arm, linux-arm64) (push) Blocked by required conditions
Synthetic Deterministic Tests / Synthetic offline (deterministic) (push) Waiting to run
Interactive Shell Live (PR + post-merge) / turn-checks (no-LLM) (push) Waiting to run
Interactive Shell Live (PR + post-merge) / turn-live shard ${{ matrix.shard_index }} (push) Waiting to run
CI (OpenClaw E2E) / openclaw test (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:10:45 +08:00

2.5 KiB

Tests

Quick-start commands

Goal Command When to use it
Run the default unit suite with coverage make test-cov First thing to run locally; no live infrastructure required.
Verify all integration configs and clients make verify-integrations After adding or changing an integration.
Run a live RCA end-to-end test make test-rca When you need to validate a full investigation against real services.
Run a single RCA fixture make test-rca FILE=<name> When iterating on one specific alert scenario.
Run the full suite including e2e make test-full Pre-release or CI; requires live infrastructure.
Run synthetic scenarios (no live infra) make test-synthetic When testing scenario logic without external service dependencies.

Layout

Keep tests under domain directories — not loose files at the tests/ root.

Path What it covers
tests/<domain>/ Unit and integration tests for product modules (cli/, tools/, integrations/, core/, platform/, …).
tests/synthetic/ Synthetic RCA simulations with scored fixtures and deterministic scenario assets.
tests/e2e/ Real end-to-end scenarios against live services and infrastructure. See e2e/AGENTS.md for scenario design principles.
tests/deployment/ Deployment validation and infrastructure deployment tests.
tests/github_ci/ Repo hygiene guards (naming, import boundaries, architecture references).
tests/conftest.py Shared pytest fixtures for the whole tree.

E2E naming rules

  • Directory format: tests/e2e/<scenario_name>/ where <scenario_name> describes system and workload (example: upstream_lambda, kubernetes).
  • Environment-specific test files use explicit filenames:
    • test_local.py for local environments.
    • test_<cloud>.py for cloud environments (example: test_eks.py).

Synthetic naming rules

  • Scenario suite path format: tests/synthetic/<domain>/<scenario_id>-<slug>/.
  • Scenario ids are numeric and ordered (example: 001-replication-lag).
  • Shared synthetic utilities stay under tests/synthetic/<domain>/shared/.

Telemetry naming rules

  • OTEL_RESOURCE_ATTRIBUTES values must use semantic catalog names and must not use legacy test_case_* values.
  • Use test_case=e2e_<scenario_name> for e2e scenarios.
  • Use test_case=synthetic_<suite_or_scenario_name> for synthetic suites when applicable.

Legacy names

Legacy test_case_* path naming under tests/ is deprecated. Use tests/e2e/* and tests/synthetic/* only.