繁体   English   中英

从响应体中提取加特林时间

[英]Gatling Time Extraction From Response Body

  • 我对 Gatling/Scala 完全陌生。

我有一个场景要执行。 它是这样的:

--> 更改员工的轮班时间。

对于上述情况,我能够编写/编码流程。 但是,我有一个挑战:-> 我需要从响应中提取“新”时间值,并检查它是否与通过参数 (csv) 文件传递​​的“新”时间值匹配。

方法/逻辑:从响应正文中提取日期值,并将其与 csv 文件中提供的日期值进行比较。

示例响应:

{
   "employeeId":"xxxxxx",
   "schedules":
   [
   {
  "date":"2019-11-25",
:   :   :   "schedules":
:   :   :   [
:   :   :   :   {
:   :   :   :   :   "employeeId":"xxxxxx",
:   :   :   :   :   "laborWeekStartDate":"2019-11-25",  //New edited time
:   :   :   :   :   "laborWeekEndDate":"2019-12-01",    //New edited time
:   :   :   :   :   "schedules":
:   :   :   :   :   {
:   :   :   :   :   :   "startTime":"2019-11-25T18:15:00.000Z",
:   :   :   :   :   :   "endTime":"2019-11-25T23:45:00.000Z",
:   :   :   :   :   :   "departmentId":xxxxx,
:   :   :   :   :   :   "departmentName":"abc",
:   :   :   :   :   :   "lastModifiedTimestamp":"2019-12-11T09:22:44.000Z",
:   :   :   :   :   :   "breakDetails":
:   :   :   :   :   :   [
:   :   :   :   :   :   :   {
:   :   :   :   :   :   :   :   "startTime":"2019-11-25T21:00:00.000Z",
:   :   :   :   :   :   :   :   "endTime":"2019-11-25T21:15:00.000Z",
:   :   :   :   :   :   :   :   "type":"break"
:   :   :   :   :   :   :   }
:   :   :   :   :   :   ]
:   :   :   :   :   }
:   :   :   :   }
:   :   :   ]
:   :   }

在这里,在下面,需要提取右侧的值并将其与 csv 文件中提供的值进行比较。

"开始时间":"2019-11-25T18:15:00.000Z",

"endTime":"2019-11-25T23:45:00.000Z",

请帮助执行上述操作。 考虑到我对此完全陌生,将非常感谢逐步详细的解释。

谢谢!

免责声明:我将提供一些有用的链接,可以帮助您完成任务。 如果您在操作时遇到任何问题,只需发布​​一个新问题

  1. 为了从 JSON 响应中获取值,您可以使用jsonPath HTTP 响应正文 这里有一个示例,如何使用此方法提取和保存值: Gatling 测试的 JSON 路径用法

  2. 可以使用内置的feeder功能从 CSV 文件中读取值: CSV馈送器。添加馈送器后,您可以使用${columnName}引用值这里有一个示例: 步骤 03:将动态数据与馈送器和检查 在此步骤之后,您在会话中拥有两个值。 然后使用 Scala 语言,您应该能够比较这些值。 使用session("variableName").as[String]从会话中获取值

  3. 例如,如果您首先从 csv 中对值进行子字符串化,则可以进行字符串比较。 Scala 字符串比较另一个选项就像这里描述的那样,它非常接近您的要求: 如何比较来自 gatling 中的 http 调用的响应?

祝你好运! :)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM