私はこのWebAPIプロジェクトに取り組んでおり、その単体テストを作成する必要があります。プロジェクトのベースはVS2010を使用して作成され、WebApiモジュールが追加されました。
コントローラの動作は、テスト/モックの邪魔になります。私はxUnitとMoqを使用していますが、これら2つに固執する必要はまったくありません。
アプリケーションは特定のオブジェクトを使用してデータベースアクセスを処理するため、controllerObjectがあり、そのコンストラクターにはDataAccessObjectが必要です。
コントローラとデータアクセスのペアのモックに問題があります。私が実行しようとしている最初のテストはGetAllFromDataBaseですが、実際にはそれを実行する方法についての手がかりがありません。
編集:
私はクオンルが私に言ったことをしました、そして全体は今動いています、私はそれを本当に感謝します。しかし、私は別の問題に困惑しました。APIにアクセスするには、ユーザー名とパスワードのペアがあり、コントローラーはThread.CurrentPrincipal.Identity.Nameを使用します。今のところ、完全に機能させるには、この値を設定する必要があると思います。
また、valueServiceMock.Setup(service => service.GetValues()).Returns(new [] {"value1"、 "value2"});
動作していないようです。コードがデータベースにアクセスしようとしますが、検索する有効なユーザー名を取得できないため、何も取得されません。