Dirts ist ein statisches Forschungsinstrument der Klassen- oder Methodenebene (Regressionstestauswahl), das sich auf die DI-Mechanismen (DI-Injektions) der Abhängigkeit (DI) bewusst ist.
| Mojo | Beschreibung |
|---|---|
class_level_select | Wählen Sie Tests mit dem Ansatz auf Klassenebene aus |
method_level_select | Wählen Sie Tests mit dem Ansatz auf Methodenebene aus |
| Mojo | Beschreibung |
|---|---|
class_level_graph | Graph anzeigen, die durch den Ansatz auf Klassenebene erstellt wurde |
method_level_graph | Graph anzeigen, die durch den Ansatz auf Methodenebene erstellt wurden |
| Mojo | Beschreibung |
|---|---|
clean | Bereinigen Sie temporäre Dateien und Verzeichnisse |
| Option | Beschreibung | Standard |
|---|---|---|
logging | Protokollierungsstufe (Werte in java.util.logging.Level ) | INFO |
useSpringExtension | Analysieren Sie die Abhängigkeiten, die durch Frühling induziert werden | false |
useGuiceExtension | Analysieren Sie die durch Guice induzierten Abhängigkeiten | false |
useCDIExtension | Analysieren Sie die durch CDI induzierten Abhängigkeiten | false |
| Option | Beschreibung | Standard |
|---|---|---|
standalone | Laufen im Standalone -Modus - Wenn nicht vorhanden, erwartet Dirts, dass ein anderer RTS -Tool bereits einige Tests in der excludesFile ausgeschlossen hat | false |
overrideExtension | In Kombination mit standalone=false verhalten sich das Tool aus eigenem Ermessen, aber nur Tests ausschließen, die von DI-bezogenen Änderungen betroffen sind | false |
| Option | Beschreibung | Standard |
|---|---|---|
toFile | Speichern Sie die Grafikdarstellung auf dem Dateisystem, anstatt sie in STDOut zu drucken | false |
outputFile | Der Name der Datei, in der das Diagramm gespeichert wird, wenn toFile auf true eingestellt ist | [class|method]_level |
Dirten können für RTs vollständig eigenständig verwendet werden, indem standalone=true angegeben wird.
Dirten können auch verwendet werden, um nach einem anderen RTS-Tool zu laufen, und nur für Tests, die durch DI-bezogene Änderungen betroffen sind, korrekt sind. Das andere Tool ist erforderlich, um Tests in der von der SURFIRE excludesFile -Eigenschaft angegebenen Datei auszuschließen. Dirten muss nach dem anderen RTS-Tool laufen und kommentieren dann die Tests, die von DI-bezogenen Änderungen betroffen sind, aber bereits ausgeschlossen wurden. Dies ist das Standardverhalten von Dirten.
Dirten ist so gebaut, dass sie mit Maven -Selefire verwendet werden. Der einfachste Weg, Drecks in einem Maven -Projekt zu verwenden, ist das Dirten Maven Plugin:
< plugin >
< groupId >edu.tum.sse.dirts</ groupId >
< artifactId >dirts-maven-plugin</ artifactId >
< version >${dirts.version}</ version >
< configuration >
...
</ configuration >
</ plugin >excludesFile -Property muss für jedes Submodul getrennt festgelegt werden. Andernfalls funktioniert der Testausschluss nicht.useSpringExtension ) auf true festgelegt wird.Auch wenn Dirten den Klartextcode analysiert, kann es bei bestimmten Abhängigkeiten zwischen den Moduls möglicherweise vor der Ausführung des Auswahlverfahrens kompiliert werden.
$ mvn compile dirts:class_level_select test Dirts erstellt eine Liste dieser Module in .dirts/affected_modules im Ordner des äußersten Moduls.
$ mvn dirts:class_level_select
$ mvn -am -pl " $( cat .dirts/affected_modules ) " test$ mvn dirts:class_level_select$ mvn compile dirts:class_level_select test$ mvn dirts:class_level_select
$ mvn -am -pl " $( cat .dirts/affected_modules ) " test Dirten bauen einfach rennen:
$ mvn clean installDadurch wird der Code für alle Module erstellt, alle Tests ausgeführt und die Gläser in Ihrem lokalen Maven -Repository installiert.