如何测试服务不受我的控制?

时间:2012-11-19 15:27:37

标签: c# testing exchangewebservices

我目前正在针对Microsoft的Exchange Web服务(EWS)API做很多工作,并想知道如何手动触发服务器行为。我发现虽然在某种程度上(每隔几天一次)开发出现罕见错误,但我并不是100%确定如何修复。问题是,即使我实现了修复,我也没有可靠的测试方法。在这一点上,我依赖于错误将在以后以某种形式出现的事实。即便如此,也无法保证。

例如,使用EWS,您可以设置流式订阅,只要您的邮箱收到新电子邮件,它就会通知您。我偶尔会遇到的一个错误是我的订阅停止存在。这很容易解决,因为我所要做的就是再次创建我的流式订阅。我的问题是我不知道如何按需测试这个问题。

谢谢。

1 个答案:

答案 0 :(得分:3)

如果您遵循onion-pattern,您将基础架构组件(包括Microsoft的Exchange Web服务)封装到包装器类中。您不必直接调用基础架构组件,而是与包装器进行通信。

因此,您可以控制包装器,并可以实现测试/存根/模拟/模拟来测试某些方面,如电子邮件通知。