본문 바로가기

셀레니움5

Playwright vs Selenium Playwright 이 Selenium 보다 더 나은 주요 이유 항목 Playwright Selenium 최신 웹 호환성SPA, 반응형, 최신 프론트엔드 대응이 뛰어남일부 최신 UI 대응 어려움지원 브라우저크롬/파폭/웹킷(사파리)/엣지 등 모두크롬/엣지/파폭/사파리실행 속도빠름 (auto-wait 내장, 멀티 브라우저 기본 병렬화)상대적으로 느림, wait 직접 조절 필요안정성flaky test(랜덤 실패) 현상 적음, 자동대기wait 명시적 추가 필요, flaky 가능성API 구조Modern(체이닝, Promise), 간단함전통적인 WebDriver 방식멀티브라우저크롬, 파폭, 엣지, 웹킷(사파리) 완벽 지원사파리는 맥에서만 부분 지원 병렬/분산 기본 지원, 매우 쉽고 빠름xdist 등 외부 플.. 2025. 7. 27.
셀레니움에서 팝업창 제어 - 2가지 1. 자바스크립트 Alert/Confirm/Prompt(경고/확인/입력) 팝업브라우저의 내장 팝업 (예: alert("메시지"); confirm("확인?"); prompt("입력하세요"))셀레니움의 switch_to.alert로 제어from selenium import webdriverfrom selenium.webdriver.common.by import Byimport timedriver = webdriver.Chrome()driver.get("https://testpage.com")# 팝업 뜨는 액션(예: 버튼 클릭)driver.find_element(By.ID, "btn_alert").click()time.sleep(1) # 팝업 대기# alert 제어alert = driver.switch_to.. 2025. 7. 24.
여러 케이스를 수행시키고 싶을 때의 방법들 사이트에 로그인을 한 뒤, 그 이후 동작을 확인하는 케이스를 분리하고 싶을 때 방법 1: 메인 실행 파일 생성 (권장)main.py 파일을 만들어서 다른 모듈들을 순차적으로 실행:방법 2: 함수 기반 모듈화 (더 효율적)각 파일을 함수로 만들어서 import하여 사용:signin.py 생성 : 로그인 동작 체크 post_login_check.py 생성: 로그인 후 기능을 체크 main.py 생성: 전체 테스트 시나리오 실행방법 3: 배치 스크립트 사용 (macOS/Linux)run_tests.sh 생성:실행 권한 부여 후 실행:권장사항방법 2 (함수 기반 모듈화)를 추천합니다:브라우저 인스턴스를 재사용할 수 있어 효율적디버깅이 쉬움코드 재사용성이 높음각 모듈을 독립적으로 테스트 가능이 방식으로 구성하면 .. 2025. 7. 24.
셀레니움(Selenium)에서 “클릭할 요소”를 찾자 1. 크롬(혹은 Edge 등) 브라우저에서 “소스보기/개발자도구” 활용해당 페이지에서F12(개발자도구) 또는 오른쪽 클릭 → “검사” 실행원하는 버튼/링크/메뉴 위에서 우클릭 → “검사”로 해당 HTML 위치 바로 확인2. 클릭 요소의 “속성”을 확인해야 하는 주요 기준속성/특징예시 (HTML 코드)설명/셀레니움에서 활용 방법id로그인By.ID, "login-btn"class메뉴By.CLASS_NAME, "main-menu-item"nameBy.NAME, "q"텍스트(내용)My TicketBy.LINK_TEXT, "My Ticket"css selectorBy.CSS_SELECTOR, ".btn.btn-primary" 또는 속성 조합xpath모든 요소 가능 (위치, 계층, 속성 등)By.XPATH, "//.. 2025. 7. 24.
셀레니움으로 구현 가능한/불가능한 동작 1. 셀레니움으로 구현 가능한 동작 (주요 예시) 구분 예시 설명 페이지 이동driver.get(url), 링크/버튼 클릭 후 이동클릭/입력버튼/링크/탭 클릭, input/txtbox/tel 입력, radio/checkbox 선택마우스 동작클릭, 더블클릭, 마우스 오버(hover), 드래그앤드롭(Drag & Drop)키보드 입력키 입력(send_keys), 단축키, Enter, Ctrl 등 조합텍스트 추출element.text, attribute, innerHTML 등스타일 확인CSS 속성(value_of_css_property), 색상/폰트/크기 등화면 캡처driver.save_screenshot("file.png")창/탭 제어새창/새탭 열기, 전환, 닫기, 팝업 핸들링Alert 처리자바스크립트 al.. 2025. 7. 19.
반응형