我正在使用PHPUnit和Laravel 5来功能测试我的API端点。
当我的笔记本电脑连接到互联网时,我注意到我的测试非常慢!所以我认为这可能是导致这种延迟的DNS查找。
我需要PHPUnit Bridge来模拟DNS,但由于缺少文档,我不知道要在参数中传递什么以模拟我的API的子域api.insa.dev
。
这是我目前在TestCase
班级setUp()
功能中所拥有的内容:
\Symfony\Bridge\PhpUnit\DnsMock::withMockedHosts([
'insa.dev' => [
[
'ip' => '127.0.0.1',
// ... ?!?!?
],
],
]);
答案 0 :(得分:2)
我认为要使其正常工作,首先需要在DnsMock类上调用register
方法。
\Symfony\Bridge\PhpUnit\DnsMock::register(App\ClassBeingTested::class);
然后,要模拟子域,只需将其直接放在模拟主机中:
\Symfony\Bridge\PhpUnit\DnsMock::withMockedHosts([
'api.insa.dev' => [
[
'ip' => '127.0.0.1',
// ... ?!?!?
],
],
]);