Compartir por


MSTEST0060: Evitar atributos de método de prueba duplicados

Propiedad Importancia
Identificador de la regla MSTEST0060
Título Evitar atributos de método de prueba duplicados
Categoría Usage
La corrección es disruptiva o no disruptiva Non-breaking
Habilitado de forma predeterminada
Gravedad predeterminada Advertencia
introducido en la versión 4.1.0
¿Hay una corrección de código? No

Causa

Un método de prueba tiene varias TestMethodAttribute declaraciones.

Descripción de la regla

Un método de prueba debe tener solo un atributo que derive de TestMethodAttribute. Tener varios atributos de método de prueba (como [TestMethod] y [UITestMethod]) en el mismo método hace que solo se use un atributo (el primero devuelto por la reflexión), lo que puede resultar confuso y provocar la ejecución de pruebas no deseadas.

[TestClass]
public class TestClass
{
    [TestMethod]
    [UITestMethod] // Violation
    public void TestMethod1()
    {
        // Test code
    }
}

Cómo corregir infracciones

Quite el atributo duplicado y mantenga solo el que coincida con el propósito del método de prueba.

[TestClass]
public class TestClass
{
    [TestMethod]
    public void TestMethod1()
    {
        // Test code
    }
}

Cuándo suprimir las advertencias

No suprima las advertencias de esta regla. Tener varios atributos de método de prueba crea una configuración de prueba ambigua donde solo se usa un atributo, lo que puede causar confusión sobre qué comportamiento de prueba se aplica realmente.

Supresión de una advertencia

Si solo quiere suprimir una única infracción, agregue directivas de preprocesador al archivo de origen para deshabilitar y volver a habilitar la regla.

#pragma warning disable MSTEST0060
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0060

Para deshabilitar la regla de un archivo, una carpeta o un proyecto, establezca su gravedad a none en el archivo de configuración.

[*.{cs,vb}]
dotnet_diagnostic.MSTEST0060.severity = none

Para obtener más información, consulte Cómo suprimir advertencias de análisis de código.