Mojolicious 프레임 워크를 사용하여 개발 한 내 애플 리케이션 용 테스트 케이스를 작성하고 있습니다. 나는 REST 호출에 대한 적절한 응답을위한 경로를 테스트하고있다. JSON을 서버와 클라이언트 간의 통신 수단으로 사용합니다. GET
, POST
및 DELETE
요청을 테스트하기 위해 필자는 다음과 같은 기능 POST: post_json_ok()
DELETE: delete_ok()
mojolicious에서 JSON PUT 요청 테스트
GET : get_ok()
를 사용하지만 PUT
위해 나는 put_ok()
을 사용할 수 없습니다입니다. 그리고 put_ok (내 사용)의 예는 my $t = Test::Mojo->new;
$t->put_ok('this/is/url/to/resource'=>{ "element" => "modified value"})->status_is(204)
내가 때마다 (400)와 그래서 테스트가 실패 나쁜 요청 상태를 얻을 수있을 것이다. 내 응용 프로그램 테스트에 Test::Mojo
을 사용합니다.
추가 정보 :
$t->put_ok('http://localhost:3000/application/instances/system/test'=>{"model" => "testing put"})->status_is(204);
이 시도 PUT
요청에 대한 정확한 테스트입니다. model
은 자원 test
의 속성이며 testing put
으로 변경하려고하고 예상 상태 응답은 204
입니다.
컨트롤러에 매핑이 경로는 system
컨트롤러에서 update_sys
메서드를 호출하고 그 자원이있는 방법이다 $r->route('/application/instances/system/:id, id => qr/[A-Za-z0-9 ]+/ -> via('put') ->to(controller => 'system', action => 'update_sys');
하여 수행됩니다.
'put_ok'가 보이지 않습니다. 'get_ok'가 표시됩니다. –
@Bill Ruppert
[이 링크] (https://metacpan.org/module/Test::Mojo)에는 put_ok에 대한 설명이 있습니다. –