MSTEST0021: Dispose- anstelle von TestCleanup-Methoden verwenden
Eigenschaft | Wert |
---|---|
Regel-ID | MSTEST0021 |
Titel | Dispose- anstelle von TestCleanup-Methoden verwenden |
Kategorie | Design |
Fix führt oder führt nicht zur Unterbrechung | Nicht unterbrechend |
Standardmäßig aktiviert. | Nein |
Standardschweregrad | Info |
Eingeführt in Version | 3.4.0 |
Gibt es eine Codekorrektur | Ja, ab 3.7.0. |
Ursache
Diese Regel löst eine Diagnose aus, wenn eine ungültige [TestCleanup]
-Methode oder eine beliebige [TestCleanup]
-Methode vorhanden ist und das Zielframework die IAsyncDisposable
-Schnittstelle unterstützt.
Regelbeschreibung
Die Verwendung von Dispose
oder DisposeAsync
ist gängig und wird von einigen Entwicklern/Entwicklerinnen bevorzugt verwendet – selbst bei Tests.
Behandeln von Verstößen
Ersetzen Sie die [TestCleanup]
-Methode durch das Muster Dispose
oder DisposeAsync
.
Wann sollten Warnungen unterdrückt werden?
In der Regel möchten Sie keine Warnungen von dieser Regel unterdrücken, wenn Sie sich dafür entschieden haben.
Hinweis
Diese Regel ist optional. Sie ist auch nicht aktiviert, wenn <MSTestAnalysisMode>All</MSTestAnalysisMode>
verwendet wird. Weitere Informationen zu MSTestAnalysisMode
finden Sie unter MSTest-Codeanalyse.
Unterdrücken einer Warnung
Um nur eine einzelne Verletzung zu unterdrücken, fügen Sie der Quelldatei Präprozessoranweisungen hinzu, um die Regel zu deaktivieren und dann wieder zu aktivieren.
#pragma warning disable MSTEST0021
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0021
Um die Regel für eine Datei, einen Ordner oder ein Projekt zu deaktivieren, legen Sie den Schweregrad in der Konfigurationsdatei auf none
fest.
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0021.severity = none
Weitere Informationen finden Sie unter Vorgehensweise: Unterdrücken von Codeanalyse-Warnungen.