我試圖在用phpunit編寫一些測試時嘲笑PDO對象,但是我發現它非常複雜,並且找不到太多關於它的文檔。 我創造了這個XML的結構:用phpunit嘲笑PDO
<dataset>
<table name="providers">
<column>id</column>
<column>name</column>
<column>description</column>
<row>
<value>1</value>
<value>provdier_1</value>
<value>phpunit first provider</value>
</row>
</table>
</dataset>
,現在我想查詢providers
表並取回數據,但我只是無法弄清楚如何做到這一點。
我開始嘲笑PDO
對象,但我不明白我該如何使用它以及如何在getConnection()
方法中使用它。 我第一次嘗試,我猜它很遠的正確方式,因爲我很失去了這裏,看起來是這樣的:
class AdProvidersTest extends PHPUnit_Extensions_Database_TestCase
{
public function getConnection()
{
$dsn = 'mydb';
$user = '';
$password = '';
$pdo = $this->getMockBuilder('PDOMock')
->getMock();
return $this->createDefaultDBConnection($pdo, 'adserverTesting');
}
public function getDataSet()
{
return $this->createXMLDataSet('adserverTesting.xml');
}
}
我怎樣才能使連接與'adserverTesting.xml'
文件交互,以及如何能我用下面這幾行查詢:
$ds = new PHPUnit_Extensions_Database_DataSet_QueryDataSet($this->getConnection());
$ds->addTable('adserverTesting', 'SELECT * FROM providers');