相关疑难解决方法(0)

使用IoC进行单元测试

如何将IoC容器用于单元测试?使用IoC在大型解决方案(50多个项目)中管理模拟是否有用?有经验吗?任何C#库在单元测试中都能很好地使用它吗?

c# unit-testing mocking inversion-of-control

97
推荐指数
3
解决办法
4万
查看次数

在UnityContainer中注册NUnit DynamicMock实例

我对Unity和依赖注入有些新意.我正在尝试编写一个类似于下面的单元测试:

[Test]
public void Test()
{
    UnityContainer container = new UnityContainer();
    DynamicMock myMock = new DynamicMock(typeof(IMyInterface));
    container.RegisterInstance(typeof(IMyInterface), myMock.MockInstance);  //Error here

    // Continue unit test...
}
Run Code Online (Sandbox Code Playgroud)

执行此测试时,容器会在RegisterInstance方法中使用该消息抛出ArgumentNullException Value cannot be null. Parameter name: assignmentValueType.

堆栈跟踪的顶行是at Microsoft.Practices.Unity.Utility.Guard.TypeIsAssignable(Type assignmentTargetType, Type assignmentValueType, String argumentName).

为什么我不能在UnityContainer中注册MockInstance,我该如何解决这个问题呢?

nunit dependency-injection mocking ioc-container unity-container

6
推荐指数
1
解决办法
1323
查看次数

使用现有数据库中的数据在ASP.NET MVC中创建数据库模拟

我有一个现有的ASP.NET MVC应用程序,在SQL Server数据库中有一些示例数据,工作正常.

假设我已经拥有了所有必需的存储库和IOC,是否有一个工具可以从一组表中提取数据,并将其"冻结"成一个模拟对象(可能使用XML文件来存储数据) ,以便我可以分离数据库并使用模拟数据进行单元测试?

c# asp.net-mvc sql-server-2008 linq-to-sql asp.net-mvc-2

5
推荐指数
1
解决办法
2946
查看次数