MSTEST0017: Argumenty kontrolního výrazu by měly být předány ve správném pořadí.
Vlastnost | Hodnota |
---|---|
ID pravidla | MSTEST0017 |
Název | Argumenty kontrolního výrazu by měly být předány ve správném pořadí. |
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 | Informace |
Představeno ve verzi | 3.4.0 |
Existuje oprava kódu. | Ano |
Příčina
Toto pravidlo vyvolá problém při volání Assert.AreEqual
, Assert.AreNotEqual
Assert.AreSame
nebo Assert.AreNotSame
jsou následující jeden nebo více vzorů:
actual
argument je konstantní nebo literální hodnota.actual
argumentová proměnná začíná řetězcemexpected
,_expected
neboExpected
expected
nebonotExpected
proměnná argumentu začíná naactual
actual
není místní proměnná.
Popis pravidla
MSTest Assert.AreEqual
, Assert.AreNotEqual
Assert.AreSame
a Assert.AreNotSame
očekává, že první argument bude očekávaná/neočekávaná hodnota a druhý argument bude skutečnou hodnotou.
Když budete mít očekávanou hodnotu a skutečnou hodnotu v nesprávném pořadí, nezmění se výsledek testu (úspěšné nebo neúspěšné), ale selhání kontrolního výrazu bude obsahovat zavádějící informace.
Jak opravit porušení
Ujistěte se, že actual
expected
/notExpected
jsou argumenty předány ve správném pořadí.
Kdy potlačit upozornění
Nepotlačujte upozornění z tohoto pravidla, protože by to vedlo k zavádějícímu výstupu.