有没有办法让我在出错后继续使用phpunit?例如,我有一个大型测试套件(400多个步骤),我希望如果找不到元素,它不会阻止我的其余脚本继续。
最佳答案
有更好的方法可以做到这一点。您可以只重载一个方法:runtest(),而不是重载每个assert*()方法。它针对每个断言,可以捕获异常:
abstract class AMyTestCase extends PHPUnit_Framework_TestCase
{
public function runTest()
{
try {
parent::runTest();
}
catch ( MyCustomException $Exc ) {
// will continue tests
}
catch ( Exception $Exc ) {
if ( false === strpos($Exc->getMessage(), 'element not found') ) {
// rethrow:
throw $Exc;
}
// will also continue
}
}
}