【问题标题】:Import swagger definition to SoapUI community edition?将 swagger 定义导入 SoapUI 社区版?
【发布时间】:2019-03-14 01:20:02
【问题描述】:

我正在使用 SoapUI(免费/开源版本),看看它是否对我们经常进行的那种广泛的 API 测试有用,因为现在我们大部分测试都是在大摇大摆地进行的每个服务器/应用程序中的 -ui 页面和一些功能,如自动化一些测试用例可能非常方便(以及许多其他功能)。

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

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

我知道我遇到了一些可能非常简单的事情,但我希望能提供任何帮助。

编辑:这是使用 SoapUI 5.2.1 版

【问题讨论】:

    标签: soapui swagger


    【解决方案1】:

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

    前提条件是,swagger plugin 已为 SoapUI 安装,如图所示 here

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

    你已经完成了。所有资源及其方法都应出现在您的项目中。

    如果您无法在右键单击上下文中看到Import Swagger 选项,则说明未安装插件。如果你安装了SoapUI-5.2.1就确定安装了@

    更新

    添加一些公开的招摇定义,这样对于希望尝试的人来说会很方便。

    这是 SwaggerUIpet store swagger 定义 v2.0

    导入 swagger 定义后,您会看到如下所示的内容。

    【讨论】:

    • SoapUI 只导入 json 格式的 Swagger 文件,不导入 Yaml。我使用 swagger-editor 导入 YAML 并下载 JSON。
    • @intotecho 你确定吗?我已经成功导入 YAML 文件(SoapUI 5.3.0),只需要指定文件路径和正确的 mime 类型(“application/yaml”)。
    • 如果 swagger 文件扩展名是 .yaml,它可以工作,但 .yml 失败,这有时是您在下载 swagger 定义文件时获得的文件扩展名
    • 如果 URL 需要基本身份验证怎么办?我似乎无法找到一种方法来为“import swagger”选项提供凭据
    • @user311174,好吧,这些年来,随着需求的出现,工具可能已经发生了变化。您可以考虑添加新问题。顺便说一下,免费版不支持 OAI 3.0。希望你使用的是swagger 3.0,该工具不支持。
    【解决方案2】:

    我遇到了同样的问题。

    在我的例子中,我安装了 SoapUI,没有选择“Source”。

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

    【讨论】:

    • 另外:如果您使用与使用 SoapUI 的用户不同的用户安装它,则需要将该插件从该用户复制到您的目录:C:\Users\\ .soapuios\plugins 到 C:\Users\\.soapuios\plugins
    • 奇怪的是,导入 swagger 文件的选项只是在以 root 身份启动 SoapUI 时出现...尚未安装任何插件,所以不知道为什么会发生这种情况....
    猜你喜欢
    • 2023-03-27
    • 2021-07-15
    • 2010-12-07
    • 1970-01-01
    • 2022-11-11
    • 2021-05-02
    • 2017-01-21
    • 2018-01-03
    • 2020-02-28
    相关资源
    最近更新 更多