FTW*_*FTW 2 php symfony composer-php
我正在配置 symfony 5 项目的环境,在测试测试环境 (APP_ENV = test) 时出现异常,因为它找不到 web-profiler 包。这是正常的,因为它是由 composer 使用 require --dev 安装的。这有点进退两难,因为即使我目前在测试环境中不需要这个包,我在技术上可能会。
更糟糕的是:我需要开发和测试中的学说夹具包;但是要让它也进行测试,我必须“删除--dev”选项,因此也将它投入生产,这很糟糕。
所以我想知道处理这个问题的常用方法是什么?我想这是一个普遍的问题。
只需为多个环境启用捆绑包:
例如:
// config/bundles.php
Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle::class =>
[
'dev' => true,
'test' => true
],
Run Code Online (Sandbox Code Playgroud)
您仍然安装 ( require) 带有--dev标志的软件包,这仅意味着在您为生产 ( composer install --no-dev)创建可安装版本时未安装它们。
如果您在测试时需要开发依赖项,那么“测试”环境不能与生产环境相同。要么在生产中安装这些依赖项,但将它们禁用在 上bundles.php,要么接受这些环境中会有细微的差异。
实际上,它们永远不会完全相同。例如,您在开发中需要 phpunit,但在生产中显然不需要。
| 归档时间: |
|
| 查看次数: |
57 次 |
| 最近记录: |