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 | Sí |
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.