Sdílet prostřednictvím


MSTEST0021: Preferujte Dispose před metodami TestCleanup

Vlastnost Hodnota
ID pravidla MSTEST0021
Název Preferujte Dispose před metodami TestCleanup
Kategorie Návrh
Oprava způsobující chybu nebo chybu způsobující chybu Nenarušující
Povoleno ve výchozím nastavení No
Výchozí závažnost Informace
Představeno ve verzi 3.4.0
Existuje oprava kódu Ano, od verze 3.7.0

Příčina

Toto pravidlo vyvolá diagnostiku, pokud existuje metoda void [TestCleanup] nebo v případě, [TestCleanup] že cílová architektura podporuje IAsyncDisposable rozhraní.

Popis pravidla

Použití Dispose nebo DisposeAsync je častější vzor a někteří vývojáři dávají přednost tomu, aby tento vzor vždy používali i pro testy.

Jak opravit porušení

Nahraďte [TestCleanup] metodu podle Dispose vzoru.DisposeAsync

Kdy potlačit upozornění

Obvykle nechcete potlačit upozornění z tohoto pravidla, pokud jste se rozhodli vyjádřit výslovný souhlas s tímto pravidlem.

Poznámka

Toto pravidlo je na základě souhlasu. Není povolena ani při použití <MSTestAnalysisMode>All</MSTestAnalysisMode>. Další informace o MSTestAnalysisModenaleznete v tématu analýzy kódu MSTest.

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

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

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