运行多个phpunit.xml文件?

时间:2015-04-21 19:06:08

标签: xml phpunit

我有一个项目分为以下几个部分:

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时,我收到一条消息,说没有运行测试。为什么?我指定了测试套件名称和测试所在的目录...

我有什么遗失的吗?

1 个答案:

答案 0 :(得分:0)

不幸的是,PHPUnit仅在当前工作目录中自动应用phpunit.xml或phpunit.xml.dist(请参阅--configuration here的文档)。

可能有一种方法可以从测试本身动态设置PHPUnit选项,或者您可以尝试使用自定义测试套件加载程序或结果打印机。但我建议只运行两次PHPUnit然后根据需要合并结果。