首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何运行特定的phpunit xml测试套件?

如何运行特定的phpunit xml测试套件?
EN

Stack Overflow用户
提问于 2010-09-09 04:39:11
回答 5查看 62.3K关注 0票数 91

如何选择要执行的特定测试套件?

$ phpunit --配置config.xml

config.xml:

代码语言:javascript
复制
<testsuites>
    <testsuite name="Library">
        <directory>library</directory>
    </testsuite>
    <testsuite name="XXX_Form">
        <file>library/XXX/FormTest.php</file>
        <directory>library/XXX/Form</directory>
    </testsuite>
</testsuites>
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-02-14 12:33:26

下面是PHPUnit 3.7.13的代码

代码语言:javascript
复制
$ phpunit --configuration config.xml --testsuite Library
$ phpunit --configuration config.xml --testsuite XXX_Form

如果你想运行一组测试套件,你可以这样做

代码语言:javascript
复制
<testsuites>
  <testsuite name="Library">
    <directory>library</directory>
  </testsuite>
  <testsuite name="XXX_Form">
    <file>library/XXX/FormTest.php</file>
    <directory>library/XXX/Form</directory>
  </testsuite>
  <testsuite name="Both">
    <directory>library</directory>
    <file>library/XXX/FormTest.php</file>
    <directory>library/XXX/Form</directory>
  </testsuite>
</testsuites>

然后

代码语言:javascript
复制
$ phpunit --configuration config.xml --testsuite Both

不幸的是,PHPUnit目前不支持这样的嵌套测试套件

代码语言:javascript
复制
<testsuites>
    <testsuite name="Both">
      <testsuite name="Library">
        <directory>library</directory>
      </testsuite>
      <testsuite name="XXX_Form">
        <file>library/XXX/FormTest.php</file>
        <directory>library/XXX/Form</directory>
      </testsuite>
  </testsuite>
</testsuites>

因此,如果您想以这种方式运行测试套件组,则必须复制xml配置!

票数 142
EN

Stack Overflow用户

发布于 2010-09-12 05:10:22

这在当前版本的PHPUnit中是不可能的,phpunit-user邮件列表中的这些消息证明了这一点:http://thread.gmane.org/gmane.comp.php.phpunit.user/1302

但还有一种替代方法,您可以简单地将路径传递给phpunit。

代码语言:javascript
复制
phpunit library/XXX

这将运行library/XXX目录中的所有测试

如果这对您来说还不够,另一个选择是使用@group annotation将测试划分为不同的类别,然后可以有选择地运行这些类别。

票数 20
EN

Stack Overflow用户

发布于 2017-03-18 01:57:56

从phpunit 6.1开始,您可以在xml配置文件中使用属性defaultTestSuite,这类似于使用默认选项phpunit --testsuite xxx,并且被覆盖了。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3671685

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档