day_by_day

playwright python page 객체 expect_ method 정리 + set_input_files()와 비교 본문

QA Automation/pytest-playwright

playwright python page 객체 expect_ method 정리 + set_input_files()와 비교

kokorii_ 2025. 1. 5. 10:00

공식문서 읽기

https://playwright.dev/python/docs/api/class-page#page-wait-for-console-message

요약

메서드 기다리는 이벤트 주로 적용하는 경우
expect_navigation() 네비게이션 (URL 변경) 페이지 이동
expect_request() 요청 발생 특정 API 호출 감지
expect_response() 응답 반환 특정 응답 확인
expect_request_finished() 요청 완료 요청이 완료될 때까지 대기
expect_popup() 팝업 창 열림 새 탭/팝업 창 테스트
expect_download() 파일 다운로드 시작 파일 다운로드 기능 테스트
expect_console_message() 콘솔 메시지 출력 디버깅 또는 JS 오류 메시지 테스트
expect_file_chooser() 파일 선택 대화상자 열림 파일 업로드 테스트
expect_event() playwright 이벤트 발생 페이지 로드, 닫힘 이벤트 대기
expect_websocket() 웹소켓 열림 실시간 통신 테스트
expect_worker() 웹워커 생성 백그라운드 스크립트 테스트

메소드 선택 기준

 네트워크 요청 감지: expect_request, expect_response, expect_request_finished

파일 처리: expect_download, expect_file_chooser

UI 상호작용: expect_popup, expect_console_message

실시간 통신: expect_websocket

백그라운드 작업: expect_worker

set_input_files() 와 expect_file_choose()의 차이

특징 set_input_files() expect_file_chooser()
사용 목적 파일 input에 직접 파일 설정 파일 선택 대화상자 시뮬레이션
파일 선택 대화상자 대화상자 열지 않음 대화상자가 열리고 파일을 선택하는 과정을 테스트
적용 시나리오 빠르게 파일 업로드 기능만 테스트 파일 선택 대화상자가 열리는 UX 테스트
사용 방식 직접 파일 경로 설정 파일 선택 대화상자를 기다린 후 파일 설정
유연성 간단하고 빠름 파일 선택창 동작 확인 가능

 

expect_file_chooser()는 직접 파일테스트를 테스트하는 tc에 적용하고 set_input_files()는 happy_path 적용이 필요할때 사용하는게 적절하지 않을까?