실행 컨텍스트 선택
end-to-end 테스트에서 `only` 및 `except` 메타데이터를 사용하여 특정 환경, 파이프라인, job에 대한 실행 컨텍스트를 선택하는 방법을 설명합니다.
일부 테스트는 특정 환경이나 특정 파이프라인 또는 job에 대해 실행되도록 설계되어 있습니다. only 및 except 메타데이터를 사용하여 테스트 실행 컨텍스트를 지정할 수 있습니다. 사용 가능한 스위치 # 스위치 기능 타입 tld 최상위 도메인 매처 설정 String subdomain 서브도메인 매처 설정 Array 또는 String domain 도메인 매처 설정 String production 프로덕션 환경 매칭 Static pipeline 파이프라인 매칭 Array 또는 Static job job 매칭 Array 또는 Static :production 과 { <switch>: 'value' } 를 동시에 지정할 수 없습니다. 이 옵션들은 상호 배타적입니다. production을 지정하고 싶다면 tld 와 domain 을 독립적으로 제어할 수 있습니다. 예시 # Only # 지정된 컨텍스트에서만 테스트를 실행합니다. 매칭 방법: 환경에는 정규식을 사용합니다. 파이프라인에는 문자열 매칭을 사용합니다. job에는 정규식 또는 문자열 매칭을 사용합니다. 일반 조건에는 람다 또는 truthy/falsey 값을 사용합니다. 테스트 실행 컨텍스트 키 매칭 gitlab.com only: :production gitlab.com staging.gitlab.com only: { subdomain: :staging } (staging).+.com gitlab.com 및 staging.gitlab.com only: { subdomain: /(staging.)?/, domain: 'gitlab' } (staging.)?gitlab.com dev.gitlab.org only: { tld: '.org', domain: 'gitlab', subdomain: 'dev' } (dev).gitlab.org staging.gitlab.com 및 domain.gitlab.com only: { subdomain: %i[staging domain] } (staging nightly 파이프라인 only: { pipeline: :nightly } "nightly scheduled pipeline" nightly 및 canary 파이프라인 only: { pipeline: [:nightly, :canary] } "nightly scheduled pipeline" 및 "canary" ee:instance job only: { job: 'ee:instance' } 모든 파이프라인의 ee:instance job quarantine으로 끝나는 모든 job only: { job: '.*quarantine' } 모든 파이프라인에서 quarantine으로 끝나는 모든 job 로컬 개발 환경 only: :local Runtime::Env.running_in_ci?가 false인 모든 환경 조건이 truthy 값으로 평가되는 모든 실행 only: { condition: -> { ENV['TEST_ENV'] == 'true' } } TEST_ENV가 true로 설정된 모든 실행 RSpe