Sdílet prostřednictvím


MSTEST0010: Metoda ClassInitialize by měla mít platné rozložení

Vlastnost Hodnota
ID pravidla MSTEST0010
Název Metoda ClassInitialize 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

Příčina

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

Popis pravidla

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

  • nelze deklarovat v obecné třídě bez InheritanceBehavior nastavení režimu.
  • 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é.
  • měl by mít jeden parametr typu. 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 .class
  • Měl class by být public nebo internal (pokud testovací projekt používá [DiscoverInternals] atribut).
  • Nemělo class by to být static.
  • Pokud je sealed, class měla by být označena (nebo odvozeným atributem [TestClass] ).
  • 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.