尽管 POST 请求中缺少字段,SwaggerHub 模拟响应仍返回 201

2024-01-17

我试图根据以下定义在 SwaggerHub 模拟 POST 请求:

    post:
      summary: "Creates order"
      description: ""
      consumes:
      - application/json
      parameters:
      - name: "order"
        in: body
        description: "New order"
        schema:
          $ref: "#/definitions/Order"
      responses:
        201:
          description: "Order succesfully created."
        400:
          description: "Order can't be created"

模型定义为:

definitions:
  Order:
    type: object
    properties:
      id:
        type: string
        format: uuid
        example: d290f1ee-6c54-4b01-90e6-d701748f0851
      marketPair:
        type: integer
        format: "int64"
        example: "BTC_TRY"
      amount:
        type: number
        format: "int64"
        example: "1.3"
      price:
        type: integer
        format: "int32"
        example: "467"
      operationType:
        type: string
        description: "Type of operation"
        enum: 
        - "buy"
        - "sell"
        example: "buy"
      orderType:
        type: string
        description: "Order Type"
        enum:
        - "limit"
        - "market"
        - "stop"
        default: "limit"
        example: "limit"
    xml:
      name: "Order"

每次我尝试 POST 缺少字段的错误 JSON 或什至正文中根本没有 JSON 时,我仍然收到 201 代码,这绝对不应该是 201。

我的配置中是否缺少某些内容,或者 SwaggerHub 需要进行哪些更改才能识别我的规范并开始检查有效负载是否符合此端点的规范要求?


模拟不会以任何方式验证输入。它只是返回为操作定义的最低 HTTP 状态代码 - 在您的示例中为状态 201。

From SwaggerHub 文档 https://support.smartbear.com/swaggerhub/docs/integrations/api-auto-mocking.html:

请注意,模拟不支持业务逻辑,即它无法根据输入发送特定响应。

...

该模拟根据每个 API 操作的响应和规范中定义的响应媒体类型为每个 API 操作生成静态响应。

如果某个操作有多个响应代码,则模拟将返回具有最低状态代码的响应。例如,如果操作具有响应 201、202 和 400,则模拟将返回 201 响应。

您可能想向 SwaggerHub 开发人员提交功能请求。

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

