【发布时间】:2011-12-15 22:30:19
【问题描述】:
我已经安装了 PHPUnit3.6.2 并尝试运行简单的测试。 如果测试成功,则没有问题:phpunit 报告测试正常。 但是如果测试中有任何错误,PHPUnit 会报告 NOTHING!没有失败和错误文本,test.php 中没有行,只是空行。
如果有帮助:在浏览器代码中以 getLocation() 方法结尾。但是我在测试中没有使用这种方法。
为什么会这样?
我还应该补充一点:如果在测试中使用了一些元素,这些元素不会出现在网页上(例如带有错误 x 路径的按钮)。并且在测试中有这个按钮的动作:
$this->clickAt("wrong x-path");
phpunit 也不显示错误报告。它继续运行。看起来它找到了这个按钮并点击了它。但是页面上没有这样的按钮。
没有错误,没有失败,测试没有停止......
【问题讨论】:
-
检查事项:a) 是否存在致命错误? b) 你打电话给
exit()? c) 测试真的成功了吗?粘贴测试运行的完整输出(包括 PHPUnit 版本、时间和断言计数)对您很有帮助。 -
除了已经问过的问题:您是否将错误报告设置为最大值并在您的 php.ini 中打开显示错误,因为您遇到了解析器错误
-
a) 是否存在致命错误? - 此测试中没有致命错误。 b) 你在调用exit() 吗? - 我为什么要调用exit()? c) 测试真的成功了吗? - 这个测试是成功的,但是我添加了一个断言,这是错误的,因为我想检查安装的 phpunit 的正确工作。在另一台计算机上,此测试运行正确并且 phpunit 显示失败:“boolean:true is false”。我的 php.ini 中的错误报告:error_reporting = E_ALL & ~E_DEPRECATED
-
b) 如果您在代码或测试中调用了
exit(),PHPUnit 将退出而不打印摘要。你不应该打电话给exit()——只是检查你是否打电话。同样,PHPUnit 的完整输出将帮助我们帮助您。 -
对不起,但我不明白你问我的“PHPUnit 的完整输出”……你能解释更多吗?我在哪里可以得到它?因为经过测试我只能在 PHPUnit 报告中看到空字符串。
标签: selenium phpunit logging report