2012-06-13 10 views
6

C'è un modo per ottenere le categorie di test selezionate durante l'esecuzione di un test? qualcosa nelle linee di TestContext.Properties ["_ SELECTCATEGORIES"]Come ottenere nUnità delle categorie selezionate in modo programmatico

fondamentalmente ho casi di test che caricano i dati di test da un db e come ho avuto un sacco di test il progetto richiede molto tempo caricare. Nel tentativo di trovare un modo di avere le testCaseSources ritorno nulla se la categoria non è selezionata

+0

cosa intendi con categorie di test? –

+0

Intendo le categorie selezionate nel gui o nella console nunit nelle categorie incluse per l'esecuzione – z0c

risposta

2

AGGIORNATO

Non sembra essere un metodo semplice per identificare o di carico selezionato le categorie in un montaggio di prova NUnit all'interno il NUnit quadro stesso ..

utilizzando la riflessione, si potrebbe forse acquisire l'immobile Categories nelle classi decorate con TestAttribute o TestFixtureAttribute. Abbinando queste categorie a quella che si desidera caricare, si potrebbe essere in grado di filtrare quali test caricare prima di caricarli.

E poi c'è la TestContext.Test.Properties chiave _CATEGORIES (disponibile in NUnit 2.5.7 e versioni successive):

[Test] 
[Category("Hello")] 
public void TestCategory() 
{ 
    Assert.IsTrue(((ArrayList)TestContext.CurrentContext.Test.Properties["_CATEGORIES"]).Contains("Hello")); 
} 

Alcuni più testo da leggere sulla classe TestContext può essere trovato here. Ovviamente, per risolvere il problema con questo approccio, è necessario caricare l'intero gruppo di test e eseguire il ciclo su tutti i casi di test in anticipo, il che è ovviamente indesiderabile nel proprio scenario.

+0

Non del tutto. ["_CATEGORIES"] restituisce le categorie che decorano il test, ciò di cui ho bisogno sono le categorie selezionate nel gui nunit o console per eseguire – z0c

+0

@ z0c Forse non è un aggiornamento molto incoraggiante, ma almeno ho cercato di adattare la mia risposta a una migliore rispondere alla tua domanda. –

+0

nel link "qui" in questa risposta, ricevo un messaggio "Account sospeso". Si prega di fornire un nuovo collegamento. – funkymushroom

Problemi correlati