2011-04-01 13 views
10

Sto provando a sistemare le nostre esecuzioni fallite e, sfortunatamente, sono molto nuovo al gradle. Al momento abbiamo testng, junit, e vorrei aggiungere anche alcuni test di spock al mix. Non sono del tutto sicuro di come gradle determini quali test eseguire quando digito "gradle test". Come posso impedire il test &/oi test di junit da eseguire? Come posso ottenere gradle per iniziare a eseguire i miei test di spock?Selezione di test specifici da eseguire nel gradle

risposta

14

Per impostazione predefinita, l'attività test esegue tutti i test JUnit che è in grado di trovare, inclusi eventuali test di Spock. Per farlo funzionare test TestNG invece, configurare l'attività come segue:

test { 
    useTestNG() 
} 

Se si dispone di entrambi i test JUnit e TestNG, avete bisogno di due attività di test, uno per ogni quadro di prova.

Per eseguire un sottoinsieme di test, utilizzare la proprietà di sistema -Dtest.single. Per ulteriori informazioni, consultare la sezione corrispondente in Gradle User Guide.

+0

ho guardato la documentazione si fa riferimento, ma è piuttosto confusa. Ad esempio, cosa diavolo fa: "gradle -Dtest.single = a/b/test" significa? Sto provando a impedire l'esecuzione dei test della junit standard, ma eseguo test di spock e testng. Non sto avendo fortuna. –

+2

Dalla documentazione: il testNamePattern verrà utilizzato per formare un modello di inclusione di '**/testNamePattern * .class'. Quindi 'a/b /' seleziona tutte le classi di test sotto un pacchetto 'a.b'. (Si noti che 'a' non deve essere necessariamente un pacchetto radice.) Per eseguire Spock e TestNG ma non i test di JUnit, sono necessarie due attività (come spiegato sopra) e configurare l'attività JUnit per includere solo Test di Spock (per convenzione di denominazione di pacchetto o classe). –

3
$> gradle test -Dtest.single=YourTestClass 
0

l'utente possa fornire utilizzando la riga di comando:

$> gradle test --tests org.somewhere.MyTestClass 

O anche

$> gradle test --tests org.somewhere.MyTestClass.my_test_case 
Problemi correlati