MSTEST0013 : La méthode AssemblyCleanup doit avoir une disposition valide
Propriété | Value |
---|---|
Identificateur de la règle | MSTEST0013 |
Titre | La méthode AssemblyCleanup doit avoir une disposition valide |
Catégorie | Utilisation |
Le correctif est cassant ou non cassant | Sans rupture |
Activé par défaut | Oui |
Gravité par défaut | Avertissement |
Introduite dans la version | 3.3.0 |
Existe-t-il une correction de code | Oui |
Cause
Une méthode marquée avec [AssemblyCleanup]
doit avoir une disposition valide.
Description de la règle
Les méthodes marquées avec [AssemblyCleanup]
doivent suivre la disposition suivante pour être valides :
- elle doit être
public
- elle doit être
static
- elle ne doit pas être
async void
- elle ne doit pas être une méthode spéciale (finaliseur, opérateur...).
- elle ne doit pas être générique
- il ne doit pas être abstrait
- Il ne doit pas prendre de paramètre, ou à partir de MSTest 3.8, il peut avoir un seul paramètre
TestContext
. - le type de retour doit être
void
,Task
ouValueTask
Le type déclarant ces méthodes doit également respecter les règles suivantes :
- Le type doit être une classe.
- La classe doit être publique ou interne (si le projet de test utilise l’attribut [DiscoverInternals]).
- La classe doit être marquée avec [TestClass] (ou un attribut dérivé)
- la classe ne doit pas être générique
Comment corriger les violations
Veillez à ce que la méthode corresponde à la disposition décrite ci-dessus.
Quand supprimer les avertissements
Ne supprimez aucun avertissement de cette règle. Si vous ignorez cette règle, les instances marquées sont ignorées ou entraînent une erreur d’exécution.
Supprimer un avertissement
Si vous souhaitez simplement supprimer une seule violation, ajoutez des directives de préprocesseur à votre fichier source pour désactiver, puis réactivez la règle.
#pragma warning disable MSTEST0013
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0013
Pour désactiver la règle d’un fichier, d’un dossier ou d’un projet, définissez sa gravité sur none
dans le fichier de configuration .
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0013.severity = none
Pour plus d’informations, consultez Comment supprimer les avertissements d’analyse du code.