【问题标题】:PHPUnit does not report on Not Successful TestPHPUnit 不报告未成功测试
【发布时间】: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


【解决方案1】:

您在谈论 Selenium 测试。 getLocation() 在格式化故障报告时由 PHPUnit 调用(以显示发生故障的 URL)。您应该尝试一些简单的(非 Selenium)PHPUnit 测试以查看故障/错误报告是否在那里有效,因此您可以将其范围缩小到 Selenium 或 PHPUnit 本身。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-15
    • 1970-01-01
    • 2013-06-19
    • 2012-01-13
    • 2015-12-25
    • 2015-06-24
    • 1970-01-01
    • 2020-10-19
    相关资源
    最近更新 更多