如何选择要执行的特定测试套件?
$ phpunit --configuration config.xml
config.xml文件:
<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>
Run Code Online (Sandbox Code Playgroud)
Jos*_*ock 115
这里的代码就像PHPUnit 3.7.13一样
$ phpunit --configuration config.xml --testsuite Library
$ phpunit --configuration config.xml --testsuite XXX_Form
Run Code Online (Sandbox Code Playgroud)
如果您想运行一组测试套件,那么您可以执行此操作
<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>
Run Code Online (Sandbox Code Playgroud)
然后
$ phpunit --configuration config.xml --testsuite Both
Run Code Online (Sandbox Code Playgroud)
不幸的是,PHPUnit目前不支持这样的嵌套测试套件
<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>
Run Code Online (Sandbox Code Playgroud)
因此,如果您想以这种方式运行测试套件组,则必须进行xml配置复制!
Ant*_*nna 20
在PHPUnit的用户邮件列表这些消息就证明这不是PHPUnit中的当前版本可能:http://thread.gmane.org/gmane.comp.php.phpunit.user/1302
但是有一个替代方案,你可以简单地传递一个到phpunit的路径.
phpunit library/XXX
Run Code Online (Sandbox Code Playgroud)
这将运行library/XXX目录中的所有测试
如果这对您来说还不够,另一个选择是使用@group注释将测试划分为可以选择性运行的不同类别.
小智 7
从 phpunit 6.1 开始,您可以在 xml 配置文件中使用 attribute defaultTestSuite,这就像使用默认选项一样phpunit --testsuite xxx,并且会被覆盖。
| 归档时间: |
|
| 查看次数: |
48291 次 |
| 最近记录: |