1

我在 SoapUI NG Pro 中有一个测试用例,其中包含以下步骤:

  1. 启动进程的 POST REST 请求
  2. JDBC 请求,我在其中检查进程开始日期是否已记录到数据库表中
  3. 延迟(模拟进程运行所需的时间)
  4. JDBC 请求,我在其中检查结束日期和持续时间是否已记录到表中

我想捕获 POST 请求的时间戳,以便在步骤 2 和 4 的断言中使用。

我在网上环顾四周,有些人提到使用事件,而另一些人提到使用脚本测试步骤,但我无法让任何一个工作。

我可以得到 POST Response 时间戳,但我特别在寻找 Request 时间戳。我还注意到请求日志中有一个时间戳,但我不知道如何访问它。

任何帮助将不胜感激。可能还值得一提的是,我使用的是 JavaScript 而不是 Groovy。

4

1 回答 1

1

您可以Script Assertion为 Soap Request 测试步骤添加一个并添加以下语句以显示所用时间。

log.info messageExchange.response.timeTaken

如果您希望在其他步骤中可以访问上述值,请使用下面(将值存储到测试用例级别,以便在同一测试用例的其他步骤中轻松访问测试用例属性):

context.testCase.setPropertyValue('TIME_TAKEN', messageExchange.response.timeTaken.toString())

在后面的步骤中,使用 Property Expansion 读取测试用例级别的属性值

def timeTaken = context.expand('${#TestCase#TIME_TAKEN}') as Integer
于 2018-01-31T06:54:50.300 回答