Иван Антонов Asked:2020-03-26 16:11:20 +0000 UTC2020-03-26 16:11:20 +0000 UTC 2020-03-26 16:11:20 +0000 UTC 如何在 PHPUnit 执行摘要中显示对象内容? 772 在测试中出现错误时,命令行上的 PHPUnit 会打印出一个摘要,如果数据通过了,dataProvider那么它还会显示哪些数据。这适用于数组,但对象已关闭以供查看(参见屏幕截图)。有可能以某种方式解决这个问题吗? php 1 个回答 Voted Best Answer u_mulder 2020-03-26T21:08:19Z2020-03-26T21:08:19Z 最有可能的是,没有也没有提供对象内脏的输出,因为传输的对象可以在其属性中包含其他对象,并且通常对象中对象的嵌套级别不受限制。 此类数据的导出器可以简单地挂起,消耗所有内存。 但是,您可以将自定义错误消息分配给任何断言,并将测试对象的数据放在此消息中。在这种情况下,您可以显示对象的某些特定属性,或者创建一个魔术方法__toString(如果不忙)并确定将对象转换为字符串时将显示什么: // очень приблизительный вариант $this->assertSame(2, $variable, "Значение переменной должно быть равно двум");
最有可能的是,没有也没有提供对象内脏的输出,因为传输的对象可以在其属性中包含其他对象,并且通常对象中对象的嵌套级别不受限制。
此类数据的导出器可以简单地挂起,消耗所有内存。
但是,您可以将自定义错误消息分配给任何断言,并将测试对象的数据放在此消息中。在这种情况下,您可以显示对象的某些特定属性,或者创建一个魔术方法
__toString(如果不忙)并确定将对象转换为字符串时将显示什么: