なか日記

一度きりの人生、楽しく生きよう。

Entity Framework 6でMoqを使ったテストを行う方法

Entity Framework Core 1.0(以下、EF Core)が正式にリリースされた今週、自分はEntity Framework 6(以下、EF6)を使ったプロジェクト*1のテストで悩んでました。

テストするのにローカルDB使うと遅いじゃないですか。EF Coreなら、テストの時だけInMemoryデータベースを使う事もできるんでしょうけど、今いじってるのはEF6。

自分でゴニョゴニョやってて、埒があかないのでググったらいいのが出てきました。

黙ってここ読めって感じです。英語が読めなくても、見出しとコードの雰囲気で何となくわかると思います。

msdn.microsoft.com

EF5以前なら

EF5以前ならMockDbSetというパッケージが使えます。EF6でも使えますけどね。

www.nuget.org

使い方ですが、下の記事を斜め読みすると何となくわかると思います。

stackoverflow.com

EF Coreなら

調べてないですが、InMemoryデータベース使えばいいんじゃないかと思います。

気になった人は調べてブログ書いて教えて下さい(他力本願)。

おしまい。

*1:お仕事じゃないよ。個人的なプロジェクトね。