🏠 방성범 블로그 > 🌐 웹

셀레늄 가이드

셀레늄 웹드라이버 vs 셀레늄 IDE

인터페이스 학습 난이도 사람이 수행하는 동작 기록 CLI 변수, 함수, 제어문(if, for) 등
셀레늄 웹드라이버 라이브러리 👿 어려움 (프로그래밍 언어 학습 필요) ❌ 미지원 ✔️ 지원 ✔️ 지원
셀레늄 IDE GUI 👼 쉬움 ✔️ 지원 ✔️ 별도 CLI 도구(selenium-side-runner)를 통해 지원 ✔️ 지원

이 글은 셀레늄 IDE를 설명합니다. 셀레늄 IDE는 GUI를 제공합니다. 이와 달리 프로그래밍 언어로 작성된 코드를 통해 조작할 수 있는 라이브러리 형태도 있습니다. 이를 가리켜 셀레늄 웹드라이버라 합니다.

셀레늄 웹드라이버의 경우, 파이썬이나 자바와 같은 프로그래밍 언어를 사용하므로 자유도 높게 웹 브라우저를 조작할 수 있습니다. 반면 비개발자 입장에서는 프로그래밍 언어를 학습하는 것이 부담스럽습니다. 개발자 입장에서도 일일이 코드를 작성하는 것이 번거롭습니다.

반면 셀레늄 IDE는 사람이 웹 브라우저에서 수행한 클릭, 텍스트 입력과 같은 동작을 기록합니다. 비개발자뿐만 아니라 개발자도 편리하게 사용할 수 있습니다.

기록한 동작을 GUI 없이 실행할 수 있도록 별도의 CLI 도구(selenium-side-runner)도 제공합니다. 이를 이용해 기록한 테스트를 주기적으로 실행하거나 또는 젠킨스(Jenkins), 서클CI(CircleCI)와 같은 CI/CD 도구를 이용하여 테스트를 자동화할 수도 있습니다.

셀레늄 IDE는 단순히 웹 브라우저에서 사람이 수행한 동작만을 기록하는 것이 아닙니다. 변수, 함수, 제어문과 같이 프로그래밍 언어처럼 테스트를 작성할 수 있도록 도와주는 고급 기능도 제공합니다. 이를 통해 (프로그래밍 언어만큼 자유롭지는 않지만) 어느 정도 논리적인 동작을 구성할 수 있습니다.