【问题标题】:Why php artisan make: test PostTest --unit command creates a new test extends not from Tests\TestCase, but from PHPUnit\Framework\TestCase? Laravel 8为什么 php artisan make: test PostTest --unit 命令创建一个新的测试不是从 Tests\TestCase 而是从 PHPUnit\Framework\TestCase 扩展的?拉拉维尔 8
【发布时间】:2021-07-06 14:10:38
【问题描述】:
测试环境在
中启用
Tests\TestCase
类通过
createApplication()
方法,但不在
PHPUnit\Framework\TestCase
类。
那么为什么当工匠创建一个扩展自
的新测试时
PHPUnit\Framework\TestCase
上课?
【问题讨论】:
标签:
unit-testing
laravel-8
laravel-artisan
test-environments
【解决方案1】:
我想通了!
当创建一个单元时
php artisan make:test MyTest --unit
命令。
此类测试不应影响数据库。因此,此类测试无需更改环境。
所以测试类从
PHPUnit\Framework\TestCase
类。
但是如果创建一个没有 --unit 标志的测试
然后测试类扩展自
Tests\TestCase
类,这会导致自动执行
createApplication()
方法和环境的变化。