我如何确保当我在 Laravel 中使用 phpunit 进行测试时,例如我想测试我的 api 路由 /test/1
它使用我的测试数据库?
我已经建立了测试连接并更改了我的 phpunit.xml 文件。我将 DB_CONNECTION
更改为我创建的测试连接。
<env name="DB_CONNECTION" value="mysql_testing"/>
但是当我发出 post 请求时,我会从开发数据库接收数据吗?
最佳答案
在您的Config/database.php
文件中,mysql_testing
中database 的值是多少?应该是这样的:
'mysql_testing' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '3306'),
'database' => env('TEST_DB_DATABASE', 'db_testing'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
'engine' => null,
],
并且数据库 db_testing
必须存在。
关于php - 使用 phpunit 进行 Laravel 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35570971/