GitHub Actions에서 실패한 E2E 테스트를 조사하는 스킬입니다. 실행 로그 산출물을 가져와 OAP와 다른 구성 요소의 오류를 확인하고, 별도 테스트 프로세스의 실패까지 포함해 원인 후보를 정리합니다.
- GitHub Actions E2E 실패 조사
- OAP, BanyanDB, UI 로그 확인
- 별도 테스트 프로세스의 실패 추적
CI 설정에 맞춰 SkyWalking 단위 테스트, 통합 테스트 또는 별도의 느린 통합 테스트를 실행하는 방법을 안내합니다. 테스트 그룹이나 Maven 모듈을 선택하고 각 단계에서 실행되는 테스트와 이름 및 태그 규칙을 확인할 수 있습니다.
Run unit tests, integration tests, or slow integration tests matching CI. Use to validate changes before submitting a PR.
실행 점수 미검증
설치 방법 보기이 스킬은 CI 설정에 맞춰 SkyWalking 단위 테스트, 통합 테스트, 느린 통합 테스트를 실행하는 방법을 안내합니다. 인수를 생략하거나 unit을 지정하면 단위 테스트를 실행하고, integration은 느린 테스트를 제외한 통합 테스트를 실행하며, slow는 느린 테스트 그룹을 실행합니다. 모듈 이름을 지정해 해당 모듈의 테스트만 실행할 수도 있습니다. 테스트 이름 규칙과 Maven 실행 단계, @Tag("slow")를 이용한 분류도 설명하므로 각 명령이 어떤 테스트를 실행하는지 파악할 수 있습니다.
PR 제출 전에 CI에서 사용하는 테스트 종류로 변경 사항을 확인할 때 사용할 수 있습니다. 전체 테스트 전에 특정 모듈만 검사하거나 일반 통합 테스트 작업에서 제외되는 Elasticsearch/OpenSearch 테스트를 따로 실행할 때도 유용합니다.
Maven Wrapper를 사용합니다. CI에서는 테스트 종류에 따라 JDK 버전과 운영 체제 조건이 다릅니다. 테스트가 실패하면 CI 재시도에 의존하지 말고 원인을 조사하도록 안내합니다.
이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.
AI가 SKILL.md의 내용에서 주의가 필요한 작업과 도입 전제를 확인했습니다. 점수는 실제로 실행한 결과(실행 검증)만으로 매깁니다.
점수에는 넣지 않았습니다. 2026년 10월 29일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.
설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
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=slow
CI 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=false
CI 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=true
org.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 |
아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
GitHub Actions에서 실패한 E2E 테스트를 조사하는 스킬입니다. 실행 로그 산출물을 가져와 OAP와 다른 구성 요소의 오류를 확인하고, 별도 테스트 프로세스의 실패까지 포함해 원인 후보를 정리합니다.
Maven 래퍼로 SkyWalking OAP의 백엔드 또는 전체 프로젝트를 빌드하고 Javadoc과 Checkstyle을 확인합니다. PR 제출 전에 전체 빌드, 빠른 백엔드 빌드, 단일 모듈 빌드나 개별 검사를 선택할 수 있습니다.
SkyWalking의 MAL, OAL, LAL 또는 Hierarchy DSL 스크립트를 컴파일해 생성된 `.class` 파일을 조사할 수 있도록 저장합니다. DSL 하나를 선택하거나 네 종류 모두 생성하고, `javap`으로 바이트코드를 확인하는 방법을 안내합니다.
PR 브랜치의 변경 사항을 빌드, Checkstyle, 라이선스 헤더, Java 클래스 이름 검사로 확인하고 커밋한 뒤 푸시합니다. PR이 없으면 프로젝트 템플릿에 따라 생성합니다.
`license-eye`로 소스 파일의 Apache 2.0 라이선스 헤더와 의존성 라이선스 목록을 확인합니다. 헤더를 수정하거나 목록을 다시 생성하고, PR 제출 전에 변경 내용을 검토할 수 있습니다.
SkyWalking OAP에 모니터링 대상이나 Layer를 추가할 때 신호별 확장 지점을 정리하고 Layer 등록, UI 템플릿, 문서, 로컬 검증 등 함께 필요한 작업을 파악하도록 돕습니다.