【发布时间】:2020-04-22 06:22:56
【问题描述】:
如何模拟第三方 api 调用。这是从控制器发生的。我在控制器中有这行代码。
public function store(){
$response = $request->post('http://thirdpaty.app/rmis/api/ebp/requests', [
"headers" => [
'Content-Type' => 'application/json',
],
"json" => [
"data"=>1
]
]);
$data = json_decode($response->getBody()->getContents());
$token = $data->token;
// Saving that token to database
}
从我正在做的测试来看
$response = $this->post('/to-store-method');
如何模拟 api 请求。这样在测试中我就不必调用第三个 api 请求了。
我现在正在做
if(app()->get('env') == 'testing'){
$token = 123;
}else{
//Api call here
}
有没有更好的选择来做这个测试
【问题讨论】:
标签: laravel testing mocking phpunit guzzle