C# 如何在不使用操作上下文的情况下用c编写单元测试用例?

C# 如何在不使用操作上下文的情况下用c编写单元测试用例?,c#,automation,testcase,operationcontext,weboperationcontext,C#,Automation,Testcase,Operationcontext,Weboperationcontext,在我的项目中,我有一个在所有方法中使用的方法PreAction。PreAction包含操作上下文对象,即 OperationContext currentContext = OperationContext.Current 因此,当我试图调用该方法中的方法X时,我使用的是PreAction方法。因此,由于操作上下文是服务模型的上下文,我得到一个异常,指示对象引用未设置为对象的实例 那么,如何克服这种情况呢?有没有办法使用Mcoking?我们能解决这个问题吗 谢谢 看来您需要的是集成测试,而不是

在我的项目中,我有一个在所有方法中使用的方法PreAction。PreAction包含操作上下文对象,即

OperationContext currentContext = OperationContext.Current
因此,当我试图调用该方法中的方法X时,我使用的是PreAction方法。因此,由于操作上下文是服务模型的上下文,我得到一个异常,指示对象引用未设置为对象的实例

那么,如何克服这种情况呢?有没有办法使用Mcoking?我们能解决这个问题吗


谢谢

看来您需要的是集成测试,而不是单元测试。 在这种情况下,您应该为您的服务创建一个代理,并验证返回的结果,可能还有持久化的结果

但除此之外,最好在逻辑层上创建一系列单元测试。所有这些类都应该以一种不依赖于序列的前置动作的方式构建

确保您可以存根或模拟所有依赖的属性和接口