파이어맨 이야기

어떻게 좋은 종단간 테스트를 만드는가? 

(What Makes a Good End-to-End Test?)



End to End는 전체 시스템에 대한 버그를 찾을 수 있습니다. 단위 테스트나 통합테스트뿐만 아니라 End to End 테스트도 시스템의 안정성을 위해서 중요합니다. 
그러나, 단위 및 통합테스트보다 End to End 테스트는 비용이 더 비싸고, 시간이 오래걸립니다. 그래서 종단간(End to End) 테스트는 신중하게 고려하여 최선의 방법을 선택해야합니다.


[단순한 모바일 로그인]




End to End 테스트 효율성을 위해서 신뢰성, 동시성문제, API호환성등에서 평가 될 수 없는 시스템 측면에 초점을 맞추어야 한다
- 하나의 중요한 유스케이스에 따라, 대응하는 End to End 테스트가 있어야 한다. 총 종단 수는 작게 유지한다. 
- 사소한 UI 및 의존성 문제에 대한 End to End 테스트 안정성을 위해서 분기별 1주는 할당을 준비한다. 
- 특정 구현에 보다는 전체 시스템에 대해 검증에 초점을 맞춘다.
- 스크린샷, 데이터베이스스냅, 로그파일등의 테스트 시스템 상태정보를 보존함으로써 디버깅(debug)를 쉽게 만듭니다.

End to End 테스트 주의사항 
- 다른 팀에서 보유한 시스템에 의해서 예상치 못하게 테스트를 중단하는 경우는 전체 유지보수 비용은 증가하지만, 호환되지 않는 변경 사항에 대해서 확인할 수 있습니다. 
- 양 종단을 완전히 분리하는 것은 어렵고 시험이나 제조시스템에 의해서 변경될 수 있습니다. 가능한 임시 테스트 데이터를 유지가 필요합니다. 
- 시간이 지남에 따라 여러 종속성을 가진 Test Doubles(fakes or stubs)로 유지보수 부담이 늘어나지만 이러한 Multiple Test Doubles(fakes or stubs)은 필요합니다.

링크 : https://testing.googleblog.com/2016/09/testing-on-toilet-what-makes-good-end.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+blogspot/RLXA+(Google+Testing+Blog)


공유하기

facebook twitter kakaoTalk kakaostory naver band