MSTEST0024. Не хранить TestContext в статическом элементе
Свойство | Значение |
---|---|
Идентификатор правила | MSTEST0024 |
Заголовок | Не хранить TestContext в статическом элементе |
Категория | Использование |
Исправление является критическим или не критическим | Не критическое |
Включен по умолчанию | Да |
Серьезность по умолчанию | Сведения |
Представлено в версии | 3.4.0 |
Есть ли исправление кода | No |
Причина
Это правило вызывает диагностику при выполнении назначения static
члену TestContext
параметра.
Описание правила
Параметр TestContext
, передаваемый каждому методу инициализации ([AssemblyInitialize]
или [ClassInitialize]
) зависит от текущего контекста и не обновляется при каждом выполнении теста. Хранение, для повторного использования, этот TextContext
объект в большинстве случаев приведет к проблемам.
Устранение нарушений
Не сохраняйте или [AssemblyInitialize]
[ClassInitialize]
не сохраняйте TestContext
параметр.
Когда лучше отключить предупреждения
Вы можете отключить предупреждения из этого правила, если вы уверены, что поведение соответствует тому, что вы хотите сделать.
Подавление предупреждения
Если вы просто хотите отключить одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.
#pragma warning disable MSTEST0024
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0024
Чтобы отключить правило для файла, папки или проекта, задайте его серьезность
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0024.severity = none
Дополнительные сведения см. в статье Подавление предупреждений анализа кода.