2015-11-23 11 views
5

C'è un modo per configurare Teamcity per ignorare alcuni test? Ho bisogno di eseguire questi test solo localmente, quando sono in esecuzione in TeamCity, devono essere ignorati.Come configurare Teamcity per ignorare alcuni test

Sto usando nunit.

Questa potrebbe essere una direttiva, attributo, ecc

+0

http://stackoverflow.com/questions/15618225/teamcity-re-running-a-specific-build-step – MethodMan

risposta

10

Si può fare questo con l'aggiunta di categorie di test per i test.

[Category("LocalOnly")] 
[Test] 
public void MyLocalTest() 
{ 
    // Code omitted for brevity 
} 

È quindi possibile aggiungere quella categoria al corridore NUnit 'categorie NUnit esclude:' campo nella fase TeamCity build.

NUnit categories exclude: LocalOnly 

The TeamCity NUnit ignore category field

2

TeamCity 9.1 supports NUnit 3 e si apre many other possibilities per selezionare i test per l'esecuzione o filtrare. Vorrei raccomandare di utilizzare --where=EXPRESSION che consente di utilizzare Test Selection Language. Ora puoi usare anche le espressioni regolari per specificare i test che vuoi eseguire o escludere.

Esempi

Vuoi escludere un solo test?

--where="method != 'TestName'" 

Vuoi escludere un solo test? Non ricordo il nome esattamente ma qualcosa con "BuggyMethod" (~ significa che un'espressione regolare è coinvolto):

--where="method !~ 'BuggyMethod'" 

eseguire tutti i test definiti in una classe:

--where="class == 'My.Namespace.ClassName'" 

Dimenticate il pieno spazio dei nomi ? Non è più un problema - usare un'espressione regolare:

--where="class =~ 'ClassName'" 

È possibile anche combinare queste espressioni per ottenere un effetto desiderato. Eseguire tutti i test della categoria, ma exlude tutti i metodi che contengono "BuggyMethod":

--where="class =~ 'ClassName' and method !~ 'BuggyMethod'" 

Questo approccio è molto più flessibile ed evita eventuali modifiche del codice. Non vedo più il punto di usare le categorie, a meno che i tuoi test non siano classificati in categorie.

Problemi correlati