Dela via


MSTest-användningsregler

Regler som stöder korrekt användning av MSTest.

Identifier Name Description
MSTEST0002 TestClassShouldBeValidAnalyzer En testklass följer inte en eller flera punkter i den obligatoriska testklasslayouten.
MSTEST0003 TestMethodShouldBeValidAnalyzer En testmetod följer inte enstaka eller flera punkter i den obligatoriska testmetodlayouten.
MSTEST0005 TestContextShouldBeValidAnalyzer En testkontextegenskap följer inte enstaka eller flera punkter i den obligatoriska testkontextlayouten.
MSTEST0007 UseAttributeOnTestMethodAnalyzer En metod som inte är markerad med TestMethodAttribute har ett eller flera testattribut.
MSTEST0008 TestInitializeShouldBeValidAnalyzer En metod som är markerad med [TestInitialize] ska ha en giltig layout.
MSTEST0009 TestCleanupShouldBeValidAnalyzer En metod som är markerad med [TestCleanup] ska ha en giltig layout.
MSTEST0010 ClassInitializeShouldBeValidAnalyzer En metod som är markerad med [ClassInitialize] ska ha en giltig layout.
MSTEST0011 ClassCleanupShouldBeValidAnalyzer En metod som är markerad med [ClassCleanup] ska ha en giltig layout.
MSTEST0012 AssemblyInitializeShouldBeValidAnalyzer En metod som är markerad med [AssemblyInitialize] ska ha en giltig layout.
MSTEST0013 AssemblyCleanupShouldBeValidAnalyzer En metod som är markerad med [AssemblyCleanup] ska ha en giltig layout.
MSTEST0014 DataRowShouldBeValidAnalyzer En instans av [DataRow] följer inte en eller flera punkter i den nödvändiga DataRow layouten.
MSTEST0017 AssertionArgsShouldBePassedInCorrectOrder Den här regeln genererar ett problem när anrop till Assert.AreEqual, Assert.AreNotEqualAssert.AreSame eller Assert.AreNotSame följer ett eller flera av mönstren nedan:

- actual argumentet är ett konstant eller literalt värde
- actual argumentvariabeln börjar med expected, _expected eller Expected
- expected eller notExpected argument
variabeln börjar med actual
- actual är inte en lokal variabel
MSTEST0018 DynamicDataShouldBeValidAnalyzer En metod som är markerad med [DynamicData] ska ha en giltig layout.
MSTEST0023 DoNotNegateBooleanAssertionAnalyzer Den här regeln genererar en diagnostik när ett anrop till Assert.IsTrue eller Assert.IsFalse innehåller ett negerat argument.
MSTEST0024 DoNotStoreStaticTestContextAnalyzer Den här regeln genererar en diagnostik när en tilldelning till en static medlem i en TestContext parameter görs.
MSTEST0026 AssertionArgsShouldAvoidConditionalAccessRuleId Den här regeln genererar en diagnostik när ett argument som innehåller en villkorsoperator(?.) för null eller ?[] skickas till försäkransmetoderna nedan:

- 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 som innehåller [TestMethod] ska markeras med [TestClass], annars ignoreras testmetoden tyst.
MSTEST0031 DoNotUseSystemDescriptionAttribute "System.ComponentModel.DescriptionAttribute" har ingen effekt i samband med tester.
MSTEST0032 ReviewAlwaysTrueAssertConditionAnalyzer Den här regeln genererar en diagnostik när ett anrop till en försäkran genererar ett villkor som alltid är sant.
MSTEST0034 UseClassCleanupBehaviorEndOfClass Den här regeln genererar en diagnostik när ClassCleanupBehavior.EndOfClass inte har angetts med [ClassCleanup].
MSTEST0035 UseDeploymentItemWithTestMethodOrTestClassTitle Den här regeln genererar en diagnostik när [DeploymentItem] den inte har angetts för testklassen eller testmetoden.
MSTEST0037 UseProperAssertMethodsAnalyzer Användningen av Assert metoder på ett visst sätt när det finns ett bättre alternativ.
MSTEST0038 AvoidAssertAreSameWithValueTypesAnalyzer Användningen av Assert.AreSame eller Assert.AreNotSame där ett eller båda argumenten är en värdetyp.
MSTEST0039 UseNewerAssertThrowsAnalyzer Användning av Assert.ThrowsException eller Assert.ThrowsExceptionAsync, som inte längre rekommenderas.
MSTEST0040 AvoidUsingAssertsInAsyncVoidContextAnalyzer Användning av en assertionsmetod i en async void-metod, lokal funktion eller lambda.
MSTEST0041 UseConditionBaseWithTestClassAnalyzer Användningen av ett attribut som ärver från ConditionBaseAttribute i en klass som inte är markerad med TestClassAttribute.
MSTEST0042 DuplicateDataRowAnalyzer En testmetod har två eller flera DataRow-attribut som är likvärdiga.
MSTEST0043 UseRetryWithTestMethodAnalyzer En metod har ett attribut som härleds från RetryBaseAttribute och inte har ett attribut som härleds från TestMethodAttribute.
MSTEST0046 StringAssertToAssertAnalyzer En testmetod använder StringAssert metoder i stället för motsvarande Assert metoder.
MSTEST0048 TestContextPropertyUsageAnalyzer En fixturmetod (metoder med AssemblyInitializeAttribute, AssemblyCleanupAttribute, ClassInitializeAttributeeller ClassCleanupAttribute) har åtkomst till begränsade TestContext egenskaper.
MSTEST0049 FlowTestContextCancellationTokenAnalyzer Ett metodanrop i en testkontext använder inte det CancellationToken tillgängliga från TestContext när den anropade metoden har en parameter eller överlagring som accepterar en CancellationToken.
MSTEST0050 GlobalTestFixtureShouldBeValidAnalyzer En global testfixturmetod (markerad med GlobalTestInitializeAttribute eller GlobalTestCleanupAttribute) följer inte den layout som krävs eller har en ogiltig konfiguration.
MSTEST0051 AssertThrowsShouldContainSingleStatementAnalyzer Ett anrop till Throws, ThrowsAsync, ThrowsExactlyeller ThrowsExactlyAsync innehåller flera instruktioner i åtgärdsdelegaten.
MSTEST0052 AvoidExplicitDynamicDataSourceTypeAnalyzer A DynamicDataAttribute anger Property uttryckligen eller Method i stället för att använda standardvärdet AutoDetect.
MSTEST0053 AvoidAssertFormatParametersAnalyzer Ett kontrollmetodanrop använder argumenten message och parameters för strängformatering i stället för att använda stränginterpolation.
MSTEST0054 UseCancellationTokenPropertyAnalyzer CancellationToken Åtkomst via TestContext.CancellationTokenSource.Token i stället för att använda egenskapen TestContext.CancellationToken.
MSTEST0055 IgnoreStringMethodReturnValueAnalyzer Ett anrop till string.Contains, string.StartsWitheller string.EndsWith görs och dess returvärde ignoreras.