Sdílet prostřednictvím


MSTEST0013: Metoda AssemblyCleanup by měla mít platné rozložení

Vlastnost Hodnota
ID pravidla MSTEST0013
Název Metoda AssemblyCleanup by měla mít platné rozložení
Kategorie Využití
Oprava způsobující chybu nebo chybu způsobující chybu Nenarušující
Povoleno ve výchozím nastavení Ano
Výchozí závažnost Upozorňující
Představeno ve verzi 3.3.0
Existuje oprava kódu Ano

Příčina

Metoda označená [AssemblyCleanup] pomocí by měla mít platné rozložení.

Popis pravidla

Metody označené [AssemblyCleanup] pomocí následujícího rozložení by měly být platné:

  • mělo by to být public
  • mělo by to být static
  • nemělo by to být async void
  • neměla by se jednat o speciální metodu (finalizátor, operátor...).
  • nemělo by být obecné.
  • nemělo by být abstraktní.
  • Nesmí mít žádný parametr, nebo od MSTest 3.8 může mít jeden parametr TestContext.
  • návratový typ by měl být void, Task nebo ValueTask

Typ deklarující tyto metody by měl respektovat také následující pravidla:

  • Typ by měl být třída.
  • Třída by měla být veřejná nebo interní (pokud testovací projekt používá atribut [DiscoverInternals].
  • Třída by měla být označena [TestClass] (nebo odvozeným atributem).
  • třída by neměla být obecná.

Jak opravit porušení

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

Kdy potlačit upozornění

Nepotlačujte upozornění na toto pravidlo. Pokud toto pravidlo ignorujete, instance s příznakem se buď přeskočí, nebo dojde k chybě za běhu.

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

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

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