我进行了一些测试,其中正在测试的代码输出了一些error_log
信息(因为我也在测试失败,这是预期的)
例如
<?php
Class X {
function dosomething(){
error_log('did it');
return true;
}
}
和测试:
<?php
require_once 'X.php';
class xTest extends PHPUnit_Framework_TestCase {
public function testDo(){
$x = new X();
$this->assertTrue( $x->dosomething(), 'dosomething returns true');
}
}
当在 php_unit 上运行时没有 --process-isolation
给我一个很好的.
和我正在测试的任何东西。
但是,当我运行时, --process-isolation
我得到:
1) test::a with data set #1 'a'
RuntimeException: did it
为什么会这样?我被困在 3.4.12 版本上(对此无能为力),但在更新日志中没有发现任何有趣的内容。
这是一个示例会话:
xxx$ phpunit xTest.php
PHPUnit 3.4.12 by Sebastian Bergmann.
did it
.
Time: 0 seconds, Memory: 4.50Mb
OK (1 test, 1 assertion)
shell return code: 0
xxx$ phpunit --process-isolation xTest.php
PHPUnit 3.4.12 by Sebastian Bergmann.
E
Time: 0 seconds, Memory: 4.50Mb
There was 1 error:
1) xTest::testDo
RuntimeException: did it
FAILURES!
Tests: 1, Assertions: 0, Errors: 1.
shell return code: 2
编辑:我正在搜索“phpunit runtimeexception error_log”,提交后 5 秒它已经是最高搜索结果 :( 那里没有任何内容。
但我来这里是为了编辑并说这个:添加$this->setExpectedException('RuntimeException');
绝对不能抓住这个。同样的结果发生。