Partilhar via


MSTEST0055: Não ignore o valor de retorno dos métodos string

Propriedade Valor
ID da regra MSTEST0055
Título Não ignore o valor de retorno dos métodos de cadeia de caracteres
Categoria Usage
A correção é invasiva ou não invasiva Non-breaking
Ativado por padrão Yes
Severidade padrão Advertência
Introduzido na versão 3.11.0
Existe uma correção de código Não

Motivo

Uma chamada para Contains, StartsWith ou EndsWith é feita e o seu valor de retorno é ignorado.

Descrição da regra

Esses métodos não têm efeitos colaterais e ignorar o resultado de retorno é sempre errado. É mais provável que a intenção original dessas chamadas seja afirmar que elas são verdadeiras.

Como corrigir violações

Capture e use o valor de retorno de métodos de cadeia de caracteres ou use um método de asserção adequado.

Por exemplo, altere isto:

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

Para isso:

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

Quando suprimir avisos

Não suprima avisos desta regra. Chamar métodos de cadeia de caracteres sem usar seu valor de retorno é sempre um bug ou um código morto.