我有以下代码:
public interface IProductDataAccess
{
bool CreateProduct(Product newProduct);
}
Run Code Online (Sandbox Code Playgroud)
类ProductDataAccess实现了该接口.
public class ProductBusiness
{
public bool CreateProduct(Product newProduct)
{
IProductDataAccess pda = new ProductDataAccess();
bool result = pda.CreateProduct(newProduct);
return result;
}
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,如何CreateProduct通过模拟IProductDataAccess接口来创建方法的单元测试?我想到了一个IProductDataAccess内部的公共实例ProductBusiness并使用Mock<IProductDataAccess>object 初始化它,但是将数据访问暴露给UI层并不是一个好习惯.谁能帮我?