Omnibus-GitLab에서의 테스트 보고서 생성
다음 세 개의 파이프라인이 allure 보고서를 생성하는 동안 생성됩니다.
- Omnibus 파이프라인
- TRIGGERED_CE/EE_PIPELINE 하위 파이프라인 (매뉴얼 트리거)
- QA-SUBSET-TEST 하위 파이프라인
Omnibus MR 파이프라인
Omnibus-GitLab 프로젝트 MR 파이프라인은 두 가지 방법으로 트리거할 수 있습니다.
- 파이프라인 매뉴얼 실행
- MR이 존재하고 리포지터리에 커밋이 푸시될 때
현재 파이프라인에서의 테스트는 매뉴얼으로 다음과 같이 트리거됩니다.
-
Trigger:ce-package
작업 -
Trigger:ee-package
작업
Trigger:ce/ee-package 작업
이러한 작업은 generate-facts
작업이 완료된 후에 수동으로 트리거될 수 있습니다. 이러한 작업을 트리거하면 하위 파이프라인이 생성됩니다.
하위 파이프라인인 TRIGGERED_CE/EE_PIPELINE
은 Omnibus-GitLab 리포지터리에 생성됩니다.
TRIGGERED_CE/EE_PIPELINE 하위 파이프라인
이 하위 파이프라인에는 qa-subset-test
라는 작업이 포함되어 있으며, 이는 주된 GitLab 프로젝트의 package-and-test/main.gitlab-ci.yml
파일을 사용합니다.
qa-subset-test 작업
qa-subset-test
작업은 Omnibus-GitLab 리포지터리에서 다른 하위 파이프라인을 트리거합니다.
MR에서 allure 보고서 스냅샷을 얻으려면 qa-subset-test
에 전달해야 하는 환경 변수는 다음과 같습니다.
환경 변수 | 설명 |
---|---|
GITLAB_AUTH_TOKEN
| 이를 통해 Danger 봇이 omnibus-gitlab 리포지터리에 코멘트를 게시할 수 있습니다. 우리는 ci-variable 에서 언급된 다른 Danger 봇 관련 액세스에도 사용되는 $DANGER_GITLAB_API_TOKEN 을 사용하고 있습니다.
|
ALLURE_MERGE_REQUEST_IID
| 이는 e2e-test-report-job에서 사용할 MR ID를 나타내며, 이를 통해 allure-report-publisher 가 제공된 ID를 사용하여 MR에 메시지를 게시합니다. 예: !6190
|
qa-remaining-test-manual
qa-remaining-test-manual
작업은 매뉴얼 트리거 파이프라인입니다. 이는 qa-subset-test
와 동일한 파이프라인을 트리거하지만 qa-subset-test
작업의 일부로 실행되지 않은 테스트를 실행합니다.
qa-subset-test
에서 사용된 환경 변수는 allure 보고서를 생성하는 데에도 사용되는 것과 동일합니다.
QA-SUBSET-TEST 하위 파이프라인
이 파이프라인은 GitLab QA 프로젝트를 사용하여 조율된 테스트의 하위 집합을 실행하며, 이후에 각 실행된 테스트에 대한 보고서 원본 파일을 생성하기 위해 allure gem을 사용한 후 파일을 공통 폴더에 저장합니다. instance
, decomposition-single-db
, decomposition-multiple-db
및 praefect
와 같은 일부 조율된 작업은 초기에 전체 스위트를 실행했던 흡연 테스트만을 실행합니다.
e2e-test-report 작업
e2e-test-report
작업에는 .generate-allure-report-base 작업이 포함되어 있으며, 이는 모든 보고서를 지정된 폴더에 모아 단일 보고서로 업로드하고 이를 S3 버킷에 업로드하는 allure-report-publisher
gem을 사용합니다.
또한 이 작업은 qa-subset-test에서 전달된 ID를 가진 MR에 대한 allure 보고서를 코멘트로 게시합니다.
allure-report-publisher는 백엔드에서 allure를 사용하는 젬으로, GitLab에서 보고서를 업로드하고 MR에 코멘트를 게시하기 위해 제공됩니다.
Omnibus MR 파이프라인에서의 QA 흐름 전체 과정은 다음과 같습니다.
Allure 보고서 및 QA 파이프라인 데모
파이프라인과 Allure 보고서 사용 방법에 대한 심층적인 비디오 안내는 YouTube에서 확인할 수 있습니다.