【问题标题】:Is there a way to tell whether there are failures in my PHPUnit test case from tearDown()?有没有办法从 tearDown() 判断我的 PHPUnit 测试用例中是否有故障?
【发布时间】:2011-12-06 22:13:58
【问题描述】:

在 PHPUnit 中检查我的测试执行是成功还是失败的最佳方法是什么?

我正在尝试为我的 Selenium 窗口截屏,但前提是我的测试失败了。我试过在onNotSuccessfulTest() 中截屏,但如果我总是在tearDown() 中关闭我的窗口(我应该这样做),那么在我的onNotSuccessfulTest() 函数中没有会话可以截取屏幕截图。

我正在考虑的解决方案是在tearDown()中检查测试是成功还是失败,确定是否截屏。

我正在使用 PHPUnit 3.6 [审查为 9.5] 和 Facebook's php-webdriver,据我所知,我没有变量 $captureScreenshotOnFailure

想法?

【问题讨论】:

    标签: selenium phpunit


    【解决方案1】:

    您可以查看getStatus()的返回值,并在您想要的条件下进行截图。

    protected function tearDown() {
        $status = $this->getStatus();
        if ($status == PHPUnit_Runner_BaseTestRunner::STATUS_ERROR 
                || $status == PHPUnit_Runner_BaseTestRunner::STATUS_FAILURE) {
            // take a screenshot...
        }
    }
    

    请参阅runBare(),了解根据测试方法抛出的异常设置状态的位置。您可能还想为跳过的测试截取屏幕截图。

    【讨论】:

      猜你喜欢
      • 2012-09-18
      • 1970-01-01
      • 2011-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-18
      • 2011-07-24
      • 1970-01-01
      相关资源
      最近更新 更多