🔍QA & TEST/💻Selenium with Python

[코멘토 실무PT 후기 챌린지_QA 테스트 자동화 구축하고 QA 실무 역량 퀀텀 점프하기 : Selenium with Python 강의 2주차 후기]

siwoobyeol 2024. 3. 29. 00:26
😀 네이버 블로그에 작성했던 후기
📅 온라인 라이브 수업 : 2024.02.20 PM 20시 ~ 23시
📍 복습 vod 시청 : 2024.02.23 ~ 24

 

시작 전, 궁금했거나 알고 싶었던 내용

1. JAVA의 예외처리와 차이점

2. HTML 진행 시 domtree 안내까지 진행되는지?

3. 개발자도구 진행 시 각 탭 메뉴 소개가 진행되는지?

학습내용

1. 예외처리

2. Pyhton 모듈 이해하기

3. 웹 페이지 이해하기 (HTML, 개발자 도구)

4. Selenium과 Web Driver 설치하기

5. Web browser 조작하기


예외 처리

웹 자동화 테스트를 위해 작성한 테스트 스크립트는 작성한 그대로 100% 정상 동작하지 않고 멈출 수 있다.

오류가 발생하는 경우 스크립트는 발생 시점에서 코드 실행이 멈추게 되는데, 이때 멈추지 않고 다음 코드를 진행하기 위해서 꼭 필요하다.

try:
    실행하려는 동작
except Exception as e:
    실패했을때 동작

* Exception 자리는 에러 명을 작성해도 되지만, 에러명으로 작성하는 경우 해당 에러 발생한 경우만 예외처리가 적용된다.

다른 에러가 발생하는 경우 발생 시점에서 코드는 실행을 멈춘다.

 

 

모듈

모듈이란, 하나 이상의 기능을 가진 코드를 말한다.

  • 모듈 안에는 함수, 변수 등이 정의될 수 있다.
  • 모듈은 내가 만든 .py파일 또는 다른 사람이 만든 .py 파일이 될 수도 있고, 2가지를 합친게 될 수도 있다.
  • 모듈은 내장 모듈과 외장 모듈로 나뉜다.

https://pypi.org/ : pypi에서 다양한 모듈이 공유되고 있다.

내장 모듈

Python에 통합되어 있는 기본 모듈로써, Python설치 시 함께 설치되어 import 명령어로 바로 사용이 가능하다.

ex) time, random 등의 모듈이 있다.

외장 모듈

내장모듈과 반대

Python이 기본으로 제공하지 않는 모듈로써, pip install 명령어를 통해 설치 후 import 명령어로 사용이 가능하다.

ex) selenium, requests, pyautogui 등의 모듈이 있다.


웹 페이지 이해하기

HTML

Hyper Text Markup Language의 약자이며, 웹 페이지의 가장 기본적인 구성 요소이다.

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>타이틀</title>
    <body>
    </body>
    </head>
</html>

- tag의 종류는 다양하다.

- <a> or <img> 태그에서 사용되는 href or src는 속성이다.

개발자 도구

F12 또는 Ctrl + Shift + i 단축키 사용 시 접근할 수 있다.

Elements 메뉴에서 웹 페이지의 구조를 볼 수 있다.

inspection 마우스 포인터 버튼을 선택 (단축키 : Ctrl + Shift + c) 후 웹 페이지에서 임의의 영역을 선택하면 해당 영역이 어떤 tag로 만들어진 것인지, 속성은 어떤 것을 사용하는지 확인할 수 있다.

 

Selenium

웹 자동화 테스트에서 가장 많이 사용되는 자동화 라이브러리 중에 하나이다.

다양한 프로그래밍 언어와, os 그리고 브라우저를 지원하며, 오픈소스로 무료로 사용이 가능하다. (기능 제한 없음)

 

웹 드라이버

selenium으로 브라우저를 자동화 할 때 사용하는 드라이버로 브라우저를 제어할 수 있게 해 준다.

웹 드라이버는 웹 브라우저의 버전과 동일한 것을 사용해야 오류 없이 사용 가능하다.

웹 드라이버 관리

1. 수동관리 :. py파일과 웹 드라이버. exe파일이 같은 위치에 있어야 한다.

2. 자동관리 : selenium ver 4.0.0 이상 지원

2-1. pip install webdriver_manager : 자동으로 버전을 관리해 주는 모듈 설치

2-2. selenium ver4.6.0 이상의 경우는 관리가 필요 없다. (알아서 해줌)

from selenium impert webdriver >>> selenium의 webdrvier를 불러와서

driver = webdriver.chrome() >>> driver변수에 크롬 웹드라이버를 설정한다. (비어있는 크롬 열림)

강의 후기

1. 수강생들의 이해 여부 체크를 하며 진행되어 좋았음

2. Deep하지 않아 부담 없고 어렵지 않고 간략하게 이해하기 쉽게 설명해 주심

3. 개발 강의 수준의 강의는 아니어서 빠르게 진행되는 느낌이 들었음

 

 

현직자의 라이브 세션과 피드백, 실무PT업계 선배에게 실무 노하우를 배우고 내 실무에 적용해 성과를 만들어보세요.