MSTEST0030: il tipo contenente [TestMethod]
deve essere contrassegnato con [TestClass]
Proprietà | valore |
---|---|
ID regola | MSTEST0030 |
Title | Il tipo contenente [TestMethod] deve essere contrassegnato con [TestClass] |
Categoria | Utilizzo |
La correzione causa un'interruzione o meno | Non causa un'interruzione |
Abilitata per impostazione predefinita | Sì |
Gravità predefinita | Info |
Introdotto nella versione | 3.5.0 |
È presente una correzione del codice | No |
Causa
Il tipo contenente [TestMethod]
deve essere contrassegnato con [TestClass]
, altrimenti il metodo di test verrà ignorato automaticamente.
Descrizione regola
MSTest considera i metodi di test solo sul contesto di un contenitore di classi di test (una classe contrassegnata con [TestClass] o un attributo derivato), che potrebbe portare alcuni test ad essere ignorati in modo invisibile all'utente. Se la classe deve rappresentare un comportamento di test comune da eseguire dalle classi figlio, è consigliabile contrassegnare il tipo come astratto per chiarire la finalità per altri sviluppatori che leggono il codice.
Come correggere le violazioni
Una classe non astratta che contiene metodi di test deve essere contrassegnata con '[TestClass]'.
Quando eliminare gli avvisi
È consigliabile eliminare la diagnostica se si è certi che la classe venga ereditata e che i test dichiarati in questa classe devono essere eseguiti solo nel contesto delle sottoclassi. Tuttavia, è consigliabile contrassegnare la classe come astratta.
Eliminare un avviso
Se si vuole eliminare una singola violazione, aggiungere direttive del preprocessore al file di origine per disabilitare e quindi riabilitare la regola.
#pragma warning disable MSTEST0030
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0030
Per disabilitare la regola per un file, una cartella o un progetto, impostarne la gravità su none
nel file di configurazione .
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0030.severity = none
Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.