繁体   English   中英

不使用IIS的Web服务测试

[英]web service testing without IIS

使用NUnit测试Web服务的最佳方法是什么? 我希望它是自动化的,即,我不想拥有一个单独的过程来托管Web服务以使用测试代码。

Web服务只是一个普通的.net类。 您可以直接实例化它,并在单元测试中调用其方法。

这样一来,您就无法在协议级别测试诸如身份验证之类的Web服务的http特定方面,但是我想说,为此使用Web服务器无处可逃。

要看。 如果是asmx,则可以在Vista或更高版本上使用HostableWebCore 如果是WCF,只需在流程中创建ServiceHost实例即可进行自我托管。 您可以直接实例化服务impl,但是如果您有任何HTTP行为(HttpContext,请求/响应访问,Cookie等),则必须对其进行模拟。

这取决于您要测试的内容。 可以进行完整的集成测试,并且其中有些价值(例如,检查序列化)。 一种简单的方法,以最少的工作即可获得良好的测试覆盖率,如下所示:

  1. 编写一个或多个能完成实际工作的普通旧类(如果需要,请使用TDD)
  2. 单独测试这些类
  3. 让您的WebMethods委托这些类。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM