templating - 使用一个请求的参数动态改变另一个请求的响应
问题描述
我一直在使用响应模板来提供动态响应,因为所有请求和查询参数都与该请求本身相关联。但是,我想用几个参数发出一个 POST 请求,然后通过使用响应模板在存根 GET 方法的主体响应中使用这些参数。这可以在wiremock中做吗?非常感谢任何输入,谢谢!
解决方案
在请求之间存储状态不是 WireMock 的默认功能,除了通过Stateful Behavior模拟行为之外,这与实际有状态不同。
因此,如果没有自定义插件能够在多个请求之间共享信息是不可能的。在 WireMock 文档中,文档中有一节介绍了如何自己创建这样的插件。有了一点开发经验,这当然是可行的。
在 GitHub 上有几个插件可以创建存储机制来存储信息
- WireMockCsv:使用 HSQL 数据库存储和检索信息。
- wiremock-redis-extension使用 Redis 做类似的事情。
这些方法的替代方法是在测试开始之前创建映射/数据。例如,预先生成所有响应,然后使用 Templated BodyFileName标签检索即时创建的文件。实现此结果的另一种方法是使用Admin API自己直接创建映射。
推荐阅读
- python - 计算器到python中的递归基本操作
- python - 为什么计数会减一?
- jquery - Magento2 - 添加一个在升级前运行良好的小 jquery
- javascript - 退出 mongo db access Node.js 后可变数据丢失
- r - 在 R 中,按 2 列分组,然后计算第三列的百分比频率
- algorithm - 所有 N 的 k 组合数
- javascript - Moment.duration():获取总天数
- python - 为什么在 matplotlib 中调整 scilimits 不能正常工作?
- django - django - keras - aws elastic beanstalk - 更新已部署应用程序的数据
- swift - 从 C# 中的 async/await 到 Swift 中的闭包