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


MSTEST0032: Пересмотрите или удалите это утверждение, так как его условие всегда ложно.

Свойство Значение
Идентификатор правила MSTEST0032
Заголовок Просмотрите или удалите утверждение в качестве его условия, как известно, всегда имеет значение true.
Категория Использование
Исправление является критическим или не критическим Не критическое
Включен по умолчанию Да
Серьезность по умолчанию Сведения
Представлено в версии 3.5.0
Есть ли исправление кода No

Причина

Это правило вызывает диагностику, когда вызов утверждения создает условие always-true.

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

При возникновении утверждения, которое всегда проходит (например, Assert.IsTrue(true)), это не очевидно для кого-то, кто читает код, почему утверждение есть или какое условие он пытается проверить. Это может привести к путанице и тратить время для разработчиков, которые столкнулись с кодом позже.

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

Убедитесь, что вызовы Assert.IsTrue, Assert.IsFalse, Assert.AreEqualAssert.AreNotEqualAssert.IsNullили Assert.IsNotNull не производят всегда истинные условия.

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

Не рекомендуется подавлять предупреждения из этого правила.

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

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

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

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

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

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