Die anderen Antworten hier sind korrekt. Sie können dies nicht mit einer XML-Konfiguration tun, was Sie tun können, ist die gleiche Art von Konfiguration in PHP.
Es ist sicherlich nicht die schönste Sache, aber es sollte Ihnen die Funktionalität geben, die Sie benötigen würden.
Sie bereitgestellt, um die XML-Konfigurations
<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>
Hypothetisch, lassen Sie uns Ihr Verzeichnis "Bibliothek", sagen enthält 3 Dateien:
library
XXX
FormTest.php
Unit
unittest1.php
unittest2.php
Und dass jede der Dateien enthält 1-Test durch perfekte Namenskonvention, zB: FormTest enthält testForm()
Für die Konfiguration erstellen wir eine Konfiguration, die alles enthält:
<?php
include_once "library/XXX/FormTest.php";
include_once "library/Unit/unittest1.php";
include_once "library/Unit/unittest2.php";
Dann erstellen wir eine Klasse durch die phpunit Namenskonventionen. Sie können es nennen, was Sie wollen, wie wir es nie wirklich verwenden ...
class LibraryConfigTest extends PHPUnit_Framework_TestCase {
Jede „Testsuite“ wird einfach eine Methode sein, die die Tests laufen Sie wollen. Benenne die Methoden wie du willst, wir werden sie nie wieder benutzen. Phpunit kümmert sich um den Lauf. Achten Sie jedoch darauf, sie in Gruppen zu kommentieren, damit Sie wissen, wie sie ausgeführt werden.
/**
* All Tests in Library
* @group Library
**/
public function testLibrary() {
UnitTest1::testUnit1();
UnitTest2::testUnit2();
FormTest::testForm();
}
/**
* All Form tests in library/XXX
* @group XXX_Form
**/
public function testForm() {
FormTest::testForm();
}
}
?>
Um nun die Funktionalität, die Sie gerade die „config“ gegen die Gruppe, die Sie wollen laufen wollen zu bekommen.
phpunit --group XXX_Form library_config.php
phpunit --group Library library_config.php
Wie gesagt, das ist hässlich und schon gar nicht guten Code, da es eine ständige Wartung erfordern wird, aber es wird Ihnen die Funktionalität, die Sie suchen.
Hoffentlich wird Bergmann diese Funktionalität in seiner nächsten Runde hinzufügen, obwohl es nicht wahrscheinlich erscheint, da er so aussieht wie ignoring it.
X-Ref: [Eine einzelne Testsuite standardmäßig in PHPUnit ausführen] (https://Stackoverflow.com/q/37820193/367456) – hakre