如何在c#中进行单元测试模拟时忽略非虚方法?

时间:2017-12-02 12:59:13

标签: c# unit-testing mocking xunit

在我的项目中,我想测试服务逻辑,这就是为什么我在我的服务中使用了模拟存储库方法(数据库调用)的原因。 但是我的服务中已经调用了一些方法。这些方法不是虚方法,甚至不在界面中调用。

根据我在单元测试中的知识,我们只能模拟虚拟方法。那我该怎么办?

实施例: 在我的服务下面代码是:

 ErrorDataCaptureProcess errorDataCaptureProcess = new ErrorDataCaptureProcess(user.Id);
                    **errorDataCaptureProcess.UpdateErrorCaptureData();**

这是主要问题,因为errorDataCaptureProcess正在调用它的方法。我无法嘲笑。

这是我的内部调用方法,它与数据库进行交互,我不会这样做。想。

  public void UpdateErrorCaptureData()
            {
    ErrorDataCapture.Add(Mapper.Map<ErrorDataCapture>(error));
            }

我正在使用x-unit进行单元测试。

请帮助我,如果有其他方法,我该怎么办。

提前谢谢。

0 个答案:

没有答案