MSTEST0020. Предпочитать конструкторы по методам TestInitialize
Свойство | Значение |
---|---|
Идентификатор правила | MSTEST0020 |
Заголовок | Предпочитать конструкторы по методам TestInitialize |
Категория | Проект |
Исправление является критическим или не критическим | Не критическое |
Включен по умолчанию | No |
Серьезность по умолчанию | Сведения |
Представлено в версии | 3.4.0 |
Есть ли исправление кода | Да |
Причина
Это правило вызывает диагностику при наличии метода void [TestInitialize]
.
Описание правила
Обычно лучше полагаться на конструкторы для асинхронной инициализации, так как затем можно полагаться readonly
и получать лучшие отзывы компилятора при разработке тестов. Это особенно верно при работе с контекстами с поддержкой NULL.
Устранение нарушений
Замените [TestInitialize]
возвращаемые void
конструкторами.
Когда лучше отключить предупреждения
Обычно вы не хотите подавлять предупреждения из этого правила, если вы решили отказаться от него.
Заметка
Это правило требует согласия на участие. Он не включен даже при использовании <MSTestAnalysisMode>All</MSTestAnalysisMode>
. Дополнительные сведения о MSTestAnalysisMode
см. в анализе кода MSTest .
Подавление предупреждения
Если вы просто хотите отключить одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.
#pragma warning disable MSTEST0020
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0020
Чтобы отключить правило для файла, папки или проекта, задайте его серьезность
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0020.severity = none
Дополнительные сведения см. в статье Подавление предупреждений анализа кода.