Condividi tramite


MSTEST0032: Esaminare o rimuovere l'asserzione poiché la sua condizione è nota per essere sempre vera.

Proprietà valore
ID regola MSTEST0032
Title Esaminare o rimuovere l’asserzione perché la condizione è sempre true.
Categoria Utilizzo
La correzione causa un'interruzione o meno Non causa un'interruzione
Abilitata per impostazione predefinita
Gravità predefinita Info
Introdotto nella versione 3.5.0
È presente una correzione del codice No

Causa

Questa regola genera una diagnostica quando una chiamata a un’asserzione produce una condizione sempre vera.

Descrizione regola

Quando si verifica un’asserzione che passa sempre (ad esempio, Assert.IsTrue(true)), non è sempre ovvio a chi legge il codice perché l’asserzione è presente o quale condizione sta tentando di controllare. Questo può portare a confusione e tempo perso per gli sviluppatori che si imbattono nel codice successivamente.

Come correggere le violazioni

Assicurarsi che le chiamate a Assert.IsTrue, Assert.IsFalse, Assert.AreEqual, Assert.AreNotEqual, Assert.IsNull o Assert.IsNotNull non producano condizioni sempre true.

Quando eliminare gli avvisi

Non è consigliabile eliminare gli avvisi da questa regola.

Eliminare un avviso

Se si vuole eliminare una singola violazione, aggiungere direttive del preprocessore al file di origine per disabilitare e quindi riabilitare la regola.

#pragma warning disable MSTEST0032
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0032

Per disabilitare la regola per un file, una cartella o un progetto, impostarne la gravità su none nel file di configurazione .

[*.{cs,vb}]
dotnet_diagnostic.MSTEST0032.severity = none

Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.