브라우저 자동화툴 "Selenium WebDriver"

Selenium 공식 홈페이지 요약 (링크)

Selenium이란?

"Selenium automates browsers"
공식 홈페이지의 설명에 따르면,
Selenium 기능은 이처럼 간단명료. 브라우저를 자동화한다.
브라우저를 자동화할 수 있는 기능으로 무엇을 할 지는 전적으로
사용자에 달려있다고 한다.
기본적으로, 테스트 목적으로 웹 어플리케이션을 자동화할 때 사용되지만,
그 밖에도 웹 기반 관리 태스크를 자동화할 때도 사용될 수 있다고 한다.

제품은 총 2가지 군으로 나뉘고 다음의 기능을 수행한다.
  • Selenium WebDriver
    • 브라우저 기반 리그레션 자동화 테스트를 생성
    • 많은 환경에 스크립트 배포
  • Selenium IDE
    • 버그 재현 스크립트를 빠르게 생성
    • 음... 이건 잘 모르겠다.
      create scripts to aid in automation-aided exploratory testing

Selenium WebDriver
WebDriver를 사용할 때
브라우저들에 대한 테스트가 같은 머신에서 수행되면, WebDriver API만 사용하면 된다.

반면, 아래와 같은 상황에서는 WebDriver API를 Selenium-Server와 같이 사용해야 한다.
  • 같은 머신이 아니라 수많은 머신 또는 VM에 테스트를 배포할 때 사용되는 Selenium-Grid을 사용하는 경우
  • 현재 브라우저에 없는 특정 버젼의 브라우저가 설치된 원격 머신에 연결하고자 할 때
  • Java bindings(i.e. Python, C#, or Ruby)를 사용하지 않고 HtmlUnit Driver를 사용하고자 할 때