테스트 표준 및 스타일 가이드

이 문서는 GitLab 프로젝트의 자동화된 테스트에 대한 여러 가이드라인과 모범 사례를 설명합니다.

이는 thoughtbot 테스트 스타일 가이드의 _확장_으로 의도되어 있습니다. 이 가이드가 thoughtbot 가이드와 모순되는 규칙을 정의하면, 이 가이드가 우선합니다. 어떤 가이드라인은 중요성을 강조하기 위해 동일하게 반복될 수 있습니다.

개요

GitLab은 Ruby on Rails 위에 구축되었으며, 모든 백엔드 테스트에 RSpec를 사용하고, 엔드 투 엔드 통합 테스트에는 Capybara를 사용합니다. 프론트엔드 측에서는 JavaScript 단위 및 통합 테스트에 Jest를 사용합니다.

다음은 자동화된 테스트의 의미와 그 원칙을 이해하기 위해 모두가 읽어야 하는 두 가지 훌륭한 기사입니다:

테스트 수준

다양한 테스트 수준에 대해 알아보고, 변경 사항을 어느 수준에서 테스트해야 하는지 결정하는 방법을 학습하세요.

테스트 모범 사례

좋은 테스트를 작성하는 방법에 대해 알아야 할 모든 것: 테스트 디자인, RSpec, FactoryBot, 시스템 테스트, 매개변수화된 테스트 등.

프론트엔드 테스트 표준 및 스타일 가이드

좋은 프론트엔드 테스트를 작성하는 방법에 대해 알아야 할 모든 것: Jest, 프로미스 테스트, 스텁 등.

기능 테스트 시작하기

기능 테스트를 시작해야 하는 경우, 백박스 테스트를 최대한 활용하기 위한 일반 가이드라인, 팁 및 트릭을 제공합니다.

불안정한 테스트

불안정한 테스트와 우리가 마주한 다양한 불안정한 테스트의 종류, 그리고 우리가 이에 대해 어떻게 대응하는지에 대해 설명합니다.

GitLab 파이프라인

GitLab 테스트 스위트가 CI 컨텍스트에서 실행되는 방식: 설정, 캐시, 아티팩트, 병렬화, 모니터링.

리뷰 앱

GitLab CE/EE용 리뷰 앱의 설정 방법 및 사용 방법에 대해 설명합니다.

Rake 작업 테스트

Rake 작업을 테스트하는 방법에 대해 알아야 할 모든 것입니다.

엔드 투 엔드 테스트

GitLab QA 테스트 프레임워크를 사용하여 엔드 투 엔드 테스트를 실행하는 방법에 대해 알아야 할 모든 것입니다.

마이그레이션 테스트

마이그레이션을 테스트하는 방법에 대해 알아야 할 모든 것입니다.

계약 테스트

계약 테스트 소개, 테스트 실행 방법, 테스트 작성 방법에 대해 설명합니다.

테스트 결과 추적

테스트 스위트 실행 결과를 추적하는 방법에 대해 설명합니다.

개발 문서로 돌아가기