リポジトリパターンを使用せずに、MVC でコントローラーアクションの一部を単体テストできる方法があるかどうか疑問に思っています。ASP.NET MVC サイトを開発しましたが、初期段階で単体テストを行わずにこれを行いました。ここで、コントローラーで2つ以上のアクションを使用して、チューターに単体テストを実演したいと思います。私のアクションロジックのほとんどはデータベースからデータを取得し、1つのコントローラーは異なるテーブルからデータを取得します。つまり、1つのコントローラーのアクションは異なるテーブルから読み取られます。Generic Repository パターンを使用してテストできると思います。初心者として、データベースから取得されていないコードのみを単体テストできることがわかりましたが、残念ながらコントローラーアクションのほとんどのコードはデータベースから取得されています。私はVisual Studioでデフォルトのテストツールを使用しており、データベースにはEFコードの最初のアプローチを使用しています。
たとえば、同じコントローラーにある他のアクションを単体テストせずに、以下のアクションのみを単体テストしたいと思います。
public ActionResult Index()
{
var model = _db.PhotoGallery;
return View(model);
}
これはデモンストレーションのみを目的としています。