コード検査: NUnit: 非同期テストメソッドは、Task または Task <T> を返す必要があります
NUnit 3.x の非同期テストメソッドは、値が返されない場合は Task
を返すか、T
型の値が返される場合は Task<T>
を返さなければなりません。以下は、非同期テストが正しく機能しない 2 つの状況です。
[Test] // Warning: Async test method is void
public async void Test1()
{
// do something
await Task.CompletedTask;
}
[Test] // Warning: NUnit 3.10 does not support ValueTask
public async ValueTask<int> Test2()
{
// do something
return await Task.FromResult(100);
}
どちらの状況でも、Task
または Task<T>
を返すようにテストメソッドを書き直す必要があります。
関連ページ:
コードインスペクション設定を構成する
設計時コードインスペクションを構成する:デフォルトでは、ReSharper は、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかに関係なく、コードインスペクションは常に特定のスコープで実行できます。メインメニューからを選択するか、Alt+R O を押してから、左側のを選択します。設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用し...
コード検査: 実行時に失われる可能性があるモジュールからのシンボル
このインスペクションは、ビルドアーティファクトにデフォルトでは存在しないシンボルを使用しているという事実に注意を向けます。このシンボルのモジュールが実行時にロードされることを保証するスクリプトをビルドまたはデプロイするその他のメカニズムがある場合は、この警告を無視してかまいません。これが起こる理由はこちらで確認できます:MSBuild では、CopyLocal フラグを false に設定してプロジェクト参照をマークできます。これは大規模なプロジェクトに推奨されます。For large proje...