MSTEST0017. Аргументы утверждения должны передаваться в правильном порядке
Свойство | Значение |
---|---|
Идентификатор правила | MSTEST0017 |
Заголовок | Аргументы утверждения должны передаваться в правильном порядке |
Категория | Использование |
Исправление является критическим или не критическим | Не критическое |
Включен по умолчанию | Да |
Серьезность по умолчанию | Сведения |
Представлено в версии | 3.4.0 |
Исправление кода | Да |
Причина
Это правило вызывает проблему при вызове Assert.AreEqual
, Assert.AreNotEqual
Assert.AreSame
или Assert.AreNotSame
в одном или нескольких из приведенных ниже шаблонов:
actual
аргумент является константой или литеральным значениемactual
переменная аргумента начинается сexpected
или_expected
Expected
expected
илиnotExpected
переменная аргумента начинается сactual
actual
не является локальной переменной
Описание правила
MSTest Assert.AreEqual
, Assert.AreNotEqual
Assert.AreSame
и Assert.AreNotSame
ожидает, что первый аргумент будет ожидаемым/непредвиденным значением, а второй аргумент должен быть фактическим значением.
Наличие ожидаемого значения и фактического значения в неправильном порядке не изменит результат теста (успешно или завершается сбоем, когда он должен), но сбой утверждения будет содержать вводящую информацию.
Устранение нарушений
Убедитесь, что actual
и expected
/notExpected
аргументы передаются в правильном порядке.
Когда лучше отключить предупреждения
Не подавляйте предупреждение из этого правила, так как это приведет к вводу в заблуждение выходных данных.