加特林馈线/参数问题 - 线程"main" java.lang 中的异常。不支持的操作异常



我刚刚通过使用Gatling为我们的服务参与了API测试的新项目。此时,我想搜索查询,下面是代码:

def chnSendToRender(testData: FeederBuilderBase[String]): ChainBuilder = {
feed(testData)
exec(api.AdvanceSearch.searchAsset(s"{"all":[{"all:aggregate:text":{"contains":"#{edlAssetId}_Rendered"}}]}", "#{authToken}")
.check(status.is(200).saveAs("searchStatus"))
.check(jsonPath("$..asset:id").findAll.optional.saveAs("renderedAssetList"))
)

.doIf(session => session("searchStatus").as[Int] == 200) {
exec { session =>
printConsoleLog("Rendered Asset ID List: " + session("renderedAssetList").as[String], "INFO")
session
}
}
}

我已经在模拟scala文件中声明了进料器:

class GVRERenderEditor_new extends Simulation {
private val edlToRender = csv("data/render/edl_asset_ids.csv").queue
private val chnPostRender = components.notifications.notice.JobsPolling_new.chnSendToRender(edlToRender)
private val scnSendEDLForRender = scenario("Search Post Render")
.exitBlockOnFail(exec(preSimAuth))
.exec(chnPostRender)
setUp(
scnSendEDLForRender.inject(atOnceUsers(1)).protocols(httpProtocol)
)
.maxDuration(sessionDuration.seconds)
.assertions(global.successfulRequests.percent.is(100))
}

但是Gatling测试未能运行,显示了以下错误:线程中出现异常";主";java.lang.UnsupportedOperationException:模拟过程中没有发送请求,不会生成报告

如果我对#{edlAssetId}进行硬编码(将真实的edlAssetId放入该查询中(,我将得到结果。我认为在这种情况下我错误地传递了参数。我试着在控制台日志中打印输出,但没有成功。这个代码出了什么问题?我将感谢你的帮助。谢谢

feed(testData)
exec(api.AdvanceSearch.searchAsset(s"{"all":[{"all:aggregate:text":{"contains":"#{edlAssetId}_Rendered"}}]}", "#{authToken}")
.check(status.is(200).saveAs("searchStatus"))
.check(jsonPath("$..asset:id").findAll.optional.saveAs("renderedAssetList"))
)

您在exec之前缺少一个.(点(,无法将其连接到feed

结果,你的方法只返回最后一条指令。

最新更新