在编写应用程序时,我一直在关注ZF2 教程,了解在哪里/如何为模块编写单元测试。现在每个模块都有自己的test
目录和自己的Bootstrap.php
配置phpunit.xml
文件。
当前应用程序外壳
Application
+--config/
+--public/
+--module/
| +--Module-A
| | +--config
| | +--src
| | +--tests
| | +--view
| +--Module-B
| +--config
| +--src
| +--tests
| +--view
+--vendor/
我遇到的问题是 - 为我的整个应用程序一次运行所有测试非常困难。我必须分别运行每个模块的测试——这使我的 Jenkins CI 设置更加复杂,即:聚合代码覆盖率文件、junit、三叶草等......
建议的应用程序外壳
Application
+--config/
+--public/
+--module/
| +--Module-A
| | +--config
| | +--src
| | +--view
| +--Module-B
| +--config
| +--src
| +--view
+--vendor/
+--tests/
+--Module-A
+--Module-B
所以在我寻找解决方案的过程中,我注意到Zend github repo仍然有一个单独的tests
目录,看起来可以镜像库模块。遵循这种模式,我可以一起运行所有测试并收集指标,这将使我的生活更轻松。
所以我真正的问题是......
我应该这样做的正确方法是什么?如果我正在编写将要发布的第 3 方插件 - 我应该将测试包含在模块目录中吗?如果我正在编写将与此应用程序一起用于自定义逻辑的插件,我应该/我可以创建一个根文件夹并镜像我的模块目录并将测试保存在那里吗?
还是我正在努力地做这一切?