2016-08-09 43 views
1

Ich möchte eine separate Testphase für Spock-Spezifikationen in einem separaten Verzeichnis vorstellen. Diese Tests sind hauptsächlich lange Läufer und werden während nächtlicher Bauarbeiten ausgeführt.Wie man eine benutzerdefinierte Testphase in Grails 3.x einführt

Für Grails 2.x fand ich diesen Blog: http://ldaley.com/post/615966534/custom-grails-test, aber in Grails 3.x gibt es kein _Event.groovy mehr.

Gibt es eine Möglichkeit, eine benutzerdefinierte Testphase einzuführen, wie

grails test-app -custom 

Die Testfälle innerhalb der benutzerdefinierten Phase sollten wie die Integrationstests mit vollem Zugriff auf die Anwendung ausführen, Sitzung überwintern und so weiter.

Antwort

1

Ich denke, dass Sie Ihre Tests in einem separaten Modul (dh große Tests) schreiben können und sie mit einer Task für Ihr Modul ausführen, die Ihre "kleinen" Tests enthält, könnten Sie mit einer Struktur wie:

enden
project 
    your-api 
    big-tests 

Ihre api Lauftests gradle: your-api: test

Laufen Ihren großen Tests gradle: big-Tests: Test

+0

versucht ein separates Unterverzeichnis in meinem Projekt mit der erstellen Spock Spezifikationen, aber g ot folgenden Gradle-Fehler: Projekt 'big-test' nicht im root-Projekt 'mcc' gefunden. – hitty5

+0

Nach Ansatz für mich gearbeitet: Ich habe ein Paketverzeichnis unter: - Integration-Test - bulk --- MySpec.groovy (Paket bulk) In diesem Fall zog ich alle lange Läufer zu diesem Paket und ausgeführte Tests mit dem Include-Muster: Grails Test-App Bulk. * -Integration. Alle anderen Tests werden ausgeführt wie: Grails Test-App andere. * -Integration. – hitty5

+0

Der erste Fehler kann gelöst werden, indem man einen großen Test auf settings.gradle datei hinzufügt –