tree: b84a34757460849d2f97885dfac48906a9f642ca
  1. data/
  2. k8s/
  3. report/
  4. docker-compose.yml
  5. README.md
  6. testsuite.yaml
e2e/README.md

Please add the corresponding e2e (aka end-to-end) test cases if you add or update APIs.

How to work

  • Start and watch the Docker Compose environment

    • The Compose file is e2e/docker-compose.yml

    • The testing container uses api-testing

    • The main test definition file is e2e/testsuite.yaml

    • Before starting the suite locally, build the apache/hertzbeat:test image from the repository root:

      mvn clean -B package -Prelease -Dmaven.test.skip=true --file pom.xml
      docker build -t apache/hertzbeat:test -f script/docker/server/Dockerfile ./dist
      
  • Run the E2E tests via api-testing

    • The test cases run from top to bottom
    • You can add the necessary assertions there
    • Test data files are under e2e/data/
    • The test report is generated at e2e/report/report.md
    • HertzBeat logs are written to e2e/logs/

Run locally

Please follow these steps if you want to run the E2E tests locally.

Please make sure that Docker Compose v2 is installed

  • Build the local apache/hertzbeat:test image from the repository root

  • Change the directory to e2e, then run:

    docker compose up --exit-code-from testing --remove-orphans
    
  • If your environment uses the standalone Compose binary, use docker-compose instead of docker compose

  • After the run, check e2e/report/report.md and e2e/logs/ for the test result and runtime logs