Golang: httptest를 사용하여 HTTP 응답을 가로채고 시뮬레이션합니다.

王林
풀어 주다: 2024-02-09 08:24:33
앞으로
1135명이 탐색했습니다.

Golang:使用 httptest 拦截和模拟 HTTP 响应

PHP 편집자 Zimo는 httptest를 사용하여 Golang에서 HTTP 응답을 가로채고 시뮬레이션하는 방법에 대한 기사를 제공합니다. 이 기사에서는 httptest 패키지를 사용하여 HTTP 요청을 가로채고 단위 테스트 및 기능 테스트에 대한 응답을 시뮬레이션하는 방법에 대해 자세히 살펴보겠습니다. httptest를 사용하면 다양한 시나리오에서 HTTP 응답을 쉽게 시뮬레이션하여 코드의 정확성과 견고성을 테스트할 수 있습니다. 이러한 기술을 익히는 것은 초보자와 숙련된 개발자 모두에게 매우 유용합니다. 다음으로 구체적인 구현 방법에 대해 알아보겠습니다!

질문 내용

골랭에서 모의 ​​테스트에 사용할 수 있는 다양한 도구를 살펴봤지만 이 작업을 수행하기 위해 httptest를 사용하려고 합니다. 특히 다음과 같은 기능이 있습니다.

으아악

내가 읽은 많은 문서에는 클라이언트 인터페이스나 사용자 정의 전송을 생성해야 하는 것 같습니다. 이 기본 코드를 변경하지 않고 테스트 파일에서 응답을 시뮬레이션하는 방법이 있습니까? getresponse 函数中。我可能有错误的想法,但我正在尝试找到一种方法来拦截 http.defaultclient.do(req) 호출에서 내 클라이언트, 응답 및 모든 관련 세부정보를 유지하고 맞춤 응답을 반환하고 싶습니다. 이것이 가능합니까?

해결 방법

클라이언트 인터페이스를 만들어야 할 것 같다는 글을 읽었습니다

이 기본 코드를 전혀 변경하지 마세요

코드를 깔끔하게 유지하는 것은 좋은 습관입니다. 결국에는 익숙해질 것입니다. 테스트 가능한 코드는 더 깨끗하고, 깔끔한 코드는 더 테스트하기 쉬우므로 모의 개체를 허용할 수 있도록 코드를 변경(인터페이스 사용)하는 것에 대해 걱정하지 마세요. .

가장 간단한 코드 형식은 다음과 같습니다.

으아악

테스트는 다음과 같습니다:

으아악

그러나 httptest를 사용하고 싶다면:

으아악

위 내용은 Golang: httptest를 사용하여 HTTP 응답을 가로채고 시뮬레이션합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!