Table of Contents
퓨어 테스트는 코드의 변경 없이 일관성 결과를 생성하는 테스트입니다. 그들은 연속 통합 (CI) 프로세스 및 지연 개발 주기에서 하향 신뢰를 할 수 있습니다. 실제 기술을 구현하는 것은 이러한 신뢰할 수 없는 테스트를 식별하고 수정할 수 있으며, 안정적이고 신뢰할 수있는 CI 파이프라인을 보장합니다.
Flaky 시험 식별
첫 번째 단계는 반복 실행을 통해 순항 시험을 감지하는 것입니다. 다른 환경 또는 구성에서 동일한 테스트 여러 번 실행하면 불명한 결과를 확인할 수 있습니다. 자동화 된 도구는 순항 패턴을 식별 할 때 테스트 결과를 추적하는 데 도움이 될 수 있습니다.
Flaky Tests 수정을 위한 전략
일단 확인되면, flaky 테스트는 몇 가지 전략을 포함한다 :
- 테스트를 해소: 외부 요인이 결과에 영향을 미치는지 결정하기 위해 테스트를 독립적으로 실행합니다.
- Review test Dependencies: variability를 일으킬 수 있는 공유된 상태 또는 외부 시스템에 의존하지 않는 것을 보증합니다.
- 사용의 모조와 스텁:]가 아닌 예측을 제거하기 위해 제어된 응답으로 외부 통화를 대체합니다.
- Implement retries: inherently unstable 인 시험을 위해, retries는 실패를 진짜로 확인할 수 있습니다.
- 시험 안정성: 타이밍 문제 또는 인종 상태를 줄이기 위한 재검사.
예방을위한 모범 사례
flaky 테스트는 그들이 발생한 후에 그(것)들을 고치는 것이 바람직합니다. 시험 independence를 유지하고, 외부 시스템에 의존을 피하고, 통제한 환경에 있는 실행 시험과 같은 제일 연습을 설치하십시오. 정기적으로 검토하고 새롭게 하는 시험은 또한 그들의 신뢰도를 유지합니다.