본문 바로가기

데브코스/웹 기반 문서 편집기 제작 프로젝트

Selenium과 E2E 테스트

Selenium 이란?

웹 브라우저를 자동으로 제어하고 테스트할 수 있는 오픈소스 자동화 도구

 

기본 기능

  • 실제 브라우저를 열어서 사람처럼 웹 사이트를 조작할 수 있음
  • 자바스크립트로 동적으로 생성되는 콘텐츠도 처리 가능
  • 로그인, 클릭, 스크롤 등 다양한 브라우저 동작 자동화

구성 요소 

 

Selenium Web Driver

  • 브라우저 자동화 드라이버
  • 시중에서 많이 이용되는 여러 가지 브라우저들에 대한 라이브러리 제공

 

Selenium IDE

  • 웹 - 사용자 상호작용을 기록(녹화) 하고 재생하여 테스트 자동화에 활용
  • Chrome 및 Firefox 의 extension 으로 설치 및 이용

 

Selenium Grid

  • 분산 환경을 구성하여 hub 가 요청을 수신, node 들에 테스트 수행을 분배하고 결과 수집
  • WebDriver 스크립트를 다수의 테스트 머신에 병렬 적용하여 테스트를 가속하고 효율화

 

E2E 테스트

  • 종단간 테스트(end-to-end test) 
  • 개발물의 안쪽은 침투하지 않고
  • 입력(경우에 따라서는 사용자 상호작용)으로부터
  • 출력(경우에 따라서는 브라우저의 작동)까지를
  • 사용자 (또는 "클라이언트") 관점에서 테스트 하는 것 

 

필요성

  • GUI 를 포함하는 시스템에서 UI 와 코어 로직의 연결 및 동작 검증
  • 단위 테스트로는 검증이 불가한 사용자 관점의 테스트

🌟 배운 점

Selenium과 E2E 테스트를 통해 사용자 관점에서의 테스트 자동화가 얼마나 중요한지 깨달았다. Selenium은 실제 브라우저를 제어하여 사용자의 행동을 시뮬레이션할 수 있고, E2E 테스트는 전체 시스템의 흐름을 검증할 수 있어 실제 사용자 경험과 가장 유사한 테스트가 가능하다. 특히 복잡한 웹 애플리케이션에서 자동화된 테스트의 중요성을 느꼈고, 이를 통해 버그를 조기에 발견하고 안정적인 서비스를 제공할 수 있다는 점이 인상적이었다. 비록 설정과 유지보수에 시간이 많이 들지만, 장기적으로 보면 서비스 품질 향상에 매우 중요한 도구인 것 같다.

'데브코스 > 웹 기반 문서 편집기 제작 프로젝트' 카테고리의 다른 글

CI-CD 파이프라인 설계  (0) 2025.01.05
AWS(Amazon Web Services)  (0) 2025.01.03
단위 테스트  (0) 2024.12.31
개발 환경 셋업  (0) 2024.12.20
응용 구조 설계  (0) 2024.12.19