PHPUnit:强制显示被断言的值

前端之家收集整理的这篇文章主要介绍了PHPUnit:强制显示被断言的值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
PHPUnit测试失败时,会显示实际值和预期值.
但是当测试通过时,不会显示此信息.

如何强制PHPUnit始终显示预期的和实际的断言结果?

由于您最有可能使用$this-> assert …()调用断言,您可以在测试用例中覆盖这些方法.快速示例:
class YourTestCase extends PHPUnit_Framework_TestCase {
    ...
    static private $messages = array();
    ...
    static public function assertSame($var1,$var2,$message = '') {
        parent::assertSame($var1,$message);
        // assertSame() throws an exception if not true,so the following
        // won't occur unless the messages actually are the same
        $success = print_r($var1,true) . ' is the same as '
                 . print_r($var2,true);
        self::$messages = array_merge(self::$messages,array($success));
    }

    static public function tearDownAfterClass() {
        echo implode("\n",self::$messages);
    }
}

当然,tearDownAfterClass()可能不足以适应你的喜好.这与断言失败是不一样的.

猜你在找的PHP相关文章