使用我的laravel应用程序,我有一堆迁移和db种子数据.在app/config/testing/database.php
我已经为测试MySQL数据库.
我使用migrate
和db:seed
命令填充了测试数据库,指定了测试环境.
这很好用,但我想每次运行时调用这些命令phpunit
.如果它在setUp中执行,则只需在每次测试时调用它.
我也可以在setUpBeforeClass
更好的情况下调用它,但如果我测试10个类,则更长.
当我跑步时,有没有一种方法可以让它完成一次phpunit
?
现在我已经在tests/TestCase.php中完成了这个
class TestCase extends Illuminate\Foundation\Testing\TestCase {
public static $setupDatabase = true;
public function setUp()
{
parent::setUp();
if(self::$setupDatabase)
{
$this->setupDatabase();
}
}
public function setupDatabase()
{
Artisan::call('migrate');
Artisan::call('db:seed');
self::$setupDatabase = false;
}
....
Run Code Online (Sandbox Code Playgroud)
这似乎工作,但感觉不理想,但意味着我可以轻松重新设置数据库,如果我需要重置它进行测试...
归档时间: |
|
查看次数: |
2158 次 |
最近记录: |