如何通过调用测试用例获取脚本断言结果?

How to get script assertion results by calling test case?

我在一个测试套件中单独隔离了所有请求。我需要收集每个 api 通话时间占用..

每个功能测试用例都会使用 运行 个测试用例选项调用请求测试套件。

我在每个请求的脚本断言中都有以下代码。

def endpoint = messageExchange.getEndpoint()
uri = endpoint.replace("baseurl","")
log.info("Current URI: "+uri)
uri = "t_"+uri
def headers =  messageExchange.getResponseHeaders()
bytes= headers["Content-Length"].get(0)
log.info("Number of Bytes: "+ bytes)
timeTaken =  messageExchange.getTimeTaken().toString()
values = timeTaken + ";"+ bytes
context.testCase.setPropertyValue(uri, values)

我预计 uri 将被创建为键,timeTaken 和 bytes 是值。 当 运行 请求(来自请求测试套件)时,它会创建 属性。

但是功能测试用例从其他测试套件调用此请求,它不会创建这样的 属性..如何解决这个问题?我看到围绕 运行 每个请求的工作并创建 属性 以便在下一个 运行 它将被更新..但是问题是在启动测试套件时我正在删除所有属性和值。所以又是一团糟..有人可以告诉我如何解决这个问题吗?

您可以像这样在执行后直接将结果添加到 csv 文件中:

new File('out.csv').append( "$uri; $timeTaken; $bytes\n" )