Condividi tramite


MSTEST0003: i metodi di test devono avere un layout valido

Proprietà valore
ID regola MSTEST0003
Title I metodi di test devono avere un layout valido
Categoria Utilizzo
La correzione causa un'interruzione o meno Interruzione
Abilitata per impostazione predefinita
Gravità predefinita Avviso
Introdotto nella versione 3.2.0
È presente una correzione del codice

Causa

Un metodo di test non segue uno o più punti del layout del metodo di test richiesto.

Descrizione regola

I metodi di test (metodi contrassegnati con l'attributo [TestMethod]) devono seguire il layout specificato per essere considerati validi da MSTest:

  • devono essere public (o internal se l'attributo [assembly: DiscoverInternals] è impostato)
  • non devono essere static
  • non devono essere generici
  • non devono essere abstract
  • devono restituire void o Task
  • non devono essere async void
  • non devono essere un metodo speciale (costruttore, finalizzatore, operatore...)
  • il tipo che dichiara questo metodo deve essere pubblico

Come correggere le violazioni

Assicurati che il metodo di test corrisponda al layout richiesto descritto in precedenza.

Quando eliminare gli avvisi

Non escludere un avviso da questa regola. Ignorando questa regola, i test saranno ignorati, perché MSTest non considererà questo metodo come un metodo di test.

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 MSTEST0003
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0003

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.MSTEST0003.severity = none

Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.