Php Laravel单元测试-请求后有效负载

Php Laravel单元测试-请求后有效负载,php,laravel,phpunit,Php,Laravel,Phpunit,我需要帮助为Laravel创建一个单元测试用例。它是一个API端点,接受json作为POST负载(而不是POST表单),基本上只是基于json对象在数据库中创建一个条目。API工作正常,但是我在创建单元测试时遇到了问题 控制器代码包含 $request = Request::instance(); $content = $request->getContent(); $inputRequest = json_decode($content); 我不知道如何将有效负载传递到单元测试代码中(

我需要帮助为Laravel创建一个单元测试用例。它是一个API端点,接受json作为POST负载(而不是POST表单),基本上只是基于json对象在数据库中创建一个条目。API工作正常,但是我在创建单元测试时遇到了问题

控制器代码包含

$request = Request::instance();
$content = $request->getContent();
$inputRequest = json_decode($content);
我不知道如何将有效负载传递到单元测试代码中(扩展
illumb\Foundation\Testing\TestCase

有人能帮忙吗

在单元测试中使用laravel提供的方法时,感谢堆

第六个参数$content(String)可用于在测试用例类中传递post有效负载:

$this->call($method, $uri, $parameters, $files, $server, jsonencode($yourdata), $changeHistory);

使用替代方法时,请确保在
$uri
之后添加一个额外数组,签名有点不同,它具有
$wildcards
数组:

Response::action(
字符串$method,
字符串$action,
数组$通配符=数组(),
数组$parameters=array(),
数组$files=array(),
数组$server=array(),
字符串$content=null,
bool$changeHistory=true
)

谢谢,先生,它很有效。我想你是指
json\u encode
而不是
jsonecode
。但是,如果我没有真正设置$files和$server,是否有一种更优雅的方法来调用函数,而不是为这两个函数传递空数组,只是为了访问
$content
?再次感谢