MSTEST0024: No almacenar TestContext en un miembro estático
Propiedad | Value |
---|---|
Identificador de la regla | MSTEST0024 |
Título | No almacenar TestContext en un miembro estático |
Categoría | Uso |
La corrección es problemática o no problemática | Poco problemático |
Habilitado de forma predeterminada | Sí |
Gravedad predeterminada | Información |
Introducido en la versión | 3.4.0 |
Hay una corrección de código | No |
Causa
Esta regla genera un diagnóstico cuando se realiza una asignación a un miembro static
de un parámetro TestContext
.
Descripción de la regla
El parámetro TestContext
pasado a cada método initialize ([AssemblyInitialize]
o [ClassInitialize]
) es específico del contexto actual y no se actualiza en cada ejecución de prueba. Almacenar, para su reutilización, este objeto TextContext
provocará problemas la mayor parte del tiempo.
Cómo corregir infracciones
No almacene el parámetro [AssemblyInitialize]
para los métodos [ClassInitialize]
y TestContext
.
Cuándo suprimir las advertencias
Puede suprimir las advertencias de esta regla si tiene la certeza de que el comportamiento coincide con lo que desea hacer.
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 MSTEST0024
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0024
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.MSTEST0024.severity = none
Para obtener más información, consulte Procedimiento para suprimir advertencias de análisis de código.