Codeception如何拆分YAML配置?将DB凭据移至独立文件
解决方法
1. 创建单独的数据库凭据配置文件
新建db_credentials.yml文件,将Db模块的敏感配置迁移到这里:
modules: config: Db: dsn: 'mysql:host=<MY HOST>;dbname=<MY DBNAME>' user: '<MY USER>' password: '<MY PASSWORD>'
2. 修改api.suite.yml配置
在主配置文件的顶层添加extends引入凭据文件,同时简化Db模块的声明(仅保留启用标记):
actor: ApiTester extends: db_credentials.yml modules: enabled: - Asserts - REST: url: port: 80 depends: PhpBrowser part: Json - Db
3. 屏蔽敏感文件提交
在项目根目录的.gitignore中添加一行,防止凭据文件被提交到仓库:
db_credentials.yml
关于之前extends无效的原因
大概率是两个问题导致:
extends被错误嵌套在modules或其他节点下,它必须放在配置文件的顶层- 单独配置文件的结构不符合Codeception要求,Db的参数必须嵌套在
modules.config节点下,不能直接平级存放
内容的提问来源于stack exchange,提问作者Ivan
相关产品推荐
相关产品推荐

