2013-07-23 24 views
1

如何在没有IDE或xdebug的情况下调试PHPUnit测试? PHPUnit缓冲所有输出的事实似乎意味着我必须使用调试器或IDE,或者使用$this->expectOutputString + print_r()(或其他)和一堆评论(因为exepcts断言最后得到评估,所以我必须将所有的(失败)断言)。调试没有IDE/xdebug的PHP单元

这里最好的做法是什么?

+1

我不知道最佳实践,但是当使用记事本时,我总是使用error_log()来调试 – meda

+0

任何体面的PHP IDE都有PHPUnit /调试支持。为什么你会回到丑陋的print_r或var_dump? –

+1

因为我在教学生。我们学院一开始就有传统的教学方式,尽可能使用裸机,然后让学生发现工具。 – Mystic

回答

0

IMO XDebug + IDE几乎总是调试测试的最佳方式。但是,如果您想在屏幕上使用良好的旧时尚方法进行打印,只需使用stderr输出,而不是标准输出。

例如:

fprintf(STDERR, "Some label\n"); 
fprintf(STDERR, "Array dump: %s\n", var_export($someArray, true)); 

干杯!

+0

如果您正在运行控制台应用程序,您还可以简单地使用ECHO。 –