Condividi tramite


MSTEST0055: non ignorare il valore restituito dei metodi della stringa

Proprietà Value
ID Regola MSTEST0055
Titolo Non ignorare il valore restituito dai metodi di stringa
Categoria Usage
La correzione causa un'interruzione o meno Non causa un'interruzione
Abilitato per impostazione predefinita Yes
Gravità predefinita Avvertimento
Introdotto nella versione 3.11.0
È presente una correzione del codice NO

Motivo

Viene eseguita una chiamata a string.Contains, string.StartsWitho string.EndsWith e il relativo valore restituito viene ignorato.

Descrizione regola

Questi metodi non hanno effetti collaterali e ignorando il risultato restituito è sempre sbagliato. È più probabile che l'intento originale di tali chiamate sia quello di affermare che sono vere.

Come correggere le violazioni

Acquisire e usare il valore restituito dai metodi stringa oppure usare un metodo di asserzione appropriato.

Ad esempio, modificare il codice seguente:

[TestMethod]
public void TestMethod()
{
    string value = "Hello world";
    value.StartsWith("Hello");
}

In questa:

[TestMethod]
public void TestMethod()
{
    string value = "Hello world";
    Assert.IsTrue(value.StartsWith("Hello")); // or, Assert.StartsWith("Hello", value);
}

Quando eliminare gli avvisi

Non eliminare gli avvisi da questa regola. La chiamata di metodi stringa senza usare il valore restituito è sempre un bug o un codice non valido.