使用数据库进行 Phpunit 测试
我试图把重点放在使用PHPunit进行单元测试上。
我在这里找到了一个非常好的教程 http://blog.nickbelhomme.com/php/phpunit-training-course-for-free_282
但是我错过了一些东西,还不明白该怎么做。
我有一个用户模块,它维护有关用户的所有信息。并且有一个函数保存,它将用户保存在数据库中。所以我有一个测试函数
public function testCanCreateUser()
{
$userData = array(
'userName' => 'User1',
'firstName' => 'Joey',
'lastName' => 'Hendricks',
'email' => 'Joey@hendricks.com',
'password' => 'f$tfe8F'
);
$user = new Model_User($userData);
$user->save();
}
当我第一次运行测试时,这将起作用。由于数据库为空。但是当我第二次运行测试时,它将不起作用,因为我的系统不允许同一用户在数据库中两次。因此,为了做到这一点,我必须在每次运行测试之前重新创建我的testdatabase。最好的方法是什么?
还是这个问题要以不同的方式解决?