Тестирование в Visual Studio успешно выполняется индивидуально, сбои в наборе

Со всеми хорошими ответами я нашел эти заявления, помог мне запомнить это лучше и в соответствии с тем, как работает мой мозг (и, надеюсь, для него еще немного):

  • "и" возвращает первый элемент False (например, None, "", [], (), {}, 0) или последний элемент, если нет (например, False не найден)
  • "или" возвращает первый True элемент или последний элемент (например, нет True found)

В итоге все они возвращают первый элемент, который решает исход заявления. (В худшем случае последний элемент в последовательности)

Обратите внимание, что это правило также применяется к прикованным всем «и» или всем «или» операторам

16
задан Matt McCormick 30 December 2008 в 13:58
поделиться

4 ответа

Возможно, что у Вас есть некоторые совместно используемые данные. Проверьте на статические членские переменные в классах, используемых, который означает наборы тестов значение, которое заставляет последующий тест перестать работать.

можно также отладить модульные тесты. В зависимости от платформы Вы используете, необходимо смочь выполнить инструмент платформы, поскольку отладка запускает приложение, передающее путь к скомпилированному блоку в качестве параметра.

8
ответ дан 30 November 2019 в 23:05
поделиться

Очень возможно, что некоторые модификации/инстанцирования, сделанные в одном тесте, влияют на другие. Это указывает на плохой тестовый дизайн и отсутствие надлежащей изоляции.

2
ответ дан 30 November 2019 в 23:05
поделиться

согласно другим ответам. Это кажется, что у Вас есть одиночный элемент или глобальная переменная, которая вызывает взаимодействие.

0
ответ дан 30 November 2019 в 23:05
поделиться

Все, вероятно, правы, некоторая общая дата изменяется между тестами. Но отметьте порядок Выполнения теста MS . Просто приостановка между тестами не является решением. Каждый тест выполняется в своем собственном экземпляре тестового класса на отдельном потоке.

2
ответ дан 30 November 2019 в 23:05
поделиться