php - CircleCI 不导入依赖项
问题描述
我的 CircleCI 测试由于缺少依赖项而失败,即使我的本地测试通过就好了:
1) Tests\Feature\NetworkedObjectRegistrationTest::itRegistersNetworkedObjects
Error: Class 'Ramsey\Uuid\UUID' not found
在测试类中导入依赖项:
use App\Models\User;
use App\Models\NetworkedObjectAbility;
use Ramsey\Uuid\UUID;
class NetworkedObjectRegistrationTest extends TestCase
{
use RefreshDatabase;
...
并出现在composer.json
:
"require": {
...
"ramsey/uuid": "^3.8"
},
CircleCI 配置:
version: 2
jobs:
build:
docker:
- image: circleci/php:7.1-node-browsers
working_directory: ~/laravel
steps:
- checkout
- run: sudo apt install -y libsqlite3-dev zlib1g-dev
- run: sudo docker-php-ext-install zip
- run: sudo composer self-update
- restore_cache:
keys:
- composer-v1-{{ checksum "composer.lock" }}
- composer-v1-
- run: composer update
- run: composer install
- save_cache:
key: composer-v1-{{ checksum "composer.lock" }}
paths:
- vendor
- restore_cache:
keys:
- node-v1-{{ checksum "package.json" }}
- node-v1-
- run: yarn install
- save_cache:
key: node-v1-{{ checksum "package.json" }}
paths:
- node_modules
- run: touch storage/testing.sqlite
- run: php artisan migrate --env=testing --database=sqlite_testing --force
- run: ./vendor/bin/phpunit
有人遇到过类似的问题吗?我是 CI 新手,所以我怀疑我以某种方式搞砸了配置。干杯。
解决方案
类的名称是Uuid
,将其导入为use Ramsey\Uuid\Uuid
。
推荐阅读
- grid - 如何使用浮动操作按钮将新的网格项目或图像添加到已经构建的网格视图图像 basd Flutter 应用程序
- javascript - JSON 中第 2 位的意外令牌 I
- c++ - 链接器找不到头文件 (MSVC) 的 .cpp 实现
- node.js - 如何确保一个异步函数在 NodeJS 中的另一个函数之前运行?
- html - HTML/CSS - div 高度问题
- node-red - 如何在节点红色 html 文件中生成脚本模板元素
- r - 在不需要时省略可选输入
- javascript - 为什么这个子事件不更新父级(Vue)中的状态
- python - 比较 n-gram 以分组重复
- mysql - Sequelize 不会跳过锁定的行