di prova NUnit non riesce quando viene eseguito come parte di spazio dei nomi più grandi
-
22-10-2019 - |
Domanda
Sto avendo una situazione interessante. Nel mio test di assemblaggio, ho cartelle avere classi di test specifici, vale a dire, TestFixture di. Si consideri, ad esempio, la seguente gerarchia in VS:
Sol TestProject TestFolder1 TestClass1 TestClass2 TestFolder2 TestClass3
Ora, quando faccio funzionare il seguente alla riga di comando:
nunit-console.exe /run:Sol.TestProject.TestFolder1.TestClass2 TestProject.dll
Le cose stanno funzionando benissimo e tutti i test stanno passando. Ma, se corro come di seguito:
nunit-console.exe /run:Sol.TestProject.TestFolder1 TestProject.dll
In questo caso, alcuni dei test in TestClass2 stanno fallendo.
Ho cercato di dumping lo stato di alcuni degli oggetti rilevanti coinvolti nel test, e lo Stato sembrava bene all'inizio del codice di prova in entrambi i casi. Inoltre, TestClass1 / 2/3 non hanno una superclasse fare qualcosa - in modo che sia esclusa pure. Tutte le idee che altro può succedere qui?
Sto usando VS2010 / .NET4.0 (4.0.30319.1) / NUnit 2.5.9.
Soluzione
Finalmente capito questo. Io sto usando un Singleton classe per la memorizzazione di alcune opzioni. Appare come l'istanza di classe singleton viene mantenuta tra piste di diversi TestFixtures (cioè classi prova), quando vengono eseguiti insieme, per esempio, per una cartella o per un progetto. Non ho discarica lo stato di questo oggetto inizialmente, perché ho pensato che la classe Singleton sarà avere nuova istanza per ciascuna delle TestFixtures. scoperta interessante, spero che questo aiuta qualcuno.