Sdílet prostřednictvím


MSTEST0003: Testovací metody by měly mít platné rozložení

Vlastnost Hodnota
ID pravidla MSTEST0003
Název Testovací metody by měly mít platné rozložení
Kategorie Využití
Oprava způsobující chybu nebo chybu způsobující chybu Narušující
Povoleno ve výchozím nastavení Ano
Výchozí závažnost Upozornění (eskalované na chybu při nastavení MSTestAnalysisMode na Recommended nebo All)
Představeno ve verzi 3.2.0
Existuje oprava kódu Ano

Příčina

Testovací metoda neslouchá po jednom nebo několika bodech požadovaného rozložení testovací metody.

Popis pravidla

Testovací metody (metody označené atributem [TestMethod] ) by měly dodržovat dané rozložení, které má MSTest považovat za platné:

  • měly by být public (nebo internal pokud [assembly: DiscoverInternals] je nastavený atribut)
  • neměli by být static
  • neměly by být obecné, pokud používáte MSTest 3.7 nebo starší.
  • neměli by být abstract
  • měly by se vrátit void nebo Task
  • neměli by být async void
  • by neměly být speciální metodou (konstruktor, finalizátor, operátor...)
  • typ deklarující tuto metodu by měl být veřejný.

Jak opravit porušení

Ujistěte se, že testovací metoda odpovídá požadovanému rozložení popsanému výše.

Kdy potlačit upozornění

Nepotlačujte upozornění na toto pravidlo. Ignorování tohoto pravidla způsobí ignorování testů, protože MSTest nebude tuto metodu považovat za testovací metodu.

Potlačte upozornění

Pokud chcete pouze potlačit jedno porušení, přidejte do zdrojového souboru direktivy preprocesoru, abyste pravidlo zakázali a znovu povolili.

#pragma warning disable MSTEST0003
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0003

Chcete-li pravidlo pro soubor, složku nebo projekt zakázat, nastavte jeho závažnost na none v konfiguračním souboru .

[*.{cs,vb}]
dotnet_diagnostic.MSTEST0003.severity = none

Další informace naleznete v tématu Jak potlačit upozornění analýzy kódu.