java - Gatling:如何更改保存的整数值
问题描述
Gatling:如何更改保存的整数值
我将获取元素的数量保存为整数值。
val getElements = exec(http("1. get_elements")
.get("/apis/;version=0/elements/items?")
.check(jsonPath("$.totalElements").ofType[Int].saveAs("total_elements"))
.check(status.is(200))
.headers(headers_common))
但是我不能在另一个函数中修改这个值,例如:
.repeat("${total_elements}" / 100){
.....
}
解决方案
从文档:
警告
此表达式语言仅适用于传递给 Gatling DSL 方法的字符串值。当实例化 Gatling 模拟时,此类字符串仅被解析一次。
例如 queryParam("latitude", session => "${latitude}") 不起作用,因为参数不是字符串,而是返回字符串的函数。
此外, queryParam("latitude", "${latitude}".toInt) 不会因为 toInt 会在将参数传递给 queryParam 方法之前发生。
这里的解决方案是传递一个函数:
因此,您必须传递一个使用Session API的函数。在你的情况下:
repeat(session => session("total_elements").as[Int] / 100) { ... }
推荐阅读
- azure - 如何将 Minew BLE 网关与 Azure IoT Central 连接?
- python - Flask + sqlalchemy + marshmallow - 关系错误 - 一对多
- image - 如何在颤动中使用 Canvas 裁剪 png 图像并删除其未使用的空间?
- javascript - 还原 | 错误:期望减速器是一个函数
- django - 创建用户时密码不保存
- css - 渲染器之上的 THREE.js html 仅在动态生成组件时才有效
- ionic-framework - Ionic 4 Loadingcontroller 覆盖不存在
- php - 返回小时而不是分钟
- iis - 2 分钟后 IIS 下载超时
- c# - 通过报告查看器选择 id 记录视图