ASP.NET Web API プロジェクトの単体/統合テストを作成しようとしていますが、各テストを個別に実行するのに苦労しています。説明させてください。
展開設定が構成された *.testsettings ファイルがあります。各テストを実行する前に、空の *.mdf ファイルがテストの場所に展開されます。Entity Framework Code First を使用しているため、データベース初期化子を使用してスキーマをデータベースにプッシュし、特定のテーブルに 2 行をシードできます。これはうまくいきます。
私が直面している問題は、すべての ApiControllers のアクションに対するさまざまなテストが、間違った順序で実行されると、お互いに足を踏み入れる可能性があることです。たとえば、POST テストの前に GET テストを実行すると、GET は 2 つのオブジェクトを返し、逆の順序で実行すると GET は 3 つのオブジェクトを返します。
私がする必要があると思うのは、すべてのテストの前にデータベースを削除し、再作成し、再シードすることです。これは良い考えですか、それとももっと良い方法がありますか? これが私にできる最善のことであれば、各テストの前にデータベースをリセットするつもりです.