私はモックを使うのは初めてです。しかし、それは主な目的は何ですか?まず、Moqを使用してアプリケーション(およびNUnit)をテストします。
たとえば、次のようなコードがあります。
背後にある私のウェブページコード:
public partial class MyWebpage
{
protected string GetTitle(string myVar)
{
return dataLayer.GetTitle(myVar);
}
}
私のデータアクセス層:
public class DataLayer
{
public string GetTitle(string myVar)
{
// Create the query we want
string query = "SELECT title FROM MyTable " +
"WHERE var = @myVar";
//ENTER PARAMETERS IN HERE
// Now return the result to the view
return this.dataProvider.ExecuteMySelectQuery(
dr =>
{
//DELEGATE DATA READER PASSED IN AND TITLE GETS RETURNED
},
query,
parameters);
}
}
私のデータプロバイダーは、dbと直接通信して対話します。
public class DataProvider
{
public T ExecuteMySelectQuery<T>(Func<IDataReader, T> getMyResult, string selectQuery, Dictionary parameters)
{
//RUNS AND RETURNS THE QUERY
}
}
これらすべてをテストするための最良の方法は何ですか?