我试图在一些 PHPUnit 测试用例中的每次测试之前重新创建数据库。我正在使用 Laravel 5.3。这是测试用例:
class CourseTypesTest extends TestCase
{
public function setUp()
{
parent::setUp();
Artisan::call('migrate');
Artisan::call('db:seed', ['--class' => 'TestDatabaseSeeder ', '--database' => 'testing']);
}
/**
* A basic functional test example.
*
* @return void
*/
public function test_list_course_types()
{
$httpRequest = $this->json('GET', '/api/course-types');
$httpRequest->assertResponseOk();
$httpRequest->seeJson();
}
public function tearDown()
{
Artisan::call('migrate:reset');
parent::tearDown();
}
}
运行
phpunit
失败并出现错误:
$ phpunit PHPUnit 5.7.5 由 Sebastian Bergmann 和贡献者提供。
E 1 / 1 (100%)
时间:2.19秒,内存:12.00MB
有 1 个错误:
1) CourseTypesTest::test_list_course_types ReflectionException:类 TestDatabaseSeeder 不存在
D:\www\learn-laravel\my-folder-api endor\laravel ramework\src\Illuminate\Container\Container.php:749 D:\www\learn-laravel\my-folder-api endor\laravel ramework\src\Illuminate\Container\Container.php:644 D:\www\learn-laravel\my-folder-api endor\laravel ramework\src\Illuminate\Foundation\Application.php:709 D:\www\learn-laravel\my-folder-api endor\laravel ramework\src\Illuminate\Database\Console\Seeds\SeedCommand.php:74 D:\www\learn-laravel\my-folder-api endor\laravel ramework\src\Illuminate\Database\Console\Seeds\SeedCommand.php:63 D:\www\learn-laravel\my-folder-api endor\laravel ramework\src\Illuminate\Database\Eloquent\Model.php:2292 D:\www\learn-laravel\my-folder-api endor\laravel ramework\src\Illuminate\Database\Console\Seeds\SeedCommand.php:64 D:\www\learn-laravel\my-folder-api endor\laravel ramework\src\Illuminate\Container\Container.php:508 D:\www\learn-laravel\my-folder-api endor\laravel ramework\src\Illuminate\Console\Command.php:169 D:\www\learn-laravel\my-folder-api endor\symfon