尽管 POST 请求中缺少字段,SwaggerHub 模拟响应仍返回 201 的相关文章

  • 修改void函数的输入参数并随后读取它

    我有一个相当复杂的 java 函数 我想使用 jUnit 进行测试 并且我正在使用 Mockito 来实现此目的 这个函数看起来像这样 public void myFunction Object parameter doStuff conv
  • 在 PHPUnit 中实现给定接口的模拟对象上未定义方法?

    我是单元测试和 PHPUnit 的新手 我需要一个模拟 我可以完全控制它 实现ConfigurationInterface界面 测试对象是ReportEventParamConverter对象和测试必须检查我的对象和界面之间的交互 Repo
  • springdoc-openapi:如何添加POST请求的示例?

    Controller有以下方法 ApiResponses value ApiResponse responseCode 200 GetMapping value API URI PREFIX PRODUCTS URI produces Me
  • 共享类与 swagger 生成的类

    我有一个包含三个项目的 asp net Blazor VS 解决方案 Shared ASP NET核心API Blazor 网络组件 我创建了一堆课程Shared项目和其他两个项目 参考了Shared项目 到目前为止一切都很好 然后我用了S
  • 使用 jest 存根函数

    有没有办法使用 jest API 来存根函数 我习惯于使用 sinon 存根 在这里我可以使用存根为来自我的测试单元的任何函数调用编写单元测试 http sinonjs org releases v1 17 7 stubs http sin
  • 有人成功用 Robolectric 模拟 HttpRequests 吗?

    我刚刚开始使用 Robolectric 模拟大多数 Android 类似乎工作正常 但是当我的测试类尝试创建 DefaultHttpClient 时 它会收到可怕的 Stub 错误 被测试的类在这一行失败 HttpClient httpcl
  • 如何在 React 中使用 Jest 模拟 window.location.href?

    我正在测试不应该在本地运行并且需要模拟的功能window location href const usePageTracking void gt const location useLocation useEffect gt if wind
  • 如何嘲笑一切?

    我了解如何模拟接口或虚拟方法调用 但是像 TypeMock 这样的框架可以模拟框架中的所有内容 使用哪些 NET机制来提供此类功能 例如 Typemock Isolator 使用 CLR分析器API http msdn microsoft
  • Moq - 是否可以在不使用 It.IsAny 的情况下设置模拟

    我一直使用 Moq 进行单元测试 有时我会嘲笑有很多参数的方法 想象一下这样的方法 public class WorkClient public void DoSomething string itemName int itemCount
  • 在 ServiceStack 中传达必需/可选 DTO 属性的最佳方式是什么?

    我的 ServiceStack w Swagger 实现在记录必需 可选属性方面遇到问题 实现使用我的服务的客户端的开发人员喜欢 Swagger 文档 但是他们不知道哪些属性是必需的 哪些属性是可选的 除了每次尝试获取有效请求时都会收到 4
  • 如何在单元测试中模拟 subprocess.call

    我使用的是 python 3 3 我必须测试一个使用的方法call来自 subprocess py I tried subprocess call MagicMock with patch subprocess call as TU cal
  • 使用 Mockito 模拟某些方法,但不模拟其他方法

    有没有办法使用 Mockito 模拟类中的某些方法 而不模拟其他方法 例如 在这个 诚然是人为的 Stock我想嘲笑的班级getPrice and getQuantity 返回值 如下面的测试片段所示 但我想要getValue 执行乘法 如
  • 模拟 WCF 客户端代理的最佳方法

    有没有办法使用 Rhino 模拟框架来模拟 WCF 客户端代理 以便我可以访问 Channel 属性 我正在尝试对 Proxy Close 方法进行单元测试 但由于代理是使用抽象基类构造的ClientBase
  • Swagger for Micronaut 与 Maven

    我想从 Spring Boot 2 切换到 Micronaut 框架 而且我在 Swagger 设置上遇到了困难 在 Spring Boot 2 项目中 我有以下依赖项
  • Spring MockMVC、Spring 安全和 Mockito

    我想测试一个Spring Boot休息控制器 使用Spring security 并在其中使用模拟 我尝试过使用 Mockito 但我认为任何模拟工具都应该可以解决问题 为了在我的测试中启用 Spring 安全性 我首先执行以下操作 Run
  • 修补在另一个函数中导​​入的函数

    为了避免循环导入 我被迫定义一个如下所示的函数 do something py def do it from helpers import do it helper do stuff 现在我希望能够测试这个功能do it helper修补完
  • 如何在Python中模拟依赖关系

    我是 python 单元测试框架的新手 并且在模拟依赖项方面存在很多困惑 我正在尝试为类的以下成员函数编写单元测试 check something class Validations def check something self abc
  • org.powermock.reflect.internal.WhiteboxImpl 对方法 java.lang.Object.clone() 的非法反射访问

    我想使用这个 JUnit 测试来测试私有方法 RunWith SpringRunner class SpringBootTest classes ReportingProcessor class public class Reporting
  • 如何让 Swagger UI 的参数成为下拉菜单而不是文本输入

    我正在使用 swagger 来显示我的 RESTApi API 的一个参数将字符串作为输入并将其转换为枚举值 有没有办法在 Swagger UI 上显示下拉菜单而不是文本输入字段 以便用户只能选择枚举值中的字符串值 您可以使用以下 swag
  • 这可以用 Moq 来嘲笑吗?

    我正在努力模拟一些外部依赖项 并且在一个第三方类中遇到了麻烦 该类在其构造函数中接收另一个第三方类的实例 希望 SO 社区能给我一些指导 我想创建一个模拟实例SomeRelatedLibraryClass它的构造函数接受一个模拟实例Some

随机推荐