どうやって始めたらいいのかわからないので、この2日間、この学習プロセスの開始と再開に費やしました。
Web、サービス、コアの3つのレイヤーを持つMVC4アプリケーションがあります。コントローラーはサービスレイヤーにリクエストを送信します。サービスレイヤーは、コントローラーがビューのviewModelsをハイドレイトするために使用する情報を提供します。
サービスレイヤーには次のメソッドがあります。
public interface ISetServices
{
List<Set> GetBreadcrumbs(int? parentSetId);
Set GetSet(int? setId);
Set CreateSet(string name, string details, int? parentSetId);
void DeleteSet(int? setId);
Card GetCard(int? cardId);
Card CreateCard(List<string> sides, string details, int? parentSetId);
void DeleteCard(int? cardId);
Side GetSide(int? sideId);
List<String> GetSides(Card card);
Side CreateSide(Card card, string content);
void DeleteSide (int? sideId);
}
これらの関数をテストするためのユニットテストクラスライブラリを作成する方法を理解しようとしています。
テストを実行するときに、TestDatabaseを削除して(存在する場合)再作成し、データをシードしたいと思います。Coreプロジェクトに「保護された」シードメソッドがあります-これを使用できますか?もしそうなら、どのように?
私が読んだところはどこでも、テストでデータベースを使用しないように言っていますが、テストのポイントが何であるかを完全に理解することはできません。これらのサービスは、データベースにアクセスして更新するためのものです...テストするためにデータベースは必要ありませんか?
Project.Services.Tests単体テストプロジェクトを作成しましたが、すべてを接続する方法がわかりません。可能であれば、構成ファイルではなくコードを使用して実行したいと思います...例やポインターをいただければ幸いです。