php - Codeception 进入另一个目录
问题描述
我创建了一个由 Composer 加载的自定义组件。
这是加载我的组件时我的代码的结构。
- 我的项目
- 小贩
- 我的组件
- 小贩
之后,我创建了文件myComponentTest.php
以使用 Codeception 运行单元测试。
- 我的项目
- 测试
- 我的组件测试.php
- 小贩
- 我的组件
- 测试
它适用于以下命令:
./vendor/bin/codecept 运行
好吧。没什么特别的。Codeception 测试没问题!:)
但是我猜程序是错误的,文件myComponentTest.php
应该在vendor/myComponent
目录中,对吗?
因为,这个单元测试只和组件有关。例如,如果我决定删除组件,它不会删除我的myComponentTet.php
文件,所以当我运行单元测试时会出现一些错误。
但是,如果我将我的移动MyComponentTest.php
到vendor/myComponent
目录中,我将无法运行此测试,因为 Codeception 命令仅从tests
目录执行测试。
那我该怎么办?我对此感到困惑。谢谢。
解决方案
看看Yii2 框架下子项目是如何在项目中实现测试的
根项目目录中的 codeception.yml
include:
- common
- frontend
- backend
paths:
log: console/runtime/logs
settings:
colors: true
包含 codeception.yml 文件的 common|frontend|backend 目录
我希望这有帮助。
推荐阅读
- vuejs2 - Vuelayers vl-style-icon 语法
- javascript - 反应/生命周期
- doit - doit - 是否有命令行选项强制重新运行特定任务
- python - 如何使用 Databricks 从 Azure 数据仓库读入 Python?
- vue.js - Vue JS使用局部变量而不在data()函数中定义
- python - 基于参考表的 Pandas 设置值的规范方法
- google-cloud-firestore - Firestore 规则 - 按字段保护数据
- javascript - Javascript调用Name获取用户名和密码,返回多个值
- sql - 检索特定日期 SQL 的成本
- office-js - 选择多个项目后,Office.context.mailbox.item 为空