MSTEST0020 : privilégiez les constructeurs plutôt que les méthodes TestInitialize
Propriété | Value |
---|---|
Identificateur de la règle | MSTEST0020 |
Titre | Privilégiez les constructeurs plutôt que les méthodes TestInitialize |
Catégorie | Concevoir |
Le correctif est cassant ou non cassant | Sans rupture |
Activé par défaut | Non |
Gravité par défaut | Infos |
Introduite dans la version | 3.4.0 |
Existe-t-il une correction de code | Oui |
Cause
Cette règle génère un diagnostic lorsqu’il existe une méthode void [TestInitialize]
.
Description de la règle
Il est généralement préférable de s’appuyer sur des constructeurs pour l’initialisation non asynchrone, car vous pouvez ensuite vous appuyer sur readonly
et obtenir de meilleurs commentaires du compilateur lors du développement de vos tests. Cela est particulièrement vrai lorsque vous traitez des contextes activés pouvant accepter la valeur Null.
Comment corriger les violations
Remplacez [TestInitialize]
retournant void
par des constructeurs.
Quand supprimer les avertissements
En général, nous recommandons de ne pas supprimer les avertissements de cette règle si vous avez décidé de l’accepter.
Remarque
Cette règle est facultative. Elle n’est pas activée, même en utilisant <MSTestAnalysisMode>All</MSTestAnalysisMode>
. Pour plus d’informations sur MSTestAnalysisMode
, consultez Analyse de code MSTest.
Supprimer un avertissement
Si vous voulez supprimer une seule violation, ajoutez des directives de préprocesseur à votre fichier source pour désactiver et réactiver la règle.
#pragma warning disable MSTEST0020
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0020
Pour désactiver la règle sur un fichier, un dossier ou un projet, définissez sa gravité sur none
dans le fichier de configuration.
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0020.severity = none
Pour plus d’informations, consultez Comment supprimer les avertissements de l’analyse de code.