Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
| Propiedad | Importancia |
|---|---|
| Identificador de la regla | MSTEST0055 |
| Título | No ignore el valor devuelto de los métodos de cadena |
| Categoría | Usage |
| La corrección es disruptiva o no disruptiva | Non-breaking |
| Habilitado de forma predeterminada | Sí |
| Gravedad predeterminada | Advertencia |
| introducido en la versión | 3.11.0 |
| ¿Hay una corrección de código? | No |
Causa
Se realiza una llamada a string.Contains, string.StartsWitho string.EndsWith y se omite su valor devuelto.
Descripción de la regla
Esos métodos no tienen ningún efecto secundario y siempre es incorrecto ignorar el resultado devuelto. Es más probable que la intención original de esas llamadas sea afirmar que son verdaderas.
Cómo corregir infracciones
Capture y use el valor devuelto de los métodos de cadena o use un método de aserción adecuado.
Por ejemplo, cambie esto:
[TestMethod]
public void TestMethod()
{
string value = "Hello world";
value.StartsWith("Hello");
}
Por esta otra:
[TestMethod]
public void TestMethod()
{
string value = "Hello world";
Assert.IsTrue(value.StartsWith("Hello")); // or, Assert.StartsWith("Hello", value);
}
Cuándo suprimir las advertencias
No suprima advertencias de esta regla. Llamar a métodos de cadena sin usar su valor devuelto siempre es un error o un código fallido.