- 개요
- 테스트 수준
- 테스트 모범 사례
- 프론트엔드 테스트 표준 및 스타일 가이드
- 기능 테스트 시작하기
- 불안정한 테스트
- GitLab 파이프라인
- 리뷰 앱
- Rake 작업 테스트
- 엔드 투 엔드 테스트
- 마이그레이션 테스트
- 계약 테스트
- 테스트 결과 추적
테스트 표준 및 스타일 가이드
이 문서는 GitLab 프로젝트의 자동화된 테스트에 대한 여러 가이드라인과 모범 사례를 설명합니다.
이는 thoughtbot 테스트 스타일 가이드의 _확장_으로 의도되어 있습니다. 이 가이드가 thoughtbot 가이드와 모순되는 규칙을 정의하면, 이 가이드가 우선합니다. 어떤 가이드라인은 중요성을 강조하기 위해 동일하게 반복될 수 있습니다.
개요
GitLab은 Ruby on Rails 위에 구축되었으며, 모든 백엔드 테스트에 RSpec를 사용하고, 엔드 투 엔드 통합 테스트에는 Capybara를 사용합니다. 프론트엔드 측에서는 JavaScript 단위 및 통합 테스트에 Jest를 사용합니다.
다음은 자동화된 테스트의 의미와 그 원칙을 이해하기 위해 모두가 읽어야 하는 두 가지 훌륭한 기사입니다:
- Five Factor Testing: 왜 테스트가 필요한가?
- Principles of Automated Testing: 테스트 수준, 테스트 우선순위, 테스트 비용.
테스트 수준
다양한 테스트 수준에 대해 알아보고, 변경 사항을 어느 수준에서 테스트해야 하는지 결정하는 방법을 학습하세요.
테스트 모범 사례
좋은 테스트를 작성하는 방법에 대해 알아야 할 모든 것: 테스트 디자인, RSpec, FactoryBot, 시스템 테스트, 매개변수화된 테스트 등.
프론트엔드 테스트 표준 및 스타일 가이드
좋은 프론트엔드 테스트를 작성하는 방법에 대해 알아야 할 모든 것: Jest, 프로미스 테스트, 스텁 등.
기능 테스트 시작하기
기능 테스트를 시작해야 하는 경우, 백박스 테스트를 최대한 활용하기 위한 일반 가이드라인, 팁 및 트릭을 제공합니다.
불안정한 테스트
불안정한 테스트와 우리가 마주한 다양한 불안정한 테스트의 종류, 그리고 우리가 이에 대해 어떻게 대응하는지에 대해 설명합니다.
GitLab 파이프라인
GitLab 테스트 스위트가 CI 컨텍스트에서 실행되는 방식: 설정, 캐시, 아티팩트, 병렬화, 모니터링.
리뷰 앱
GitLab CE/EE용 리뷰 앱의 설정 방법 및 사용 방법에 대해 설명합니다.
Rake 작업 테스트
Rake 작업을 테스트하는 방법에 대해 알아야 할 모든 것입니다.
엔드 투 엔드 테스트
GitLab QA 테스트 프레임워크를 사용하여 엔드 투 엔드 테스트를 실행하는 방법에 대해 알아야 할 모든 것입니다.
마이그레이션 테스트
마이그레이션을 테스트하는 방법에 대해 알아야 할 모든 것입니다.
계약 테스트
계약 테스트 소개, 테스트 실행 방법, 테스트 작성 방법에 대해 설명합니다.
테스트 결과 추적
테스트 스위트 실행 결과를 추적하는 방법에 대해 설명합니다.