我正在为使用 Mojolicious 框架开发的应用程序创建测试用例。我正在测试路由以对进行的 REST 调用做出适当的响应。我使用 JSON 作为服务器和客户端之间的通信方式。为了测试和请求GET
,我使用以下函数POST
DELETE
GET : get_ok()
POST: post_json_ok()
DELETE: delete_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
到控制器的映射是通过
$r->route('/application/instances/system/:id, id => qr/[A-Za-z0-9 ]+/ -> via('put')
->to(controller => 'system', action => 'update_sys');
此路由调用控制器中的update_sys
方法完成的,这system
就是资源的定位方式。