입문자로써 셀레늄을 처음 접했을 때, 셀레늄은 뭐랄까 사람을 좀 헷갈리게 만드는 것같습니다.
셀레늄 다운로드 사이트에 나열된 Selenium Core, Selenium RC, Selenium IDE, Selenium Grid 등등을 보면서 뭐부터 다운받아야하는지 고민이 됩니다. 저는 다행히 이 단계는 지났습니다. ^^;
또하나 아리까리한 것이 있습니다. html로 테스트할지, java 코드로 테스트할지.
셀레늄 IDE는 테스트케이스를 HTML로도 만들어주고 Java 코드로도 만들어줄 수 있습니다. 그래서 어떤 포맷으로 테스트케이스를 만들지 또 고민해야합니다.
좀 고민하다가 HTML기반 테스트케이스와 Java(JUnit) 기반 테스트케이스를 간단히(정말 간단히) 비교해봤습니다.
HTML 기반 테스트
- 일반 사용자가 이해하기가 쉽다.
- 약간의 교육으로 테스트케이스를 쉽게 작성할 수 있다.
- 컴파일이 필요없다.
- 특별한 툴없이 HTML을 직접 수정할 수 있다. 그러나 셀레늄IDE를 통해 편집하는게 편하다.
- 조건에 따라 명령어를 동적으로 수행하는 등의 프로그램적 요소가 부족하다.
- FireFox를 지원하지 않는 웹사이트의 경우 테스트케이스 작성이 어렵다.(셀레늄IDE는 firefox만 지원)
- selenese Ant 타스크를 통해 자동으로 테스트스위트를 실행할 수 있다.
자바(JUnit) 기반 테스트
- 이클립스와 같은 개발도구의 기능을 충분히 이용할 수 있다.
- 조건에 따라 동적으로 테스트 흐름을 조작할 수 있다.
- 공통적인 부분을 뽑아내기가 좋다.
- 컴파일이 필요하다.
- 이클립스에서 바로 실행가능하다. 초록막대.
셀레늄IDE가 생성해주는 자바코드의 품질이 떨어진다. - 셀레늄IDE가 생성해준 자바코드는 JUnit 3.x 기반이다.
- verify나 assert 실패시 자동으로 화면을 캡쳐하는 등 기능을 추가할 수 있다.
- 테스트 메소드 하나씩 실행시마다 브라우저 open/ close를 반복하므로 상대적으로 느릴 수 있다.(개선방법 있음)
- junit Ant 타스크를 통해 자동으로 실행할 수 있다.
이 글은 스프링노트에서 작성되었습니다.
'Build&Deploy' 카테고리의 다른 글
[Ant] 프로퍼티 오버라이딩? (3) | 2009.10.13 |
---|---|
[셀레늄] Selenium JUnit TestCase 개선 (0) | 2009.04.24 |
[셀레늄] assertAlertPresent 오류 및 대안 (0) | 2009.04.20 |
[셀레늄] verify와 assert의 차이점 (1) | 2009.04.20 |
[셀레늄] 최신 브라우저 별칭 (0) | 2009.04.20 |