Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有DBUnit的PHPUnit:初始装置设置失败_Php_Unit Testing_Phpunit_Dbunit - Fatal编程技术网

带有DBUnit的PHPUnit:初始装置设置失败

带有DBUnit的PHPUnit:初始装置设置失败,php,unit-testing,phpunit,dbunit,Php,Unit Testing,Phpunit,Dbunit,我已经为我的一个模块创建了一个数据库测试类。当我尝试运行一个测试用例时,初始的fixture没有设置——测试数据库中的所有表都是空的。下面是我的getDataSet()方法: 我发现getDataSet()方法被调用,因为当我在其中创建语法错误时,测试执行失败。但当我在initial.xml文件中创建错误时,什么也没有发生。似乎根本没有解析initial.xml文件 文件的路径应该是正确的,但是我注意到当我输入一个无效的路径时,同样没有发生任何事情。显然,方法createFlatXMLDataS

我已经为我的一个模块创建了一个数据库测试类。当我尝试运行一个测试用例时,初始的fixture没有设置——测试数据库中的所有表都是空的。下面是我的getDataSet()方法:

我发现getDataSet()方法被调用,因为当我在其中创建语法错误时,测试执行失败。但当我在initial.xml文件中创建错误时,什么也没有发生。似乎根本没有解析initial.xml文件


文件的路径应该是正确的,但是我注意到当我输入一个无效的路径时,同样没有发生任何事情。显然,方法createFlatXMLDataSet()在出现错误时不会引发任何异常。所以现在我不知道它为什么不起作用:(

解决了:结果是没有调用getDataSet(),因为我已经重写了setUp(),并且没有意识到应该从重写的方法体调用parent::setUp()


因此,结论是:如果您要覆盖方法setUp(),则必须始终调用parent::setUp()。

谢谢!为此,我已经用头撞墙好几个小时了!!
    /**
 * @return PHPUnit_Extensions_Database_DataSet_IDataSet
 */
public function getDataSet()
{
    return $this->createFlatXMLDataSet(dirname(__FILE__).'/dataSets/initial.xml');
}