【问题标题】:how to run parallel test in laravel?如何在 laravel 中运行并行测试?
【发布时间】:2021-11-10 16:23:18
【问题描述】:

我在项目中有 15 个功能测试。 env.test的这个信息:

DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=test_db
DB_USERNAME=test
DB_PASSWORD=123456

当我使用 php artisan test --parallel 并行运行测试时,我得到了错误:

1) Tests\Feature\Settlement\PublicSTest::testCreatePublicS
Illuminate\Database\QueryException: SQLSTATE[42501]: Insufficient privilege: 7 ERROR:  permission denied to create database (SQL: create database "test_db_test_3" encoding "utf8")

如何解决这个错误?

【问题讨论】:

    标签: php laravel testing


    【解决方案1】:

    正如documentation 所述,Laravel 将创建多个数据库以避免并行进程与其他数据发生冲突。

    添加用户创建数据库的权限,根据错误假设这是postgres数据库。

    访问剪辑

    psql test_db test
    

    要执行的命令

    ALTER USER test CREATEDB;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-29
      • 2020-06-14
      • 2019-08-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多