| プロパティ | 価値 |
|---|---|
| ルール識別子 | MSTEST0053 |
| タイトル | 書式パラメーターで Assert メソッドを使用しないようにする |
| カテゴリ | Usage |
| 修正が破壊的であるか非破壊的であるか | Non-breaking |
| 既定で有効 | イエス |
| 既定の重大度 | Warnung |
| バージョン で導入された | 3.11.0 |
| コード修正はありますか | イエス |
注
フォーマット パラメーターを持つアサーション API が削除されているため、このアナライザーは MSTest 4 には関係なくなりました。
原因
アサーション メソッドの呼び出しでは、文字列補間を使用する代わりに、文字列の書式設定に message 引数と parameters 引数を使用します。
ルールの説明
messageとparametersを受け入れるアサーション オーバーロードの使用は推奨されなくなりました。 これらのオーバーロードは、MSTest v4 で削除されます。 代わりに文字列補間を使用することをお勧めします。
違反を修正する方法
メッセージ形式パラメーターを使用する呼び出しを文字列補間に置き換えます。
たとえば、次の内容を変更します。
[TestMethod]
public void TestMethod()
{
int expected = 5;
int actual = GetValue();
Assert.AreEqual(expected, actual, "Expected {0} but got {1}", expected, actual);
}
この行を次のように変更します。
[TestMethod]
public void TestMethod()
{
int expected = 5;
int actual = GetValue();
Assert.AreEqual(expected, actual, $"Expected {expected} but got {actual}");
}
警告を抑制するタイミング
このルールの警告を抑制しないでください。 これらのオーバーロードは MSTest v4 で削除され、推奨されません。
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET