김빵디

Selenium 정의 및 한계점 정리 본문

외로운 싸움/Selenium

Selenium 정의 및 한계점 정리

김빵디 2022. 5. 20. 18:06
728x90

Selenium 이란?

웹 애플리케이션을 테스트하는 도구로서 예를들어 버튼을 탭하거나 구조에 내용을 입력하거나 정상인지 확인하는 작업을 할 수 있다. 웹 사이트 텍스트 자동화 및 웹 스크래핑이라고도 하며, 자동화에 매우 널리 사용되는 프레임 워크이다.

 

Selenium WebDriver

브라우저 제어 라이브러리로 모든 주요 브라우저(Firefox, Edge, Chrome, Safari, Opera 등)를 지원하며 파이썬을 포함한 다양한 프로그래밍 언어에서 사용할 수 있다.

 

BeautifulSoup

라이브러리를 사용하여 웹 양식을 추출할 수 있으며, 로그인 양식 추출 및 채우기를 결합할 수 있다.

(참고: https://www.thepythoncode.com/article/extracting-and-submitting-web-page-forms-in-python)

 


파이썬을 선택하는 이유는 더 간단하고 컴팩트하기 때문!

 

애자일 환경에서 개발자는 변경 사항에 대해 신속하게 푸시하는것을 강조한다. 이러한 프런트 엔드를 수정해야되는 모든 변경사항에 대해 크로스 브라우저 테스트를 실행해야한다. Selenium을 사용할경우 테스트를 정의하고 미리 결정된 브라우저에서 테스트 결과를 자동으로 감지할 수 있도록 할 수 있다. 기능 모음을 사용해 웹 페이지와 단계별 상호작용을 만들고 다양한 변경사항에 대해 브라우저의 응답을 평가한다. 

 

▼▼▼▼▼대략적인 흐름▼▼▼▼▼

1. Selenium을 사용할 경우 어떠한 환경에서 사용할 것인지 생각한다.

2. 환경에 따라 진행하여 webDriver와 Keys 클래스를 가져온다.
from selenium import webdriver

from selenium.webdriver.common.keys import Keys

3. get() 메서드를 이용하여 웹사이트를 로드한다.

4. 문자열을 가져올건지 이후의 작업은 자신의 마음대로~~

 

▼▼▼▼▼테스트방법▼▼▼▼▼

1. 창과 프레임 탐색

2. 테스트 중 유휴시간 작업

3. 단위테스트와 통합

 

 

Selenium + Python 테스트 제한사항(한계점)

1. 팝업처리

2. 동적 웹 콘텐츠

3. 모바일 테스트

4. 보안문자

5. 확장성

 

 

Selenium을 이용해서 뭐부터 해봐야할까!

 

 

[참고자료]

https://www.thepythoncode.com/article/automate-login-to-websites-using-selenium-in-python

728x90