我正在尝试在 travis-ci
中运行我的测试。下面是我的 .travis.yml
文件
dist: bionic
language: php
php:
- 7.4.15
services:
- mysql
cache:
directories:
- node_modules
- vendor
before_script:
- cp .env.travis .env
- sudo mysql -e 'create database furahasms_testing;'
- composer self-update
- composer install --prefer-source --no-interaction --dev
- php artisan key:generate
- php artisan migrate
- php artisan test
script:
- vendor/bin/phpunit
在 Travis Log 中我看到下面
$ cp .env.travis .env before_script.1 0.00s
$ sudo mysql -e 'create database furahasms_testing;' before_script.2 0.01s
$ composer self-update before_script.3 0.28s
$ composer install --prefer-source --no-interaction --dev before_script.4 241.94s
$ php artisan key:generate before_script.5 0.27s
$ php artisan migrate before_script.6 2.22s
$ php artisan test
FAIL Tests\Unit\ServerRunningTest
⨯ root route status ok
⨯ api authentication ok with correct credentials
⨯ api authentication fails with correct credentials invalid token
....
SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)
at vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70
66▕ if (class_exists(PDOConnection::class) && ! $this->isPersistentConnection($options)) {
67▕ return new PDOConnection($dsn, $username, $password, $options);
68▕ }
69▕
➜ 70▕ return new PDO($dsn, $username, $password, $options);
71▕ }
72▕
73▕ /**
74▕ * Determine if the connection is persistent.
这是文档的摘录
<块引用>MySQL 绑定到 127.0.0.1 和一个在 ~travis/.my.cnf 中定义的套接字并且需要身份验证。您可以使用用户名 travis 或 root 以及空白密码进行连接。
为什么我无法运行测试?从日志中,迁移成功运行
以下是可能有助于帮助调试问题的其他文件
.env.travis
APP_NAME=Cronhub
APP_ENV=testing
APP_KEY=Sometring
APP_DEBUG=true
APP_URL=http://localhost/
DB_CONNECTION=testingTravis
DB_TEST_USERNAME=root
DB_TEST_PASSWORD=
BCRYPT_ROUNDS=4
CACHE_DRIVER=array
MAIL_DRIVER=array
QUEUE_CONNECTION=sync
SESSION_DRIVER=array
BUGSNAG_API_KEY=randkey
database.php
'testing' => [
'driver' => 'mysql',
'host' => env('DB_TEST_HOST', 'localhost'),
'database' => env('DB_TEST_DATABASE', 'furahasms_testing'),
'username' => env('DB_TEST_USERNAME', 'homestead'),
'password' => env('DB_TEST_PASSWORD', 'secret'),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
'testingTravis' => [
'driver' => 'mysql',
'host' => env('DB_TEST_HOST', 'localhost'),
'database' => env('DB_TEST_DATABASE', 'furahasms_testing'),
'username' => env('DB_TEST_USERNAME', 'root'),
'password' => env('DB_TEST_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
]
这是一个 Laravel 应用程序