웹 개발을 하면서 가장 귀찮은 부분이 기능을 테스트하기 위해 수 많은 입력 값들을 넣어야하는 것이었습니다.

그 작업을 대신해주는 많은 방법들이 있지만 저는 Selenium을 사용해봤습니다.

Selenium은 테스트 뿐만 아니라 브라우저에서 일어나는 수 많은 동작을 자동화해주는 도구입니다.

Selenium의 공식 홈페이지


자바나 파이썬 같은 소스에서 자동화 코드를 작성할 수 있지만 이 포스트에서는 가장 기본적인 Selenium-IDE를 이용하여

웹 브라우저에서 실행하는 사용자 동작을 레코딩하여 반복 실행하는 내용을 정리하고자 합니다.


Selenium-IDE를 이용하기 위해서는 Firefox 브라우저가 필요합니다.

그런데 최신 버전의 Firefox 브라우저에서 Selenium-IDE을 사용할 때 문제가 있어 여러 환경에서 테스트해보니

Firefox 50.0.1 버전에서 정상 작동하여 해당 버전을 사용중입니다. (지난 6월 시점에 발생했던 내용입니다.)

해당 버전은 https://ftp.mozilla.org/pub/firefox/releases/50.0.1/ 에서 OS 환경별로 다운받을 수 있습니다.


Firefox 브라우저 설치 후 Firefox 브라우저로 아래 링크로 접속해서 Selenium-IDE를 설치해줍니다.

https://addons.mozilla.org/en-US/firefox/addon/selenium-ide/


Add to Firefox를 누르시면됩니다. 설치가 끝나면 Firefox를 다시 실행해주세요.


다시 브라우저를 실행하면 아래 화면처럼 Selenium IDE가 나타납니다. 실행해주세요.


사용방법은 아주 간단합니다.

테스트 할 사이트에 접속 후 우측 상단의 빨간 버튼을 눌러 행동을 레코드한 후에 다시 같은 버튼을 눌러 종료하면

내가 실행했던 동작들이 하단의 Table에 남게되고 해당 동작들을 자동으로 반복하거나 다른 동작을 추가하여 실행할 수 있게됩니다.



네이버 메인에 접속 후 빨간 버튼을 누른 후 티스토리라고 검색 한 화면입니다.

검색하고나면 Table에 명령들이 추가된 것을 볼 수 있습니다. 그럼 다시 빨간 버튼을 눌러서 레코딩을 종료합니다.

제대로 레코딩이 되었는지 확인해보기 위해서 Fast Slow 우측의 Play entire test suite 버튼을 눌러주세요.

그럼 다시 네이버 메인으로 접속하고 티스토리라는 검색어를 입력 후 검색 버튼을 누르는 동작이 자동으로 실행되는 것을 확인하실 수 있습니다.

하단의 Log도 출력이 되구요. Fast Slow 사이의 스크롤을 조작하여 실행 속도도 조절할 수 있습니다.



그리고 저는 이 기능이 정말 유용한 것 같은데요. 레코드 한 결과를 각종 언어로 된 소스로 Export할 수 있습니다.

저는 주로 Java에서 테스트를 하기에 JUnit WebDriver로 Export후에 반복 로직이나 랜덤 로직 같은걸 좀 더 넣어서 자동화 테스트를 수행하고는 합니다.

Selenium-IDE가 아닌 테스트 소스로 Selenium을 실행하시면 IE, Chrome, Firefox 브라우저 모두

한가지 소스로 테스트가 가능한 점이 장점입니다.



YOUR COMMENT IS THE CRITICAL SUCCESS FACTOR FOR THE QUALITY OF BLOG POST
  1. 2018.04.24 15:30  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다