从Python中的WSDL文件创建模拟Web服务

opt*_*ude 14 python soap wsdl mocking

我们正在为远程服务编写客户端,该服务公开SOAP Web服务并为这些服务发布WSDL定义.

我们在测试期间无法访问系统,因此我们想编写一个模拟服务.我们正在为客户端使用Python,所以理想情况下我们希望将Python用于模拟服务器,尽管我认为它并非绝对必要.

我们的梦想是能够从我们可以填写的WSDL文件中生成存根,然后使用Paste Deploy作为WSGI服务器提供存根,尽管它不必是Paste Deploy或WSGI,只要它可靠地工作即可.主要的是我们需要从"真正的"WSDL文件生成存根,以便我们不会意外地编写不兼容的模拟服务器.

我们在客户端库中使用suds,并查看了soaplib和ZSI.然而,soaplib中的wsgi2py内容在顶部说"不要使用",ZSI似乎要吞下很多东西.人们通常会用这种东西做什么?

马丁

spa*_*spa 8

作为模拟服务器,我真的推荐soapUI(http://www.soapui.org).

它需要一个WSDL并自动生成服务和服务方法.然后,您可以继续使用Groovy脚本定义静态返回或动态返回.看看这里的Web服务模拟文档.

soapUI提供免费且付费的专业版.我使用免费版本取得了巨大成功.


Luc*_*s T 6

我建议你使用soapUI来创建一个模拟服务.这很容易安装.创建WS模拟服务同样容易.它从您想要的位置获取WSDL文件,它为请求创建结构,如果您愿意,它还会创建具有从WSDL文件中提取的预期结构的模拟Web服务.创建新的soapUI项目时,选择第三个复选框选项以创建模拟Web服务.

如果需要xsd模式文件,请确保从WSDL文件中很好地引用它们.

它不使用python,但如果您只需要一个可以发送请求并获得响应的测试环境,那就足够了.

我希望有所帮助.