Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
| Недвижимость | Ценность |
|---|---|
| Идентификатор правила | MSTEST0053 |
| Заголовок | Избегайте использования методов Assert с параметрами формата |
| Категория | Usage |
| Исправление является разрушающим или неразрушающим | Non-breaking |
| Включен по умолчанию | Да |
| Серьезность по умолчанию | Предупреждение |
| представлено в версии | 3.11.0 |
| Существует ли исправление кода | Да |
Замечание
Этот анализатор больше не относится к MSTest 4, так как API утверждения с параметрами формата были удалены.
Причина
Вызов метода утверждения использует аргументы message и parameters для форматирования строк вместо интерполяции строк.
Описание правила
Использование перегрузок утверждений, которые принимают message и parameters, больше не рекомендуется. Эти перегрузки удаляются в MSTest версии 4. Вместо этого рекомендуется использовать интерполяцию строк.
Устранение нарушений
Замените вызовы, использующие параметры формата сообщения с интерполяцией строк.
Например, измените следующее:
[TestMethod]
public void TestMethod()
{
int expected = 5;
int actual = GetValue();
Assert.AreEqual(expected, actual, "Expected {0} but got {1}", expected, actual);
}
На эту:
[TestMethod]
public void TestMethod()
{
int expected = 5;
int actual = GetValue();
Assert.AreEqual(expected, actual, $"Expected {expected} but got {actual}");
}
Когда следует подавлять предупреждения
Не подавляйте предупреждения из этого правила. Эти перегрузки удаляются в MSTest версии 4 и не рекомендуется.