使用 Python 从 WSDL 文件创建模拟 Web 服务

2023-12-21

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

我们在测试期间无法访问系统,因此我们想编写一个模拟服务。我们使用 Python 作为客户端,因此理想情况下我们希望使用 Python 作为模拟服务器,尽管我认为这并不是绝对必要的。

我们的梦想是能够从我们可以填写的 WSDL 文件生成存根,然后为那些使用 Paste Deploy 作为 WSGI 服务器的人提供服务,尽管它不必是 Paste Deploy 或 WSGI,只要它工作可靠即可。最主要的是,我们需要从“真正的”WSDL 文件生成存根,这样我们就不会意外编写不兼容的模拟服务器。

我们使用 suds 作为客户端库,并研究了soaplib 和 ZSI。然而,soaplib 中的 wsgi2py 内容在顶部表示“不要使用”,而 ZSI 似乎很难接受。人们一般用什么来做这种事情呢?

Martin


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

它采用 WSDL 并自动生成服务和服务方法。然后,您可以继续使用 Groovy 脚本定义静态返回或动态返回。看一看here http://www.soapui.org/userguide/mock/index.html有关 Web 服务模拟的文档。

SoapUI 有免费版和付费专业版。我使用免费版本并取得了巨大成功。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Python 从 WSDL 文件创建模拟 Web 服务 的相关文章

随机推荐

  • 在 LibGDX 中合并模型构建器中的模型

    我是 LibGDX 3D 设施的新手 我想知道如何合并使用创建的两个圆柱体模型构建器 createCylinder http libgdx badlogicgames com nightlies docs api com badlogic
  • 从非活动中使用 startActivityForResult

    我有 MainActivity 它是一个 Activity 和其他类 这是一个简单的 java 类 我们将其称为 SimpleClass 现在我想从该类运行命令startActivityForResult 我虽然我可以仅使用 MainAct
  • 从 FTP 文件夹下载所有文件时出现“权限被拒绝”错误

    到目前为止 我已经从 FTP 站点获取了我需要的文件的名称 请参阅下面的代码 from ftplib import FTP import os sys os path def handleDownload block file write
  • firebase-tools“错误:证书已过期”

    今天早上 我尝试将 React 项目部署到 Firebase 托管 但收到此错误 Error Server Error certificate has expired 然后我尝试执行firebase list命令查看我的项目列表 但我再次收
  • 在 IIS 上尝试 WCF 数据服务时收到“401 - 未经授权”

    我开发了一个WCF数据服务 它运行良好 我可以通过它完成我想要的每一个操作 我开发了一个小型 C 客户端 用于测试所有功能 添加 删除 修改 检索数据 在我的 Visual Studio 服务器上一切正常 但一旦我在 IIS 服务器上 我可
  • Android MediaPlayer:准备好的视频需要 250 毫秒才能开始播放

    当我使用prepareAsync 播放视频 然后在视频准备好后调用start 时 从start 调用到视频实际开始播放大约需要250毫秒 事情就是这样吗 还是这里发生了一些有趣的事情 请注意 视频位于 raw 目录中 在我的活动的 OnCr
  • Java列表:从标识符获取下一个或上一个元素

    我想要按标识符导航到列表 1 我管理 创建一个列表 2 我创建函数来从列表中获取标识符元素的下一项 你能帮我修复这个代码吗 准备清单 List
  • 没有简单的方法将 Tensorboard 输出添加到预定义的估计器函数 DnnClassifier 中吗?

    我一直在使用 TF 1 3 中的估计器接口 包括数据输入函数的创建 training input fn tf estimator inputs pandas input fn x training data y training label
  • 修复 IE 中“拉伸”的 XPage 扩展库名称选择器?

    Dalie 想出了一个很好的解决方案 当对话框出现在 IE 中时 可以阻止对话框 拉伸 到右侧 修复 IE 中 拉伸 的 XPage 扩展库对话框 https stackoverflow com questions 10456050 fix
  • 使用 JavaScript 编码摩尔斯电码

    我正在尝试以最简单的方式将任何文本字符串转换为莫尔斯电码 我对编程非常陌生 所以请您给我一些关于我可以使用哪些方法的建议 到目前为止 我刚刚编写了一个短语 字符串 和一个保存莫尔斯电码的数组 但我正在努力思考下一步要使用哪些步骤来获取字符串
  • 如何使用 Scala 连接到 MySQL 数据库?

    我正在开发一个小项目 我想解析一些数据 然后将其放入数据库中 我没有使用 Lift 并且无法找到执行此操作的标准方法 我自己编写查询很好 但我不确定使用什么来实际连接到数据库 您可以使用JDBC http java sun com java
  • 如何在 MySQL 中表示交叉应用和拆分字符串

    对于某些背景 我正在尝试创建一个包含多个食谱的数据库 然而 单个成分有必要与其最初来源的配方相关联 例如 我有一个包含所有单独成分的表格 还有一张存储食谱 减去配料 的桌子 现在 我发现了this http www kodyaz com a
  • Python 中的不等式和括号

    因此 在Python中 可以轻松检查真值条件 并使用括号优先考虑真值条件的顺序 例如这些很容易理解 gt gt gt 3 gt 2 True gt gt gt 3 gt 2 is True True 但这些是什么意思 我无法理解为什么它们返
  • NHibernate 的 SQL 2008 方言支持

    有人正在研究或知道 NHibernate 是否存在 SQL 2k8 方言 这是最近在 NHibernate Google Group 上询问 http groups google com group nhusers browse threa
  • AVAssetWriter 未知错误

    我正在尝试使用图像创建视频AVAssetWriter 实现的代码在大多数情况下工作正常 但在随机时刻 编写器会出现问题 AVAssetWriter videoWriter videoWriter finishWriting NSLog vi
  • 如何在本机反应中将文本放在图像上?

    如何在本机反应中将文本垂直放置在图像上 我找到了这个文档 https medium com mheavers vertically centering text over images in react native with flexbo
  • 如何获取溢出:隐藏或溢出:滚动div的真实.height()?

    我有一个关于如何获得 div 高度的问题 我知道 height and innerHeight 但在这种情况下 他们都没有为我完成这项工作 问题是 在这种情况下 我有一个溢出宽度的 div 溢出 滚动 并且 div 具有固定的高度 如果我使
  • woocommerce 在添加到购物车时添加动态价格

    我的任务是 我有 test test1 test2 test3 gt 4 个产品 测试产品价格为 0 美元 添加到购物车时 添加到特定 测试 产品的价格为 500 美元 如何实现这一目标 我使用以下钩子 add action woocomm
  • 使用虚拟数据创建 DataTable 对象

    我正在尝试将 DataTable 数据绑定到手风琴 我发现如果我使用表适配器从数据库检索 DataTable 它会完美地绑定到手风琴 但是我想要做的是创建一个虚拟表 用于测试目的 如果我无权访问我的数据库 创建虚拟表的代码如下 DataTa
  • 使用 Python 从 WSDL 文件创建模拟 Web 服务

    我们正在为远程服务编写一个客户端 该客户端公开 SOAP Web 服务并发布这些服务的 WSDL 定义 我们在测试期间无法访问系统 因此我们想编写一个模拟服务 我们使用 Python 作为客户端 因此理想情况下我们希望使用 Python 作