我有一个项目分为以下几个部分:
ProjectName/
ModuleOne/
ModuleTwo/
每个模块都有一个phpunit.xml和一个测试目录。每个模块也有自己的composer.json
等等,这样我就可以轻松地将其打包成一个库,或者让您根据自己的需要获得特定的模块。
我遇到的问题是,由于每个模块都有自己的带有phpunit.xml文件的测试文件夹,我需要在运行每个模块测试的项目根目录下创建另一个phpunit.xml。我以为我可以通过以下方式做到这一点:
<testsuites>
<testsuite name="ModuleOne">
<directory>ModuleOne/tests/</directory>
</testsuite>
<testsuite name="Moduletwo">
<directory>Moduletwo/tests/</directory>
</testsuite>
</testsuites>
但是当我从根目录运行phpunit时,我收到一条消息,说没有运行测试。为什么?我指定了测试套件名称和测试所在的目录...
我有什么遗失的吗?
答案 0 :(得分:0)
不幸的是,PHPUnit仅在当前工作目录中自动应用phpunit.xml或phpunit.xml.dist(请参阅--configuration here的文档)。
可能有一种方法可以从测试本身动态设置PHPUnit选项,或者您可以尝试使用自定义测试套件加载程序或结果打印机。但我建议只运行两次PHPUnit然后根据需要合并结果。