Run unit tests, integration tests, or slow integration tests matching CI. Use to validate changes before submitting a PR.
88
82%
Does it follow best practices?
Impact
100%
1.13xAverage score across 3 eval scenarios
Passed
No known issues
Run tests matching CI configuration.
unit or no argument — unit tests./mvnw clean test -q -B -D"checkstyle.skip"CI runs this on:
integration — integration tests (excludes slow)./mvnw -B clean integration-test -Dcheckstyle.skip -DskipUTs=true -DexcludedGroups=slowCI runs this on JDK 11, 17, 21, 25 (ubuntu only).
slow — slow integration tests./mvnw -B clean integration-test -Dcheckstyle.skip -DskipUTs=true \
-Dit.test=org.apache.skywalking.library.elasticsearch.ElasticSearchIT \
-Dfailsafe.failIfNoSpecifiedTests=falseCI runs on JDK 11 (ubuntu only). Currently only ElasticSearch/OpenSearch IT is in the slow matrix.
# 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=trueorg.junit.jupiter)| Type | Pattern | Maven phase |
|---|---|---|
| Unit tests | *Test.java | test |
| Integration tests | IT*.java or *IT.java | integration-test |
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.
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 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 |
bf0fe4b
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.