MSTest の使用規則

MSTest の適切な使用をサポートする規則。

識別子 名前 説明
MSTEST0002 TestClassShouldBeValidAnalyzer テスト クラス ([TestClass] 属性でマークされたクラス) は、MSTest によって有効であると見なされるように、次のレイアウトを考慮する必要があります。
- public (または、[assembly: DiscoverInternals] 属性が設定されている場合は internal) である必要があります
- static にすることはできません
- ジェネリックにすることはできません。
MSTEST0003 TestMethodShouldBeValidAnalyzer テスト メソッド ([TestMethod] 属性でマークされたメソッド) は、MSTest によって有効であると見なされるように、次のレイアウトを考慮する必要があります。
- public (または、[assembly: DiscoverInternals] 属性が設定されている場合は internal) である必要があります
- static にすることはできません
- ジェネリックにすることはできません
- abstract にすることはできません
- 戻り値の型は void または Task である必要があります
- async void にすることはできません
- これを (たとえば、ファイナライザーや演算子などの) 特殊なメソッドにすることはできません。
MSTEST0005 TestContextShouldBeValidAnalyzer TestContext プロパティが有効であるには、次のレイアウトに従う必要があります。
- プロパティである必要があります
- public (または、[assembly: DiscoverInternals] 属性が設定されている場合は internal) である必要があります
- static にすることはできません
- 読み取り専用にすることはできません。
MSTEST0007 UseAttributeOnTestMethodAnalyzer 次のテスト属性は、TestMethodAttribute 属性のマークが付けられたメソッドにのみ適用する必要があります。
- [CssIteration]
- [CssProjectStructure]
- [Description]
- [ExpectedException]
- [Owner]
- [Priority]
- [TestProperty]
- [WorkItem]
MSTEST0008 TestInitializeShouldBeValidAnalyzer [TestInitialize] というマークが付いたメソッドを有効にするには、以下のレイアウトに従う必要があります。
- これは public である必要があります
- static にすることはできません
- ジェネリックにすることはできません
- abstract にすることはできません
- これはパラメーターを受け取ることはできません
- 戻り値の型は voidTaskValueTask のどれかである必要があります
- async void にすることはできません
- これを特殊なメソッド (ファイナライザー、演算子など) にすることはできません。
MSTEST0009 TestCleanupShouldBeValidAnalyzer [TestCleanup] というマークが付いたメソッドを有効にするには、以下のレイアウトに従う必要があります。
- これは public である必要があります
- static にすることはできません
- ジェネリックにすることはできません
- abstract にすることはできません
- これはパラメーターを受け取ることはできません
- 戻り値の型は voidTaskValueTask のどれかである必要があります
- async void にすることはできません
- これを特殊なメソッド (ファイナライザー、演算子など) にすることはできません。
MSTEST0010 ClassInitializeShouldBeValidAnalyzer [ClassInitialize] というマークが付いたメソッドを有効にするには、以下のレイアウトに従う必要があります。
- これは public である必要があります
- これは static である必要があります
- ジェネリックにすることはできません
- これは型が TestContext である 1 つのパラメーターを受け取る必要があります
- 戻り値の型は voidTaskValueTask のどれかである必要があります
- async void にすることはできません
- これを特殊なメソッド (ファイナライザー、演算子など) にすることはできません。
MSTEST0011 ClassCleanupShouldBeValidAnalyzer [ClassCleanup] というマークが付いたメソッドを有効にするには、以下のレイアウトに従う必要があります。
- これは public である必要があります
- これは static である必要があります
- ジェネリックにすることはできません
- これはパラメーターを受け取ることはできません
- 戻り値の型は voidTaskValueTask のどれかである必要があります
- async void にすることはできません
- これを特殊なメソッド (ファイナライザー、演算子など) にすることはできません。
MSTEST0012 AssemblyInitializeShouldBeValidAnalyzer [AssemblyInitialize] というマークが付いたメソッドを有効にするには、以下のレイアウトに従う必要があります。
- これは public である必要があります
- これは static である必要があります
- ジェネリックにすることはできません
- これは型が TestContext である 1 つのパラメーターを受け取る必要があります
- 戻り値の型は voidTaskValueTask のどれかである必要があります
- async void にすることはできません
- これを特殊なメソッド (ファイナライザー、演算子など) にすることはできません。
MSTEST0013 AssemblyCleanupShouldBeValidAnalyzer [AssemblyCleanup] というマークが付いたメソッドを有効にするには、以下のレイアウトに従う必要があります。
- これは public である必要があります
- これは static である必要があります
- ジェネリックにすることはできません
- これはパラメーターを受け取ることはできません
- 戻り値の型は voidTaskValueTask のどれかである必要があります
- async void にすることはできません
- これを特殊なメソッド (ファイナライザー、演算子など) にすることはできません。
MSTEST0014 DataRowShouldBeValidAnalyzer [DataRow] インスタンスが有効になるには、次のレイアウトが必要です。
- テスト メソッドにのみ設定する必要があります
- 引数の数はメソッドのパラメータの数と一致する必要があります
- 引数の型はメソッドの引数の型と一致する必要があります
MSTEST0017 AssertionArgsShouldBePassedInCorrectOrder アサーション引数は正しい順序で渡す必要があります
MSTEST0023 DoNotNegateBooleanAssertionAnalyzer ブール アサーションを否定しないでください
MSTEST0024 DoNotStoreStaticTestContextAnalyzer TestContext を静的メンバーに格納しないでください
MSTEST0026 AssertionArgsShouldAvoidConditionalAccessRuleId アサーションでの条件付きアクセスを回避する