自动化测试的网业务通信
-
09-06-2019 - |
题
我有一个应用程序发送消息的外部网络的服务。我建立和部署这种应用程序的使用 MSBuild 和 Cruisecontrol.NET.作为CCNET建立和部署程序也运行一套测试使用 呢.我现在想试验网业务通信。
我的想法是,作为建立过程的一部分网服务应该能产生的(基于外部网络服务WSDL),并部署到建立服务器的地方的网络服务器。所有网络服务应该做的是收到的消息,并将其置于文件的系统所以我然后可以检查它采用普通的关的例子。这也将使发展更容易作为新的开发商将仅需要运行建立脚本以及可以启动和运行(不必花费时间设立一个连接到第三方服务)。
是否有任何 现有的公用事业有 很容易模拟一个网服务基于一个WSDL?任何人 做了一些类似的使用MSBuild?
有没有 其他方式的测试这种情况?
解决方案
我刚开始寻找到 http://www.soapui.org/ 并且它似乎是它的工作很好地用于检测网服务。
此外,也许看看添加一个抽象层在你的网页服务,每个服务电话会直接打电话给一个可检验的方法(外部网的范围)?我只是这样做有一个更大的项目,我正在和它的可测性的工作很好。
其他提示
看看 NMock2.这是一个开放源码的嘲讽的产品,并允许您可以创建"虚拟"实现接口的支持,丰富而深刻的相互作用。
例如,如果你WS口是所谓 IService
和有一个 Data GetData()
方法,您可以创建一个模拟的需要的方法被称为一旦返回一个新的 Data
对象:
var testService = mockery.NewMock<IService>();
Expect
.Once
.On(testService)
.Method("GetService")
.WithNoArguments()
.Will(
Return.Value(new Data());
在试验结束,呼叫 mockery.VerifyAllExpectationsHaveBeenMet()
要保证 GetData
方法实际上是呼吁。
P.S.:不要混淆"NMock2"项目与"NMock RC2",也被称为"nmock2"在sourceforge.NMock2的项目似乎已经取代NMock.
这也可能是一些东西- 只知更鸟.看起来有用的。