> 백엔드 개발 > PHP 튜토리얼 > Laravel 테스트에서 단순화 된 HTTP 응답 조롱

Laravel 테스트에서 단순화 된 HTTP 응답 조롱

Emily Anne Brown
풀어 주다: 2025-03-12 17:09:24
원래의
493명이 탐색했습니다.

Laravel 테스트에서 단순화 된 HTTP 응답 조롱

Laravel은 간결한 HTTP 응답 모의 구문을 제공하여 HTTP 상호 작용 테스트를 단순화합니다. 이 접근법은 테스트 시뮬레이션을보다 직관적으로 만들면서 코드 중복성을 크게 줄입니다.

기본 구현은 다양한 응답 유형 단축키를 제공합니다.

 Illuminate \ support \ Facades \ http를 사용하십시오.

http :: 가짜 ([
    'google.com'=> ​​'Hello World',
    'github.com'=> ​​[ 'foo'=> 'bar'],
    'forge.laravel.com'=> ​​204,
]);
로그인 후 복사

이 구문은 포괄적 인 테스트 시나리오에서 잘 작동합니다.

 클래스 apiintegrationTest는 테스트 케이스를 확장합니다
{
    공개 기능 test_service_communication ()
    {
        http :: 가짜 ([
            // 문자열 응답 'api.notifications.com/*'=> '메시지가 보낸',

            // 배열 응답 (JSON으로 변환)
            'api.products.com/*'=> [
                '제품'=> [
                    [ 'id'=> 1, 'name'=> 'laptop'],
                    [ 'id'=> 2, 'name'=> 'mobile']]]
                ]]
            ],,

            // 상태 코드 응답 'api.status.com/check'=> 200,
            'api.deprecated.com/*'=> 410,

            // 관련 엔드 포인트의 다른 응답 유형 'api.orders.com/Active'=> [ 'status'=> 'processing'],
            'api.orders.com/error'=> 400,
            'api.orders.com/message'=> '시스템을 사용할 수 없습니다.'
        ]);

        // 어설 션으로 테스트 $ response = http :: get ( 'api.notifications.com/send');
        $ this-> AsserTequals ( '메시지 보내기', $ response-> body ());

        $ products = http :: get ( 'api.products.com/list');
        $ this-> assertCount (2, $ products [ 'products']);

        $ status = http :: get ( 'api.status.com/check');
        $ this-> asserttrue ($ status-> success ());
    }
}
로그인 후 복사

이 간결한 구문은 테스트를 읽을 때의인지 부담을 줄임으로써 테스트 유지 관리 가능성을 크게 향상시켜 HTTP 모의 세부 사항보다는 비즈니스 논리에 집중할 수 있습니다.

위 내용은 Laravel 테스트에서 단순화 된 HTTP 응답 조롱의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