MSTEST0030 : le type contenant [TestMethod]
doit être marqué avec [TestClass]
Propriété | Value |
---|---|
Identificateur de la règle | MSTEST0030 |
Titre | Le type contenant [TestMethod] doit être marqué avec [TestClass] |
Catégorie | Utilisation |
Le correctif est cassant ou non cassant | Sans rupture |
Activé par défaut | Oui |
Gravité par défaut | Infos |
Introduite dans la version | 3.5.0 |
Existe-t-il un correctif de code | Non |
Cause
La [TestMethod]
de type contenant doit être marquée avec [TestClass]
. Sinon, la méthode de test est ignorée en mode silencieux.
Description de la règle
MSTest considère les méthodes de test uniquement dans le contexte d’un conteneur de classe de test (une classe marquée avec [TestClass] ou un attribut dérivé), ce qui peut entraîner l’ignorer silencieusement de certains tests. Si votre classe est censée représenter le comportement de test commun à exécuter par les classes enfants, il est recommandé de marquer le type comme abstrait pour clarifier l’intention pour les autres développeurs qui lisent le code.
Comment corriger les violations
Une classe non abstraite contient des méthodes de test doivent être marquées avec « [TestClass] ».
Quand supprimer les avertissements
Il est sûr de supprimer le diagnostic si vous êtes sûr que votre classe est héritée et que les tests déclarés sur cette classe ne doivent être exécutés que dans le contexte des sous-classes. Néanmoins, nous vous recommandons de marquer la classe comme abstraite.
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 MSTEST0030
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0030
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.MSTEST0030.severity = none
Pour plus d’informations, consultez Comment supprimer les avertissements d’analyse du code.