brunch

네트워크 요청 처리

일곱 번째.

by 제임스

내 요청에 응답해다오!


Playwright는 네트워크 요청과 응답을 추적하고, 필요한 경우 요청을 가로채거나 응답을 수정할 수 있는 기능을 제공합니다. 이를 통해 외부 서비스에 의존하지 않는 안정적인 테스트 환경을 구성할 수 있습니다.




1. 네트워크 요청 가로채기 및 응답 수정

Playwright는 테스트 실행 중 발생하는 모든 네트워크 요청을 감지하고, 이를 수정하거나 가로챌 수 있습니다.

요청 가로채기

- 특정 요청을 중단하거나 다른 URL로 리디렉션 가능

- 요청 헤더, 파라미터 등을 수정하여 다양한 조건에서 테스트를 실행

응답 수정

- 테스트 중 특정 API의 응답 데이터를 수정하여 예외적인 상황을 시뮬레이션

- 네트워크 장애, 서버 오류 등의 상황을 가상으로 생성


이 기능의 장점은 뭐에요?

• 외부 서비스에 문제가 있거나 응답이 느릴 경우에도 테스트를 안정적으로 수행 가능

• 다양한 테스트 시나리오를 빠르게 생성하여 복잡한 케이스를 검증


2. API Mocking으로 외부 의존성 제거

API Mocking은 외부 서비스의 동작을 시뮬레이션하여 테스트를 독립적으로 수행할 수 있도록 합니다.

Mocking의 주요 역할

- 외부 API에 의존하지 않고 테스트 실행

- 서버 응답 시간에 관계없이 안정적인 테스트 환경 구성

- 특정 데이터를 반환하도록 설정하여 다양한 시나리오를 검증

활용 예

- 사용자 로그인 요청 시, 실제 서버를 호출하지 않고 사전 정의된 응답 반환

- 제품 목록 조회 요청에서 가상의 데이터를 반환하여 테스트 속도 향상


API Mocking의 장점은 뭔가요?

• 개발 중인 API가 준비되지 않은 상태에서도 테스트 가능

• 외부 서비스에 발생할 수 있는 불안정성을 테스트 환경에서 제거




활용 사례

1. 네트워크 요청 추적

• 모든 요청 및 응답의 상태 코드를 확인하고, 문제 발생 시 디버깅 지원

2. 응답 데이터 수정

• 특정 요청에 대해 오류 상태(예: 404, 500)를 반환하여 에러 처리 로직 테스트

3. API Mocking

• 로그인 API를 Mock 처리하여 항상 성공 또는 실패 응답을 반환하도록 설정

4. 외부 서비스 의존성 제거

• 테스트 중 외부 서비스가 비활성 상태일 때도 정상적으로 테스트 실행




복습 및 추가 학습

1. 네트워크 요청 추적

• 특정 API 요청을 추적하여 요청 및 응답 데이터를 출력하는 테스트를 작성해보세요.

2. 응답 수정 테스트

• 특정 API 응답을 가로채서 데이터를 변경하고, 변경된 데이터를 기반으로 테스트를 수행해보세요.

3. API Mocking

• 외부 API를 Mock 처리하여 항상 동일한 응답 데이터를 반환하도록 설정하고, 이를 검증하는 테스트를 작성해보세요.




Playwright의 네트워크 요청 처리 기능은 외부 의존성을 줄이고, 다양한 시나리오를 손쉽게 검증할 수 있도록 지원합니다. 강의에서는 실습을 통해 이러한 기능을 효과적으로 활용하는 방법을 자세히 다룰 예정입니다.



* 강의 영상: 추후 별도 공지

(바로 소식을 받고 싶다면, 설문을 작성해주세요!)


keyword
이전 07화Playwright로 간단한 테스트 작성