簡體   English   中英

PHPUnit與DBUnit:初始夾具無法設置

[英]PHPUnit with DBUnit: initial fixture fails to set up

我為我的一個模塊創建了一個數據庫測試類。 當我嘗試運行測試用例時,初始夾具未設置 - 測試數據庫中的所有表都是空的。 這是我的getDataSet()方法:

    /**
 * @return PHPUnit_Extensions_Database_DataSet_IDataSet
 */
public function getDataSet()
{
    return $this->createFlatXMLDataSet(dirname(__FILE__).'/dataSets/initial.xml');
}

我發現getDataSet()方法被調用,因為當我在其中創建語法錯誤時,測試執行失敗。 但是當我在文件initial.xml中創建錯誤時,沒有任何反應。 似乎文件initial.xml根本沒有被解析!

該文件的路徑應該沒問題,但我注意到當我輸入無效路徑時,沒有任何事情發生。 顯然,方法createFlatXMLDataSet()在出錯時不會拋出任何異常。 所以現在我沒有任何線索為什么它不起作用:(

已解決:事實證明,沒有調用getDataSet(),因為我已經覆蓋setUp()而沒有意識到我應該從overriden方法體中調用parent :: setUp()。

所以結論是:如果你重寫方法setUp(),你總是要調用parent :: setUp()。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM