yii2 模块内的单元测试
Unit test inside a Module in yii2
如何在模块内执行单元测试。这是我的项目结构
yii2-app-advanced 是一个很好的解决方案示例。
将 include
部分添加到 project level codeception.yml 文件:
include:
- modules/api
- modules/dtr
Include
设置记录在 https://codeception.com/docs/08-Customization#One-Runner-for-Multiple-Applications
您需要 modules/dtr 目录中的 codeception.yml 文件,它看起来像普通的独立 codeception.yaml 文件。
codecept run
命令将 运行 项目级测试和包含模块的测试。
codecept run modules/dtr/tests/unit/
执行该模块的所有单元测试。
codecept run modules/dtr/tests/unit/models/FirstTest.php
执行特定测试
如果您不想拥有顶级 codeception.yml 文件,您可以指定模块目录的路径(无论如何您都需要 codeception.yml 文件)。
codecept run -c modules/dtr
执行所有测试
codecept run -c modules/dtr tests/unit/models/FirstTest.php
执行特定测试
- 但使用名称过滤器更方便 -
codecept run -c modules/dtr :FirstTest
-c
参数记录在 https://codeception.com/docs/07-AdvancedUsage#Running-from-different-folders
如何在模块内执行单元测试。这是我的项目结构
yii2-app-advanced 是一个很好的解决方案示例。
将 include
部分添加到 project level codeception.yml 文件:
include:
- modules/api
- modules/dtr
Include
设置记录在 https://codeception.com/docs/08-Customization#One-Runner-for-Multiple-Applications
您需要 modules/dtr 目录中的 codeception.yml 文件,它看起来像普通的独立 codeception.yaml 文件。
codecept run
命令将 运行 项目级测试和包含模块的测试。codecept run modules/dtr/tests/unit/
执行该模块的所有单元测试。codecept run modules/dtr/tests/unit/models/FirstTest.php
执行特定测试
如果您不想拥有顶级 codeception.yml 文件,您可以指定模块目录的路径(无论如何您都需要 codeception.yml 文件)。
codecept run -c modules/dtr
执行所有测试codecept run -c modules/dtr tests/unit/models/FirstTest.php
执行特定测试- 但使用名称过滤器更方便 -
codecept run -c modules/dtr :FirstTest
-c
参数记录在 https://codeception.com/docs/07-AdvancedUsage#Running-from-different-folders