在Karate Scenario Outline测试中,如何通过变量传递Examples表中的参数值

2023-12-10

我在大多数 API 请求中使用相同的数据集,例如。日期范围 FromDate 和 ToDate。但是,如果我想更改日期范围,那么我将必须更改所有场景大纲。为了避免这种情况,我可以在背景部分定义日期范围并在场景大纲示例表中使用变量名称吗? 空手道可以做到这一点吗?请帮忙。谢谢。

尝试了很多方法,但无论如何都无法成功。

功能:验证 API 是否正确返回产品 背景: * 配置ssl = true * 网址 'https://......' def FromDate1 = '2019/06/27' def ToDate1 = '2019/06/27'

Scenario Outline:
Given path 'GetContext'
And param FromDate = '<FromDate>'
And param ToDate = '<ToDate>'
And param CompAreaId = '<CompAreaId>'
And param RegId = '<RegId>'
When method get
Then status 200
* def res = response
* print 'response:', response

  Examples:
    | FromDate       | ToDate      | CompAreaId       | RegId    |
    | FromDate1      | 2019/06/27  | 20               | 4        |
    | 2019/06/28     | 2019/06/28  | 21               | 5        |
    | 2019/06/29     | 2019/06/29  | 22               | 6        |

我应该能够使用包含要在场景大纲的示例表中使用的值的变量名称。


是的当然。因为定义为普通变量的内容更容易使用,所以您可以直接引用它,而不用添加尖括号。

你需要做这个小改变:

And param FromDate = FromDate1
And param ToDate = ToDate1

请注意,在 0.9.3 版本中,这种混淆已得到解决,即使对于Scenario Outline。请阅读:https://github.com/intuit/karate#scenario-outline-enhancements

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

在Karate Scenario Outline测试中,如何通过变量传递Examples表中的参数值 的相关文章

  • 为 NFL api 生成访问令牌

    NFL 有一个 API 服务 link https api nfl com docs getting started index html https api nfl com docs getting started index html
  • Android:SQLite 查询不绑定整数参数?

    我在 Android 平台 2 2 上使用数据库参数进行查询时遇到问题 我创建了这样的表 db execSQL CREATE VIRTUAL TABLE Msg TABLE NAME USING FTS3 Msg ID INTEGER Ms
  • 生产者程序中的 kafka 网络处理器错误(ArrayIndexOutOfBoundsException:18)

    我有下面的 kafka Producer Api 程序 我对 kafka 本身是新手 下面的代码从 API 之一获取数据并将消息发送到 kafka 主题 package kafka Demo import java util Propert
  • 将 CURL 命令行转换为 VBA

    在 CURL 中 我可以使用这一行 curl data DataToBeSent https example com resource cgi 我正在努力将此类行转换为在 VBA 中使用 这是我到目前为止的尝试 Sub POST Metho
  • 如何获取Postgres当前的可用磁盘空间?

    在开始在数据库中进行某些工作之前 我需要确保至少有 1Gb 的可用磁盘空间 我正在寻找这样的东西 select pg get free disk space 是否可以 我在文档中没有找到任何相关内容 PG 9 3 操作系统 Linux Wi
  • 谷歌地图的地址建议

    有人知道是否有任何方法可以重现 ajax 建议框 例如http maps google com http maps google com 我的网页中有使用 google 地图 api 的吗 例如 如果有人写下 15 Avenue 的建议列表
  • SQLAPI++ 的免费替代品? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有任何免费 也许是开源 的替代品SQLAPI http www sqlapi com 这个库看起来
  • 如何使用 C# API 移动 TFS 文件?

    我一直在谷歌上搜索如何使用 TFS API 通过 C 移动文件 我们的想法是有一个文件夹 开发人员可以在其中放置数据库升级脚本 构建过程会在该文件夹中创建一个构建脚本 并将该文件夹上的所有文件移动到具有我们刚刚创建的数据库构建版本的新文件夹
  • C#中out参数有什么用

    你能告诉我具体的用途是什么吗out范围 相关问题 ref 和 out 和有什么不一样 C https stackoverflow com questions 516882 what is the difference between ref
  • 如何使用 blazor 前端 http 请求附加令牌

    我使用 blazor 作为前端 api 已完成 JWT 配置 前端可以创建用户帐户并登录API 但现在我的前端httpclient没有设置JWT令牌 所以如果我在Api控制器中设置 授权 前端将无法访问它 api程序代码如下 builder
  • 如何共享 Swagger 文档

    我最近开始使用 Swagger 来编写文档 但有一些事情我仍然不清楚 我创建了 YAML 文档 现在我希望能够与团队的其他成员共享 pdf 或 HTML Javascript 页面中的文档 我无法使用 SwaggerHub 因为它们没有私有
  • Rails api 中阻止用户配置文件的最佳 HTTP 状态代码是什么?

    我在 Rails 中为社交应用程序编写了一个 API 这个应用程序就像Facebook一样 用户可以阻止其他用户 如果用户 A 阻止用户 B 则用户 B 无法查看用户 A 的个人资料页面 那么我应该返回的最佳 HTTP 代码状态是什么 40
  • Google API 令牌端点 POST 返回错误请求 400

    我正在尝试用一次性 Google Plus 授权代码换取访问令牌 但我不断收到 400 Bad Request 我正在使用VB NET 这是代码 We should now have a good one time authorizatio
  • 键值对作为控制台应用程序中的参数

    有没有一种简单的方法可以允许键 值对 都是字符串 的集合作为控制台应用程序的命令行参数 如果您的意思是有一个如下所示的命令行 c gt YourProgram exe switch1 value1 switch2 value2 这可以在启动
  • cURL 命令在 git bash 中有效,但在 cmd 和 powershell 中无效

    以下命令在 git bash 中有效 但在 cmd 和 powershell 中无效 curl X POST http localhost 5678 api findgen H Content Type application json d
  • Scala 'null' 是否算作另一种类型的实例?

    我有这个代码 class MyLinkedList T h T tail MyLinkedList T def prepend v T MyLinkedList T new MyLinkedList v this 我想知道我如何可以将第二个
  • 如何获取 Android 应用程序的 Google Places API 密钥

    在过去的 48 小时里 我绞尽脑汁试图找到这个问题的答案 问这个问题的人 如何为 Google Places api 制作 API KEY https stackoverflow com questions 23128152 how can
  • 将所有构造函数参数作为实例属性添加到 PyCharm 中的类中

    我正在使用 PyCharm 我开始定义一个类 class A def init self a b c 我希望它看起来像这样 class A def init self a b c self a a self b b self c c 使用
  • 当前平台不支持桌面 API

    我遇到过这个错误 java lang UnsupportedOperationException 当前平台不支持桌面 API 我将从我的 java 应用程序中打开一个文件 我用这个方法 Desktop getDesktop open new
  • 如何通过 Apps Script & Drive SDK 创建新的脚本文件

    尝试通过在 Apps 脚本中调用 Drive SDK 来创建包含文件的新项目 下面的内容到底会放在哪里UrlFetchApp要求 files id 9basdfbd 749a 4as9b b9d1 d64basdf803 name Code

随机推荐