Selenium의 목적은 UI 기반 통합 테스트 를 작성하는 것입니다 .
통합 테스트는 함께 배포 할 때 시스템의 모든 구성 요소가 올바르게 작동하는지 확인합니다. 통합 테스트는 충분한 테스트 전략이 아니며 단위 테스트 및 승인 테스트 와 같이 다른 초점을 가진 다른 테스트 전략을 보완 합니다.
UI 기반 테스트는 본질적으로 취약하지만 Selenium과 Watir는 초기 기록 및 재생 도구 에서 한 단계 업그레이드되었습니다 . 이 문제를 해결하는 방법은 여러 가지가 있습니다. 다음은 세계적 수준의 전문가들이 제공하는 조언입니다.
이 유형의 테스트에서 모든 테스트 범위를 확보하려고 시도하지 마십시오 . Robert C. Martin 은 통합 테스트에 의한 코드 범위는 약 20 % 여야한다고 주장합니다 . 입력이 여러 애플리케이션 계층에서 떨어져있을 때 모든 실행 경로를 테스트하는 것은 비현실적입니다.
단위 및 합격 시험에서 대부분의 시험 범위를 확보하십시오 . FinnNk 의 답변 에서 Gojko Adzic의 기사에 대한 링크를 찾으십시오 . Adzic은 수용 테스트 및 우회 UI를 통한 비즈니스 로직 테스트에 대해 반복적으로 주장했습니다.
그러나 일부 UI 기반 테스트는 여전히 작성해야합니다 . 여기에는 "UI를 통해 비즈니스 로직을 테스트하지 마십시오"외에도 실용적인 조언이 필요합니다. 내가 권하고 싶습니다 패트릭 윌슨 - 웨일스의 블로그를 시작 지점으로.