Тест NUNIT не удается при запуске как часть более крупного пространства имен

StackOverflow https://stackoverflow.com/questions/4800191

Вопрос

У меня интересная ситуация. В моей тестовой сборке у меня есть папки, имеющие определенные тестовые классы, т.е. Рассмотрим, например, следующая иерархия в 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. Интересно, надеюсь, это кому -то поможет.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top