Поделиться через


MSTEST0021: предпочесть методы TestCleanup

Свойство Значение
Идентификатор правила MSTEST0021
Заголовок Предпочитать методы Dispose по методу TestCleanup
Категория Проект
Исправление является критическим или не критическим Не критическое
Включен по умолчанию No
Серьезность по умолчанию Сведения
Представлено в версии 3.4.0
Есть ли исправление кода Да, начиная с версии 3.7.0

Причина

Это правило вызывает диагностику при наличии метода void [TestCleanup] или в любом [TestCleanup] случае, если целевая платформа поддерживает IAsyncDisposable интерфейс.

Описание правила

Использование Dispose или DisposeAsync является более распространенным шаблоном, и некоторые разработчики предпочитают всегда использовать этот шаблон даже для тестов.

Устранение нарушений

Замените [TestCleanup] метод по шаблону Dispose или DisposeAsync методу.

Когда лучше отключить предупреждения

Обычно вы не хотите подавлять предупреждения из этого правила, если вы решили отказаться от него.

Заметка

Это правило требует согласия на участие. Он не включен даже при использовании <MSTestAnalysisMode>All</MSTestAnalysisMode>. Более подробную информацию о MSTestAnalysisModeсм. в анализе кода MSTest .

Подавление предупреждения

Если вы просто хотите отключить одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.

#pragma warning disable MSTEST0021
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0021

Чтобы отключить правило для файла, папки или проекта, задайте его серьезность в файле конфигурации.

[*.{cs,vb}]
dotnet_diagnostic.MSTEST0021.severity = none

Дополнительные сведения см. в статье Подавление предупреждений анализа кода.