티스토리 뷰

etc

웹 테스트 자동화 (Selenium IDE)

keehyun2 2017. 7. 26. 13:32

웹 브라우저에서 특정 패턴을 자동 재실행하는 셀레니움을 소개합니다.

사용하는 방법은 2가지가 있습니다.

  1. Firefox(웹브라우저) 에서 제공하는 셀레니움 플러그인을 사용하여 웹에서 하는 동작들을 레코딩 하고 이를 반복 실행(추가로 flow-control 도 설치 권장)

    • 장점 : 비교적 쉽고 빠르면서 html target 등을 자동으로 찾아줍니다.
    • 단점 : FireFox 에서 밖에 실행되지 않습니다.
  2. 프로그래밍을 통하여 브라우저 제어
    • 장점 : ie, Edge, chrome 등과 같은 다양한 브라우저 제어, 다른 응용 application 과 융합
    • 단점 : html 에서 Target 을 직접 찾아서 입력하는 것이 매우 귀찮은 일입니다.

Selenium IDE

셀레니움 ide 는 Firefox 에서 제공하는 플러그인입니다. 설치 이후에 ide 창을 열려면 [ctrl+alt+s] 단축키를 사용해도 되고, alt > 도구 > selenium ide 를 클릭해서 열면 됩니다.

image of selenium ide

처음에 설치 하면 Untitled TestCase 가 있습니다. 우측 윗부분에 빨간색(녹화버튼) 이 있는데 이를 클릭하여 활성화 시키면 이후에 파이어폭스에서 클릭하거나 입력하는 내용들은 table 에 행동 하나하나 기록되게 됩니다.

기록 이후에는 아래화면 처럼 table 에 row 가 쌓입니다. 이렇게 쌓인 row 를 하나 씩 클릭하고 단축키 x 를 해당 command 만 실행함니다. 성공하면 초록색으로 나오고 실패하면 빨간색으로 나옴니다. 실행시 웹사이트 구조에 따라 에러가 발생할수 있습니다. pause 커맨드가 에러 해결에 도움이 될수도 있습니다.

image of selenium ide

테스트 케이스는 html 형태로 저장되고 다른 pc 에서 그대로 불러 올수도 있습니다.

Export TestCase (Java source)

저장된 TestCase 는 상단의 메뉴를 통해서 프로그래밍 SourceCode(c#, java, python, ruby등) 로 export 할수 있습니다. JAVA 웹 개발자에게 [JAVA / junit4 / WebDriver] 형태로 export 하는게 가장 최선이지 않을까 합니다. 이렇게 export 하면 java 소스가 생성되는데 webdriver 설정과 junit 설정만 조금 해주면 selenium ide 없이 java class 만 있으면 실행가능합니다.

WebDriver

크롬 webdriver (ex.chromedriver.exe ) 는 검색하여 찾을수 있습니다. (firefox,edge,ie등등)

그리고 maven 을 통해서 아래 selenium libaray 를 등록해줍니다.

아래 코드는 제가 chrome webdriver 와 selenium java webdriver libary 를 가지고 만든 샘플입니다.

위와 같이 코딩할때 html tag 를 직접 찾는 작업이 매우 귀찮습니다. 모든 브라우저로 테스트 해봐야하는 경우만 코딩해서 사용하는게 효율적이라고 봄니다. 가장 최선의 방법은 selenium-ide 에서 export 한 java code 를 여기에 응용해서 사용하는게 아닐까 합니다. 

공식사이트 (영문) 의 docuement 에서 더 많은 기능을 확인 할수 있습니다. 저는 webdirver 관련한 document 를 많이 참고하였습니다.

'etc' 카테고리의 다른 글

Building and Using PJSIP  (0) 2017.09.17
멀티 브라우저 제어(Selenium Grid)  (0) 2017.08.04
Regular Expression (ide eclipse 사용)  (0) 2017.06.25
자동 업로드 Window Batch Script (SFTP)  (0) 2017.05.19
bat 프로그래밍  (0) 2016.04.14
댓글
글 보관함
최근에 올라온 글
Total
Today
Yesterday
링크