환경 설정 | 사용자
GitLab v19.1E2E 테스트 프레임워크는 user와 같은 특정 리소스 생성이나 인스턴스 레벨 설정 변경을 위해 관리자 사용자를 활용합니다. GITLAB_ADMIN_USERNAME GITLAB_ADMIN_PASSWORD GITLAB_QA_ADMIN_ACCESS_TOKEN: 이 변수는 선택 사항이며, 설정되지 않은 경우 관리자 자격 증명을 사용하여 UI를 통해 생성됩니다.
관리자 사용자#
E2E 테스트 프레임워크는 user와 같은 특정 리소스 생성이나 인스턴스 레벨 설정 변경을 위해 관리자 사용자를 활용합니다.
테스트 파이프라인에서 사용되는 환경은 알려진 기본 자격 증명과 개인 액세스 토큰을 가진 관리자 사용자를 자동으로 생성하므로, 해당 환경에 대해 관리자 사용자를 명시적으로 구성할 필요는 없습니다.
관리자 사용자에게 다른 자격 증명이 필요한 경우, 다음 환경 변수를 통해 구성할 수 있습니다:
-
GITLAB_ADMIN_USERNAME -
GITLAB_ADMIN_PASSWORD -
GITLAB_QA_ADMIN_ACCESS_TOKEN: 이 변수는 선택 사항이며, 설정되지 않은 경우 관리자 자격 증명을 사용하여 UI를 통해 생성됩니다.
관리자 사용자는 전역 접근자 메서드 QA::Runtime::User::Store.admin_user를 통해 액세스할 수 있습니다.
테스트 사용자#
테스트 파이프라인 중 하나에 대해 실행되는 모든 테스트는 각 테스트마다 새로운 테스트 사용자를 자동으로 생성합니다.
이 사용자의 리소스 인스턴스는 QA::Runtime::User::Store.test_user 접근자 메서드를 통해 전역적으로 사용 가능하게 됩니다.
로그인 또는 API를 통한 다른 객체 생성과 같은 모든 사용자 관련 작업은 기본적으로 이 사용자의 자격 증명 또는 개인 액세스 토큰을 사용합니다.
자동 사용자 생성은 테스트 파이프라인에서 사용되는 모든 임시 환경에 미리 자동으로 시드된 관리자 사용자 개인 액세스 토큰을 사용하여 수행됩니다.
단일 사용자 사용#
모든 테스트를 단일 사용자로 실행하지 않는 것이 권장되지만, 특정 환경에서는 각 테스트마다 새로운 사용자를 생성하는 데 제한이 있습니다.
고유한 테스트 사용자 생성을 강제로 비활성화하려면 환경 변수 QA_CREATE_UNIQUE_TEST_USERS를 false로 설정해야 합니다.
고유 사용자 생성이 비활성화될 수 있는 이유의 예:
- 환경에 관리자 사용자가 있고 새 사용자를 생성할 수 있지만, Ultimate 라이선스가 있는 최상위 그룹이 하나뿐인 경우. 이 경우 새로운 고유 사용자는 Ultimate 라이선스가 있는 공통 그룹에 액세스할 수 없으므로 이 그룹의 구성원인 단일 사용자를 사용해야 합니다.
이 경우, test user는 환경 변수 GITLAB_USERNAME 및 GITLAB_PASSWORD의 자격 증명을 사용하여 초기화됩니다.
또한, 테스트 사용자에게 미리 구성된 개인 액세스 토큰을 제공하려면 GITLAB_QA_ACCESS_TOKEN 변수를 설정할 수 있습니다.
관리자 없는 환경#
특정 환경에는 관리자 사용자가 없고 새로 생성할 수도 없을 수 있습니다.
이러한 환경에서 실행할 때 테스트가 작동하려면, 단일 사용자 사용 섹션에서 언급된 환경 변수를 통해 테스트 사용자를 구성해야 합니다.
또한, 테스트 프레임워크가 관리자 사용자를 초기화하려는 시도를 방지하려면 환경 변수 QA_NO_ADMIN_ENV를 true로 설정해야 합니다.
추가 테스트 사용자#
관리자 없는 환경이나 사용자 생성을 허용하지 않는 환경에서 테스트가 실행되는 경우, 테스트에서 미리 구성된 두 번째 사용자를 사용할 수 있습니다.
이 사용자의 자격 증명은 GITLAB_QA_USERNAME_1 및 GITLAB_QA_PASSWORD_1 환경 변수를 사용하여 구성해야 합니다.
사용자 인스턴스는 QA::Runtime::User::Store.additional_test_user 메서드를 사용하여 액세스할 수 있습니다.
이 메서드는 또한 사용자 생성을 허용하는 환경에서는 미리 구성된 사용자에 의존하지 않고 새로운 고유 사용자를 생성하도록 보장합니다.
이메일 인증 비활성화#
계정 이메일 인증은 의심스러운 활동이 감지되면 사용자 계정을 잠급니다.
계정이 잠긴 후, 사용자는 GitLab에 로그인하기 위해 신원을 확인하거나 비밀번호를 재설정해야 합니다.
이 기능은 기본적으로 비활성화되어 있으며, 애플리케이션 설정 API를 사용하여 require_email_verification_on_account_locked 속성을 활성화할 수 있습니다.
이메일 인증을 비활성화하면 인스턴스의 모든 사용자에 대해 이메일 인증이 비활성화됩니다.