Language
| プロパティ | 値 |
|---|---|
| ルール ID | MSTEST0004 |
| タイトル | パブリック型はテスト クラスであるべきです |
| カテゴリ | デザイン |
| 修正が破壊的か非破壊的か | あり |
| 既定で有効 | いいえ |
| 既定の重要度 | 無効 |
| 導入されたバージョン | 3.2.0 |
| コード修正の有無 | はい |
原因
パブリック型がテスト クラス ([TestClass] 属性でマーク付けされたクラス) ではありません。
規則の説明
実行可能なテストとサポート コードを区別するには、テスト クラス用に公開されている具象クラスを予約し、可能な場合、ヘルパー クラスは internal のままにします。 このオプトイン 設計規則は、[TestClass] 属性が見つからないか、意図しないパブリック ヘルパーに気付くのに役立ちます。
パブリック ヘルパー クラスは無効な MSTest コードではありません。 この規則は、探索要件ではなくプロジェクト規約を強制し、抽象クラスまたは静的クラスは報告しません。
違反の修正方法
型のアクセシビリティを public でないように変更します。
どのようなときに警告を抑制するか
ヘルパーが別のアセンブリまたは既存のコントラクトのために公開のままにする必要がある場合は、診断を抑制します。 意図的に公開されているヘルパーは、[TestClass] または派生属性を持つ場合にのみ、テスト クラスになります。
警告を抑制する
単一の違反を抑制するだけの場合は、ソース ファイルにプリプロセッサ ディレクティブを追加して無効にしてから、規則をもう一度有効にします。
#pragma warning disable MSTEST0004
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0004
ファイル、フォルダー、またはプロジェクトのルールを無効にするには、noneでその重要度を に設定します。
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0004.severity = none
詳細については、「コード分析の警告を抑制する方法」を参照してください。
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET