将 swagger 定义导入 SoapUI 社区版?

Import swagger definition to SoapUI community edition?

我正在研究 SoapUI(free/open 源版本),看看它是否对我们经常进行的广泛 API 测试有用,因为现在我们正在做我们的大部分测试都在每个 server/app 的 swagger-ui 页面上进行,并且一些功能(如自动化某些测试用例)可能非常方便(以及许多其他功能)。

我遇到的问题是我无法弄清楚如何将所有端点导入 SoapUI 而不必手动一一创建它们。我看到有一个选项可以从 swagger 导入,但我似乎无法让它工作,谷歌搜索到目前为止对我没有帮助。

  1. 是否可以使用免费版本做到这一点?我知道休息 发现是一项专业功能,但它不是我要找的。
  2. 谁能告诉我步骤是什么?我试着将它指向 swagger-ui 页面,但那没有做任何事情。我可以访问应用程序源代码(以 java+spring 编写)我需要导入的 swagger 定义是否位于此处?四处寻找,但我可能没有在正确的地方寻找。

我知道我遇到了一些可能简单得可笑的事情,但我将不胜感激任何对此的帮助。

编辑:这是使用 SoapUI 版本 5.2.1

您可以按照以下步骤将 swagger 定义导入 SoapUI,并确保 swagger definition 在手或其 url(基本上是 json)。

Pre-condition 是,swagger plugin 是为 SoapUI 安装的,如图 here

  1. 使用 File -> Create Empty Project 菜单选项创建一个空项目。
  2. 右键单击在上面步骤中创建的项目。
  3. 您应该能够看到类似 Import Swagger 的选项,如下所示。
  4. 它将显示一个对话框,您可以在其中提供 swagger 定义 url。

大功告成。所有资源及其方法都应出现在您的项目中。

如果您在右键单击上下文中看不到 Import Swagger 选项,则表示未安装插件。如果您安装了 SoapUI-5.2.1

,请确定它已安装

更新

添加一些 public swagger 定义,这样对于想要尝试的人来说会很方便。

这是pet store swagger definition v2.0 by SwaggerUI

导入 swagger 定义后,您会看到类似下面的内容。

我遇到了同样的问题。

在我的例子中,我安装了没有选项 "Source" 的 SoapUI。

您需要使用此选项重新安装应用程序。