如何在PHP单元测试的特定时刻避免输出显示?

时间:2016-11-21 16:14:03

标签: php unit-testing redirect stdout

在PHP单元测试中,例如:

class AgentBoardTest extends CommonTestCase
{
    /**
    * @test
    */
    public function display()
    {
        $very_long_string = "..................";
        echo $very_long_string;
    }
}

我不希望将 $ very_long_string 打印到stdout,尤其是在多个函数中多次执行 echo 时。怎么做?

1 个答案:

答案 0 :(得分:0)

基本上,我发现最好的解决方案是使用PHP的本机输出缓冲:

class AgentBoardTest extends CommonTestCase
{
    /**
    * @test
    */
    public function display()
    {
        ob_start();

        $very_long_string = "..................";
        echo $very_long_string;

        ob_end_clean();
    }
}