環境
- PHP 7.1
- Laravel 5.7
- PHPUnit 7.5.15
起きた事
-
.env
にAPP_ENV=local
、.env.testing
にAPP_ENV=testing
を記述してある状態。 -
phpunit.xml
では特にAPP_ENV
の指定なし。 - PHPUnit の処理中で
config('app.env')
を実行したらlocal
が返ってしまった。
原因と対処
.env
の値がキャッシュされてました。
せっかくなので、 TestCase.php
の setUp()
で全てのキャッシュを消すようにしました。
~/tests/TestCase.php
public function setUp()
{
parent::setUp();
Artisan::call('cache:clear');
Artisan::call('config:clear');
Artisan::call('optimize:clear');
Artisan::call('route:clear');
// ...
}