php - 有没有办法判断在测试中是否将 --debug 或 --verbose 传递给了 PHPUnit?

标签 php phpunit

我正在对使用 CaptureEntirePageScreenshotToString 函数的 PHPUnit 的 Selenium 扩展进行一些重载,并且我只想在传递 --verbose 或 --debug 时打印屏幕截图的路径。

例如, phpunit --debug ./tests

然后在我的代码中的某处(这是伪代码)

if (--debug)
  echo "Screenshot: /path/to/screenshot.png

建议?

最佳答案

没有 PHPUnit 内部 API 可以执行此操作。无法通过测试用例直接访问配置对象。

您不能使用 PHPUnit_Util_Configuration::getInstance(),因为那只是 xml 配置的包装器。

我的建议是只使用:

if(in_array('--debug', $_SERVER['argv'], true)) {
     //Insert your debug code here.
}

相关类:

关于php - 有没有办法判断在测试中是否将 --debug 或 --verbose 传递给了 PHPUnit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12610605/

相关文章:

php - PHPUnit 模拟对象是否可以替换类中创建的对象?

php - 在移动的 WordPress 网站上使用的后备字体系列

PHP session 扩展不考虑全局变量

PHPUnit: 警告: require(PHPUnit/Autoload.php): 无法打开流: 第 42 行/usr/local/bin/phpunit 中没有这样的文件或目录

php - 当我利用 laravel 的 `RefreshDatabase` 特征通过 phphunit 运行数据库迁移时,Laravel 指定一个迁移文件夹

php - 如何将 PHPUnit 与 VSCode 结合使用?

php - 使用 AJAX 提交表单,将表单数据传递给 PHP,无需刷新页面

java - 如何使用 PHP 提供颜色编码的 Java 代码?

php - Doctrine 2 : bi-directional relation, 添加不拥有的实体将不会持续存在

PHPUnit & Selenium - 更新到 3.6.10 版本后,似乎 markTestSkipped 和 markTestIncomplete 调用导致测试出错