ここでの他の答えは正しいです。xml configを使用してこれを行うことはできませんが、phpで同じタイプの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>
仮に、ディレクトリ「ライブラリ」に3つのファイルが含まれているとします。
library
XXX
FormTest.php
Unit
unittest1.php
unittest2.php
また、各ファイルには、完全な命名規則による1つのテストが含まれています。例:FormTestにはtestForm()が含まれています
構成については、すべてを含む構成を作成します。
<?php
include_once "library/XXX/FormTest.php";
include_once "library/Unit/unittest1.php";
include_once "library/Unit/unittest2.php";
次に、phpunitの命名規則に従ってクラスを作成します。実際には使用しないので、好きな名前を付けることができます...
class LibraryConfigTest extends PHPUnit_Framework_TestCase {
各「テストスイート」は、必要なテストを実行するメソッドにすぎません。メソッドに好きな名前を付けてください。繰り返しになりますが、実際には使用しません。Phpunitが実行を処理します。ただし、実行方法を理解できるように、必ずグループにコメントしてください。
public function testLibrary() {
UnitTest1::testUnit1();
UnitTest2::testUnit2();
FormTest::testForm();
}
public function testForm() {
FormTest::testForm();
}
}
?>
ここで、必要な機能を取得するには、必要なグループに対して「config」を実行するだけです。
phpunit --group XXX_Form library_config.php
phpunit --group Library library_config.php
私が言ったように、これは醜く、確かに良いコードではありません。それは定期的なメンテナンスを必要とするからですが、それはあなたが探している機能をあなたに与えるでしょう。
うまくいけば、Bergmannは次のラウンドでこの機能を追加するでしょうが、彼はそれをほとんど無視しているように見えるので、そうは思われません。