У меня есть несколько тестов xUnit для нескольких классов. Многие из этих классов полагаются на метод установки, вызываемый перед каждым тестом, и метод очистки, вызываемый после каждого теста.
В каждом тестовом классе у меня есть конструктор, который вызывает метод установки, и метод dispose, напримерЧтобы очистить следующее:
public override void Dispose()
{
Cleanup();
}
Каждый тестовый класс расширяет базовый класс, который расширяет класс, который наследует IDisposable
.
Когда я запускаю тесты в отдельном тестовом классе, всетесты выполняются нормально, и метод dispose вызывается правильно.
Когда я запускаю все тесты в своем решении с помощью обозревателя тестов в Visual Studio, многие тесты не выполняются, поскольку метод очистки небудучи призваннымКогда я отлаживаю тесты, я не вижу, что dispose вызывается.
Я установил пакет NuGet xunit.runner.visualstudio
, чтобы запустить тесты в Visual Studio 2019. Я использую xUnit 2.4.1.
Кто-нибудь знает, почему dispose не вызывается, когда я запускаю все тесты одновременно?