Partage via


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.