Comparteix a través de


MSTEST0020: preferir constructores sobre los métodos TestInitialize

Propiedad Value
Identificador de la regla MSTEST0020
Título Preferir constructores sobre métodos TestInitialize
Categoría Diseño
La corrección es problemática o no problemática Poco problemático
Habilitado de forma predeterminada No
Gravedad predeterminada Información
Introducido en la versión 3.4.0
Hay una corrección de código

Causa

Esta regla genera un diagnóstico cuando hay un método void [TestInitialize].

Descripción de la regla

Normalmente es mejor confiar en constructores para la inicialización no asincrónica, ya que puede confiar en readonly y obtener mejores comentarios del compilador al desarrollar las pruebas. Esto es especialmente cierto cuando se tratan contextos habilitados para valores NULL.

Cómo corregir infracciones

Reemplace [TestInitialize] que devuelve void por constructores.

Cuándo suprimir las advertencias

Normalmente, no se recomienda suprimir las advertencias de esta regla si decidió participar en ella.

Nota:

Esta regla es opcional. No se encuentra habilitado incluso si se usa <MSTestAnalysisMode>All</MSTestAnalysisMode>. Para obtener más información sobre MSTestAnalysisMode, consulte el análisis de código de MSTest .

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 MSTEST0020
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0020

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

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

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