Laravel 5.5 PHPUnit不显示说明

时间:2017-12-09 15:33:42

标签: php laravel unit-testing testing phpunit

当我运行phpunit时,显示测试未通过。但它没有告诉我为什么测试没有通过。我附上了两张图片来描述这一点。

以下是我得到的结果:

Failed asserting that actual size 0 matches expected size 1.

我想要一些我喜欢的东西,帮助我指导测试驱动开发:

Failed with a callstack provided

1 个答案:

答案 0 :(得分:0)

您会看到不同的结果,因为您在这里遇到了两类不同的失败:

<强> 1。代码已执行,但您的断言失败。

当PHPUnit获得一些不真实的断言时会发生这种情况,例如:

$this->assertEquals(1, 0);

当发生这种情况时,PHPUnit只会看到你试图比较10 以及PHPUnit对此所知道的一切。它无法告诉您为什么代码失败,因为您有业务逻辑错误,但PHP无法检测到。

<强> 2。您执行的某些代码引发了一个未被捕获的错误或异常。

如果您尝试执行PHP中不允许的操作(例如引用不存在的类),您有运行时错误。在这些情况下,PHP将提供有关错误的更多信息,或提供发生异常的调用堆栈,从而产生更详细的消息。