如何在一个测试类中为某些测试创建单独的种子? PHPUnit文档包含此示例
<?php
require_once 'PHPUnit/Extensions/Database/TestCase.php';
class DatabaseTest extends PHPUnit_Extensions_Database_TestCase
{
protected function getConnection()
{
$pdo = new PDO('mysql:host=localhost;dbname=testdb', 'root', '');
return $this->createDefaultDBConnection($pdo, 'testdb');
}
protected function getDataSet()
{
return $this->createFlatXMLDataSet(dirname(__FILE__).'/_files/bank-account-seed.xml');
}
}
?>
但是在这个例子中,我有一个种子用于我班级内的所有测试。
答案 0 :(得分:3)
我找到了答案。 一种可能的方法是使用setDataSet方法。
示例:
$newSet = $this->createFlatXmlDataSet(dirname( __FILE__ ) . '/_files/members.xml');
$this->getDatabaseTester()->setDataSet($newSet);
$this->getDatabaseTester()->onSetUp();
如果你把它放在你的测试功能中,它会将默认种子重置为你需要的任何其他种子。