Sdílet prostřednictvím


Pravidla použití MSTest

Pravidla, která podporují správné použití MSTestu

Identifier Name Description
MSTEST0002 TestClassShouldBeValidAnalyzer Testovací třída nedodržuje jeden nebo více bodů požadovaného uspořádání testovací třídy.
MSTEST0003 TestMethodShouldBeValidAnalyzer Testovací metoda neslouchá po jednom nebo několika bodech požadovaného rozložení testovací metody.
MSTEST0005 TestContextShouldBeValidAnalyzer Vlastnost kontextu testu neslouchá po jednom nebo několika bodech požadovaného rozložení kontextu testu.
MSTEST0007 UseAttributeOnTestMethodAnalyzer Metoda, která není označena TestMethodAttribute má jeden nebo více testovacích atributů.
MSTEST0008 TestInitializeShouldBeValidAnalyzer Metoda označená [TestInitialize] pomocí by měla mít platné rozložení.
MSTEST0009 TestCleanupShouldBeValidAnalyzer Metoda označená [TestCleanup] pomocí by měla mít platné rozložení.
MSTEST0010 ClassInitializeShouldBeValidAnalyzer Metoda označená [ClassInitialize] pomocí by měla mít platné rozložení.
MSTEST0011 ClassCleanupShouldBeValidAnalyzer Metoda označená [ClassCleanup] pomocí by měla mít platné rozložení.
MSTEST0012 AssemblyInitializeShouldBeValidAnalyzer Metoda označená [AssemblyInitialize] pomocí by měla mít platné rozložení.
MSTEST0013 AssemblyCleanupShouldBeValidAnalyzer Metoda označená [AssemblyCleanup] pomocí by měla mít platné rozložení.
MSTEST0014 DataRowShouldBeValidAnalyzer Instance [DataRow] neslouchá po jednom nebo několika bodech požadovaného DataRow rozložení.
MSTEST0017 AssertionArgsShouldBePassedInCorrectOrder Toto pravidlo vyvolá problém při volání Assert.AreEqual, Assert.AreNotEqualAssert.AreSame nebo Assert.AreNotSame jsou následující jeden nebo více vzorů:

- actual argument je konstantní nebo literální hodnota.
- actual proměnná argumentu začíná na expected, _expected nebo Expected
- expected nebo notExpected argument
proměnná začíná na actual
- actual není místní proměnná.
MSTEST0018 DynamicDataShouldBeValidAnalyzer Metoda označená [DynamicData] pomocí by měla mít platné rozložení.
MSTEST0023 DoNotNegateBooleanAssertionAnalyzer Toto pravidlo vyvolá diagnostiku, pokud volání Assert.IsTrue nebo Assert.IsFalse obsahuje negatedovaný argument.
MSTEST0024 DoNotStoreStaticTestContextAnalyzer Toto pravidlo vyvolá diagnostiku při přiřazení static členu parametru TestContext .
MSTEST0026 AssertionArgsShouldAvoidConditionalAccessRuleId Toto pravidlo vyvolá diagnostiku, pokud je argument obsahující podmíněný operátor(?.) null nebo ?[] předán následující metody kontrolního výrazu:

