【问题标题】:Hide output during PHPUnit test execution在 PHPUnit 测试执行期间隐藏输出
【发布时间】:2015-07-30 07:33:52
【问题描述】:

我的 php 代码中有一些 var_dumps(我明白最后肯定没有,但仍然如此),并且在测试运行时它们会向控制台输出不必要的信息,有没有一种方法可以忽略某些代码执行?

我试过了

/**
 * @codeCoverageIgnore
 */

// @codeCoverageIgnoreStart
print '*';
// @codeCoverageIgnoreEnd

但这只是忽略了覆盖,仍然执行代码。

【问题讨论】:

  • @codeCoverageIgnore 用于忽略代码覆盖率报告中的行,但仍会执行这些行。

标签: php testing phpunit


【解决方案1】:

您可以将 setOutputCallback 设置为无操作函数。效果是抑制在测试或测试类中打印的任何输出。

例如:

namespace Acme\DemoBundle\Tests;


class NoOutputTest extends \PHPUnit_Framework_TestCase {

    public function testSuppressedOutput()
    {
        // Suppress  output to console
        $this->setOutputCallback(function() {});
        print '*';
        $this->assertFalse(false, "Don't see the *");
    }

}

你可以在doc找到一些参考

希望有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-06
    • 1970-01-01
    • 1970-01-01
    • 2018-05-15
    • 1970-01-01
    • 2018-05-05
    • 2012-03-10
    • 2016-08-18
    相关资源
    最近更新 更多