자동화 테스트를 구현하는 것은 그리 어려운 일이 아니다. 다만 자동화 테스트 구현 과정 중에 매우 번거로운 작업이 있는데 그것은 바로 Element를 찾는 것이다.
고유 식별자인 ID, NAME로만 구현된 페이지라면 매우 간단한 작업이지만 일반적인 서비스 페이지는 전혀 그렇지 않다. 상황에 따라서 HTML Tag나 XPATH의 상대 경로를 사용할 때도 있고 Span Text 등을 사용해야 할 때도 있다.
그럼 어떤 방식으로 Element를 식별하는 것이 가장 효과적일까? 이 질문에 답변할 수 있는 매우 흥미로운 실험 결과가 있어 가져와보았다.
이 실험 결과는 동일한 환경에서 40회가량 반복한 결과의 평균치를 나타내고 있다. 따라서 어느 정도 신뢰도가 높아 보인다.
위 실험 결과에서 얻을 수 있는 인사이트가 몇 가지 존재한다.
첫 번째는 의외로 Chrome 브라우저보다 Edge 브라우저에서의 테스트 실행이 더욱 빨랐다는 점이다.
두 번째는 ID를 사용하지 않는 로케이터 유형은 ID를 사용하는 로케이터 유형보다 1~2초 이상 더 소요되었다는 점이다.
이 실험 결과에서는 자동화 테스트 스크립트가 약 50~100개가 있다고 가정하면 2-3분 정도의 실행 속도에 차이가 있다고 설명하고 있다. 테스트 케이스가 많아지면 많아질수록 어떤 로케이터 유형을 선택했는지에 따라 테스트 소요 시간에 큰 차이를 가져올 수 있는 점을 알 수 있다.
위에서 서술했듯 구현된 서비스 페이지에 따라 ID가 존재하는 로케이터도 있고 그렇지 않은 로케이터도 존재할 것이다. 상황에 따라 유기적으로 식별자를 선택하되 식별자의 우선순위를 염두에 두는 것이 중요할 것 같다
https://www.zenq.com/blogs/xpath-or-css-or-id-which-one-to-use/