위키득계정 ↗
기술

Aioresponses

Aioresponses기술
분류
비동기 HTTP 모킹 라이브러리
연동 대상
aiohttp ClientSession
적용 방식
데코레이터와 컨텍스트
응답 구성
고정값과 콜백 및 예외
Aioresponses는 Python aiohttp의 비동기 HTTP 요청을 시험용 응답으로 대체하는 라이브러리다. 상태 코드와 본문, 헤더 및 예외를 구성해 비동기 클라이언트의 동작을 확인한다.

비동기 요청의 시험

실제 서버에 의존하지 않고 aiohttp 세션의 요청에 모의 응답을 제공한다. JSON 본문과 헤더를 지정하고 요청이 기대한 인자로 호출되었는지도 검사할 수 있다. 다른 HTTP 클라이언트를 사용하는 코드까지 같은 방식으로 포함되는 것은 아니다.

연속 호출과 재시도

같은 주소에 여러 응답을 순서대로 등록하거나 특정 응답을 반복하도록 설정할 수 있다. 일시적인 실패 이후 성공하는 흐름과 계속 실패하는 흐름을 구분해 구성하는 데 쓰인다. 반복 횟수는 시험하려는 재시도 정책과 맞아야 한다.

예외와 통과 요청

상태 코드 응답 외에 예외를 발생시키거나 콜백으로 응답을 결정할 수 있다. 일부 요청을 실제 서버로 통과시키는 설정도 제공한다. 모킹에서 제외한 요청에는 실제 통신이 발생하므로 격리된 시험인지 통합 시험인지 범위를 명확히 한다.

관련 문서

WebMock / RESPX / Responses Python 라이브러리 / HTTP