Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
| Vlastnost | Hodnota |
|---|---|
| Pravidlo ID | MSTEST0037 |
| název | Použití správných metod Assert |
| Kategorie | Použití |
| Oprava je destruktivní nebo nedestruktivní | Nepřerušované |
| Povoleno ve výchozím nastavení | Ano |
| výchozí úroveň závažnosti | Upozornění počínaje verzí 4.0.0; Informace předtím |
| Představeno ve verzi | 3.7.0 |
| Existuje oprava kódu | Ano |
Příčina
Použití Assert metod určitým způsobem, pokud existuje lepší alternativa.
Popis pravidla
Existuje několik případů, kdy se zobrazí toto upozornění:
Použití
Assert.IsTrue(<expression> == null)(se všemi kombinacemi, jako jsouIsFalse,!= null,is nullnebois not null).Lepší alternativou je použití
Assert.IsNull(<expression>)neboAssert.IsNotNull(<expression>).Použití
Assert.IsTrue(<expression1> == <expression2>)(se všemi kombinacemi, jako jsouIsFalsenebo!=).Lepší alternativou je použití
Assert.AreEqual(<expression1>, <expression2>)neboAssert.AreNotEqual(<expression1>, <expression2>).Použití
Assert.AreEqual(true, <expression>)neboAssert.AreEqual(false, <expression>).Lepší alternativou je použití
Assert.IsTrue(<expression>)neboAssert.IsFalse(<expression>).Použití
Assert.AreEqual(null, <expression>)neboAssert.AreNotEqual(null, <expression>).Lepší alternativou je použití
Assert.IsNull(<expression>)neboAssert.IsNotNull<expression>.
V mnoha případech lepší alternativy poskytují lepší zprávy, když selžou a jsou také snadněji čitelné.
Jak opravit porušení
Použijte lepší alternativní metodu.
Kdy potlačit upozornění
Pokud je asercion určen k ověření chování uživatelsky definovaného operátoru, můžete a měli byste potlačit upozornění.
Potlačení 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 MSTEST0037
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0037
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.MSTEST0037.severity = none
Další informace naleznete v tématu Jak potlačit upozornění analýzy kódu.