Skip to main content

test

Run unit tests, integration tests, or slow integration tests matching CI. Use to validate changes before submitting a PR.

Quellinformationen

Repository
apache/skywalking
Letzte Quellaktivität
6. März 2026 um 03:16
Erkannte Sprache von SKILL.md
Englisch
Sterne
24.969
Forks
6.630

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
test
description
Run unit tests, integration tests, or slow integration tests matching CI. Use to validate changes before submitting a PR.
argument-hint
[unit|integration|slow|module-name]
# Tests Run tests matching CI configuration. ## Commands by argument ### `unit` or no argument — unit tests ```bash ./mvnw clean test -q -B -D"checkstyle.skip" ``` CI runs this on: - JDK 11: ubuntu, macOS, Windows - JDK 17, 21, 25: ubuntu only ### `integration` — integration tests (excludes slow) ```bash ./mvnw -B clean integration-test -Dcheckstyle.skip -DskipUTs=true -DexcludedGroups=slow ``` CI runs this on JDK 11, 17, 21, 25 (ubuntu only). ### `slow` — slow integration tests ```bash ./mvnw -B clean integration-test -Dcheckstyle.skip -DskipUTs=true \ -Dit.test=org.apache.skywalking.library.elasticsearch.ElasticSearchIT \ -Dfailsafe.failIfNoSpecifiedTests=false ``` CI runs on JDK 11 (ubuntu only). Currently only ElasticSearch/OpenSearch IT is in the slow matrix. ### Module name — single module tests ```bash # Unit tests for a specific module ./mvnw clean test -pl oap-server/analyzer/<module-name> -D"checkstyle.skip" # Integration tests for a specific module ./mvnw -B clean integration-test -pl oap-server/analyzer/<module-name> -Dcheckstyle.skip -DskipUTs=true ``` ## Test frameworks - JUnit 5 (`org.junit.jupiter`) - Mockito for mocking - AssertJ for assertions - PowerMock for reflection utilities ## Test naming conventions | Type | Pattern | Maven phase | |------|---------|-------------| | Unit tests | `*Test.java` | `test` | | Integration tests | `IT*.java` or `*IT.java` | `integration-test` | ## Slow test tagging Tests tagged with `@Tag("slow")` are excluded from the normal integration-test job and run separately in the slow-integration-test job. Use this tag for tests that spin up external services (Elasticsearch, etc.) and take significant time. ## CI retry behavior All three CI jobs retry on failure (run the same command twice with `||`). This handles flaky tests but masks intermittent issues — if a test fails locally, investigate rather than relying on retries. ## CI reference CI workflow: `.github/workflows/skywalking.yaml` | Job | JDK | OS | Timeout | |-----|-----|----|---------| | `unit-test` | 11 (3 OS) + 17, 21, 25 (ubuntu) | ubuntu, macOS, Windows | 30 min | | `integration-test` | 11, 17, 21, 25 | ubuntu | 60 min | | `slow-integration-test` | 11 | ubuntu | 60 min |
Auf GitHub ansehen