在开发 Roketi Panel 时,我遇到了一个棘手的问题:如何在开发和测试环境中高效地管理数据库配置和运行 Behat 测试。Roketi Panel 是一个用于管理主机服务的控制面板,它需要在不同的环境中进行测试和开发,这使得配置变得复杂且容易出错。
为了解决这个问题,我选择使用 composer 来管理 Roketi Panel 的依赖和配置。Composer 是一个 php 的依赖管理工具,它可以帮助我们轻松地安装和更新项目所需的库和包。通过 Composer,我们可以确保所有开发和测试环境中的依赖都是一致的,从而减少配置错误的可能性。
首先,我使用 Composer 安装了 Roketi Panel:
composer require roketi/panel
安装完成后,我需要配置数据库凭证以便在开发和测试环境中使用。根据 Roketi Panel 的文档,我需要在三个不同的位置设置数据库凭证:
- Configuration/Development/Settings.yaml:用于开发和手动测试的数据库配置。
- Configuration/Development/Behat/Settings.yaml:用于 Behat 前端测试的数据库配置。
- Configuration/Testing/Behat/Settings.yaml:用于 Behat 内部通信和清理数据库的配置。
配置好数据库凭证后,我使用以下命令启动 Behat 测试环境:
./flow behat:kickstart
然后,我创建了一个新的测试数据库 roketi_testing,并使用以下命令准备数据库架构:
FLOW_CONTEXT=Development/Behat ./flow doctrine:migrate
为了确保 Behat 测试能够访问受保护的功能,我创建了一个管理员用户:
FLOW_CONTEXT=Development/Behat ./flow roketi.panel:setup:createadminuser --username john.doe --password 12345
最后,我运行 Behat 测试:
bin/behat -c Packages/Application/Roketi.Panel/Tests/Behavior/behat.yml
通过使用 Composer,我能够轻松地管理 Roketi Panel 的依赖和配置,从而简化了开发和测试环境的设置过程。Composer 不仅帮助我保持了不同环境中的一致性,还大大提高了我的开发效率。如果你在开发类似项目时遇到了类似的配置问题,我强烈推荐使用 Composer 来简化你的工作流程。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END