次の方法で共有


MSTEST0030: [TestMethod] を含む型は [TestClass] でマークする必要があります

プロパティ
ルール ID MSTEST0030
Title [TestMethod] を含む型は [TestClass] でマークする必要があります
カテゴリ 使用法
修正が中断ありか中断なしか なし
既定で有効 はい
既定の重要度 情報
導入されたバージョン 3.5.0
コード修正の有無 いいえ

原因

[TestMethod] を含む型は [TestClass] でマークする必要があります。そうしないと、テスト メソッドはメッセージなしで無視されます。

規則の説明

MSTest では、テスト クラス コンテナー ([TestClass] または派生属性でマークされたクラス) のコンテキストでのみテスト メソッドが考慮されるため、一部のテストはメッセージなしで無視される可能性があります。 子クラスによって実行される共通のテスト動作を表すクラスにする場合は、型を抽象としてマークして、コードを読む他の開発者に対してその意図を明確にすることをお勧めします。

違反の修正方法

テスト メソッドが含まれる非抽象クラスには、'[TestClass]' でマークする必要があります。

どのようなときに警告を抑制するか

クラスが継承され、このクラスで宣言されたテストはサブクラスのコンテキストでのみ実行されるという確信がある場合は、この診断を抑制しても問題ありません。 ただし、クラスを抽象としてマークすることをお勧めします。

警告を抑制する

単一の違反を抑制するだけの場合は、プリプロセッサ ディレクティブをソース ファイルに追加して無効にしてから、ルールを再度有効にします。

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

ファイル、フォルダー、またはプロジェクトのルールを無効にするには、その重大度を 構成ファイルnone に設定します。

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

詳細については、「コード分析の警告を抑制する方法」を参照してください。