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

Groovy 如何通过调用测试用例获得脚本断言结果?,groovy,soapui,Groovy,Soapui,我已将所有请求单独隔离在一个测试套件中。我需要收集每次api调用所花费的时间 每个功能测试用例都将使用运行测试用例选项调用请求测试套件 我在每个请求的脚本断言中都有以下代码 def endpoint = messageExchange.getEndpoint() uri = endpoint.replace("baseurl","") log.info("Current URI: "+uri) uri = "t_"+uri def headers = messageExchange.getRe

我已将所有请求单独隔离在一个测试套件中。我需要收集每次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将被创建为键,时间和字节是值。 从请求测试套件运行请求时,它将创建属性


但功能测试用例从其他测试套件调用此请求,但它不创建这样的属性。。如何解决这个问题?我看到解决方法是运行每个请求并创建属性,以便在下一次运行时对其进行更新。。但问题是在启动测试套件时,我删除了所有的属性和值。所以这又是一场混乱。。有人能告诉我如何解决此问题吗?

您可以在执行后直接将结果添加到csv文件,如下所示:

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

你想收集它然后做什么?您需要将其传递到另一个步骤吗?收集后,我正在将其写入csv/xls。为什么不直接将其写入csv?新文件'out.csv'。追加$uri$时间$字节\n完美。。这很好用。你能把这个作为答案吗?我会接受的