laravel - tearDownAfterClass 中的 laravel phpunit db 连接
问题描述
如何Illuminate\Support\Facades\DB
在函数中调用方法tearDownAfterClass
?我收到错误Call to undefined method Illuminate\Support\Facades\DB::select()
use Illuminate\Support\Facades\DB;
abstract class TestCase extends BaseTestCase
{
use CreatesApplication;
use RefreshDatabase;
public static function tearDownAfterClass(): void
{
$databases = DB::select("SHOW DATABASES LIKE '". env('SCHEMA_PREFIX')."%'",[]);
...
}
}
解决方案
我自己有这个问题,唯一的解决方案是在 https://laracasts.com/discuss/channels/testing/seedingunseeding-the-database-once-per-test-class?page=1#reply=609036
添加(new self())->setUp
tearDownAfterClass :
public static function tearDownAfterClass(): void
{
(new self())->setUp();
DB:statement('stuff');//works now
}
推荐阅读
- angular - 使用量角器时 element(by.id('username')) 和 browser.driver.findElement(by.id('username')) 有什么区别
- android - TextView 的文字没有变化
- c# - IValueConverter 计算 TextBlock 的新大小
- javascript - 使用动画时,clearInterval 不会停止触发事件,或者第二个动画不会运行
- python - 如何在python中将语音与列表进行比较
- ios - 我可以在 iOS 应用程序中收集捐赠信息,然后重定向到 safari
- firebase - Gradle 构建失败的 lint 问题反应原生
- html - 如何在网页背景中保留水印?
- python - NumPy Array 的 Python 子设置输出有点混乱
- javascript - 给定代码的 JavaScript 执行顺序无法理解