- Assert.IsTrue
- Assert.IsFalse
- Assert.AreEqual
- Assert.AreNotEqual
- Assert.AreSame
- Assert.AreNotSame
- CollectionAssert.AreEqual
- CollectionAssert.AreNotEqual
- CollectionAssert.AreEquivalent
- CollectionAssert.AreNotEquivalent
- CollectionAssert.Contains
- CollectionAssert.DoesNotContain
- CollectionAssert.AllItemsAreNotNull
- CollectionAssert.AllItemsAreUnique
- CollectionAssert.AllItemsAreInstancesOfType
- CollectionAssert.IsSubsetOf
- CollectionAssert.IsNotSubsetOf
- StringAssert.Contains
- StringAssert.StartsWith
- StringAssert.EndsWith
- StringAssert.Matches
- StringAssert.DoesNotMatch
MSTEST0030 TypeContainingTestMethodShouldBeATestClass Typ obsahující [TestMethod] by měl být označen pomocí [TestClass], jinak testovací metoda bude bezobslužně ignorována.
MSTEST0031 DoNotUseSystemDescriptionAttribute System.ComponentModel.DescriptionAttribute nemá žádný vliv v kontextu testů.
MSTEST0032 ReviewAlwaysTrueAssertConditionAnalyzer Toto pravidlo vyvolá diagnostiku, když volání kontrolního výrazu vytvoří vždy pravdivou podmínku.
MSTEST0034 UseClassCleanupBehaviorEndOfClass Toto pravidlo vyvolá diagnostiku, pokud ClassCleanupBehavior.EndOfClass není nastavená pomocí parametru [ClassCleanup].
MSTEST0035 UseDeploymentItemWithTestMethodOrTestClassTitle Toto pravidlo vyvolá diagnostiku, pokud [DeploymentItem] není nastavená pro testovací třídu nebo testovací metodu.
MSTEST0037 UseProperAssertMethodsAnalyzer Použití Assert metod určitým způsobem, pokud existuje lepší alternativa.
MSTEST0038 AvoidAssertAreSameWithValueTypesAnalyzer Použití Assert.AreSame nebo Assert.AreNotSame s jedním nebo oběma argumenty typu hodnoty.
MSTEST0039 UseNewerAssertThrowsAnalyzer Použití Assert.ThrowsException nebo Assert.ThrowsExceptionAsync, které již není doporučováno.
MSTEST0040 AvoidUsingAssertsInAsyncVoidContextAnalyzer Použití jakékoli metody kontrolního výrazu v metodě async void, místní funkci nebo lambda.
MSTEST0041 UseConditionBaseWithTestClassAnalyzer Použití atributu, který dědí z ConditionBaseAttribute, na třídě, která není označena TestClassAttribute.
MSTEST0042 DuplicateDataRowAnalyzer Testovací metoda má dva nebo více atributů DataRow , které jsou ekvivalentní.
MSTEST0043 UseRetryWithTestMethodAnalyzer Metoda má atribut, který je odvozen od RetryBaseAttribute a nemá atribut, který je odvozen z TestMethodAttribute.
MSTEST0046 StringAssertToAssertAnalyzer Testovací metoda používá StringAssert metody místo ekvivalentních Assert metod.
MSTEST0048 TestContextPropertyUsageAnalyzer Metoda zařízení (metody s AssemblyInitializeAttribute, AssemblyCleanupAttribute, ClassInitializeAttributenebo ClassCleanupAttribute) přistupuje k omezeným TestContext vlastnostem.
MSTEST0049 FlowTestContextCancellationTokenAnalyzer Volání metody v rámci testovacího kontextu nepoužívá CancellationToken, které je dostupné ve TestContext, když volaná metoda má parametr nebo přetížení přijímající CancellationToken.
MSTEST0050 GlobalTestFixtureShouldBeValidAnalyzer Metoda globálního testovacího zařízení (označená GlobalTestInitializeAttribute nebo GlobalTestCleanupAttribute) neodpovídá požadovanému rozložení nebo má neplatnou konfiguraci.
MSTEST0051 AssertThrowsShouldContainSingleStatementAnalyzer Volání na Throws, ThrowsAsync, ThrowsExactly nebo ThrowsExactlyAsync obsahuje více příkazů v akčním delegátu.
MSTEST0052 AvoidExplicitDynamicDataSourceTypeAnalyzer Explicitně DynamicDataAttribute určuje Property nebo Method místo použití výchozího AutoDetect.
MSTEST0053 Vyhněte seAssertFormatParametersAnalyzer Volání metody message používá argumenty parameters k formátování řetězců, místo aby používaly interpolaci řetězců.
MSTEST0054 PoužitíCancellationTokenPropertyAnalyzer Přistupovat k CancellationToken přes TestContext.CancellationTokenSource.Token místo použití vlastnosti TestContext.CancellationToken.
MSTEST0055 IgnoreStringMethodReturnValueAnalyzer Volání string.Contains, string.StartsWith, nebo string.EndsWith je provedeno a jeho návratová hodnota je ignorována.