Тест NUNIT не удается при запуске как часть более крупного пространства имен
-
22-10-2019 - |
Вопрос
У меня интересная ситуация. В моей тестовой сборке у меня есть папки, имеющие определенные тестовые классы, т.е. Рассмотрим, например, следующая иерархия в VS:
Sol TestProject TestFolder1 TestClass1 TestClass2 TestFolder2 TestClass3
Теперь, когда я запускаю следующее в командной строке:
nunit-console.exe /run:Sol.TestProject.TestFolder1.TestClass2 TestProject.dll
Все работает нормально, и все тесты проходят. Но, если я бегу, как ниже:
nunit-console.exe /run:Sol.TestProject.TestFolder1 TestProject.dll
В этом случае некоторые из тестов в TestClass2 проваливаются.
Я попытался сбросить состояние некоторых соответствующих объектов, связанных с тестом, и состояние казалось хорошим в начале тестового кода в обоих случаях. Кроме того, TestClass1/2/3 не имеет суперкласса что -то, что делает что -то, так что это также исключено. Есть идеи, что еще может быть здесь?
Я использую VS2010/.NET4.0 (4.0.30319.1)/NUNIT 2.5.9.
Решение
Наконец понял это. Я использовал Синглтон класс для хранения определенных вариантов. Похоже, что экземпляр класса Singleton сохраняется между прогонами различных светофоров Test (т. Е. Тестовых классов), когда они запускаются вместе, например, для папки или для проекта. Я изначально не сбрасывал состояние этого объекта, потому что я думал, что в классе Singleton будет новый экземпляр для каждой из светофоров Test. Интересно, надеюсь, это кому -то поможет.