Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
| Недвижимость | Ценность |
|---|---|
| Идентификатор правила | MSTEST0055 |
| Заголовок | Не игнорируйте возвращаемое значение строковых методов |
| Категория | Usage |
| Исправление является разрушающим или неразрушающим | Non-breaking |
| Включен по умолчанию | Да |
| Серьезность по умолчанию | Предупреждение |
| представлено в версии | 3.11.0 |
| Существует ли исправление кода | нет |
Причина
Вызов Contains, StartsWith, или EndsWith выполняется, и его возвращаемое значение игнорируется.
Описание правила
Эти методы не имеют побочных эффектов, и игнорировать результат возврата всегда неправильно. Скорее всего, основная цель этих вызовов заключается в том, чтобы подтвердить их истинность.
Устранение нарушений
Захватывайте и используйте возвращаемое значение из строковых методов или применяйте корректный метод утверждения.
Например, измените следующее:
[TestMethod]
public void TestMethod()
{
string value = "Hello world";
value.StartsWith("Hello");
}
На эту:
[TestMethod]
public void TestMethod()
{
string value = "Hello world";
Assert.IsTrue(value.StartsWith("Hello")); // or, Assert.StartsWith("Hello", value);
}
Когда следует подавлять предупреждения
Не подавляйте предупреждения из этого правила. Вызов строковых методов без использования возвращаемого значения всегда является ошибкой или мертвым кодом.