【问题标题】:How to write a Unit Test case in c# without using the Operation context?如何在不使用操作上下文的情况下在 c# 中编写单元测试用例?
【发布时间】:2013-07-03 09:31:51
【问题描述】:

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

OperationContext currentContext = OperationContext.Current

因此,当我尝试在该方法中调用方法 X 时,我使用的是 PreAction() 方法。因此,由于操作上下文是服务模型的,我得到一个异常,表明对象引用未设置为对象的实例。

那么如何克服这种情况呢?有没有使用 Moking 的方法,我们可以解决这种情况吗?

谢谢!!!

【问题讨论】:

    标签: c# automation testcase operationcontext weboperationcontext


    【解决方案1】:

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-29
      • 2011-07-27
      • 1970-01-01
      • 2021-11-30
      • 1970-01-01
      • 2014-10-01
      • 2017-12-01
      • 2021-06-23
      相关资源
      最近更新 更多