我有这个简单的问题:
使用命令
phpunit -c|--configuration <file>
可以指定一个包含多个phpunit配置的文件,例如(但不限于):
<testsuites>
<testsuite name="unit">
<directory>path/to/directory/one</directory>
<directory>path/to/directory/two</directory>
</testsuite>
</testsuites>
将导致要执行的测试列表。
虽然我不完全了解phpunit的内部实现,但我想以某种方式回复这个'列表'。
问候。
答案 0 :(得分:1)
您可以使用您的测试套件配置phpunit.xml并运行phpunit --configuration path/to/phpunit.xml --testsuite <name test suite>
。
phpunit
,则不需要phpunit.xml --configuration
path/to/phpunit.xml
并且您只能运行phpunit
--testsuite <name test suite>
; --testsuite <name
testsuite>
;和run phpunit path/to/Test.php
注意:phpunit找到带有sufix&#34; * Test.php&#34;的文件。
有关详细信息,请查看:https://phpunit.de/manual/current/en/organizing-tests.html
答案 1 :(得分:1)
回答我自己的问题:
如果查看PhpUnit的内部结构,解析器组件与命令调用的runner组件强烈耦合。
这种情况几乎不可能重用xml解析器,强制您复制粘贴代码块或重新实现解析逻辑。
长话短说明PhpUnit xml解析逻辑不可重复使用。
答案 2 :(得分:0)
通过将所有测试标记为通过父项的setUp跳过,可以按执行顺序获得所有测试的列表:
public function setUp()
{
$this->markTestSkipped($this->toString());
}