我没有写过很多 Groovy 代码,而且我也是 SoapUI 的新手。我在 Linux 下使用 Perl、Python 或极端情况下的 bash 完成了大部分测试。我的 Windows 机器上只有带有 Groovy 的 SoapUI。
我有大约 80 个 REST 测试步骤,将使用需要运行外部命令才能获取结果的 Groovy 脚本运行。 testStep中的数据是JSON并且相当大。我需要更改一项属性:
{ ... "currentTR": 1692201561000, ... }
我进行了各种搜索,它们往往会导致获取结果并对其进行修改。我没能找到的是如何在 Groovy 脚本运行 testStep 之前获取请求,相应地修改它并使用修改后的数据运行 testStep。
到目前为止我编写的代码只能获取 testScript 对象并打印每个名称。
SoapUI 5.7,1 Windows 10
我编写了一些 Groovy 代码来迭代 testCase 以获取 testStep 并打印出每个步骤的名称,然后执行外部 powershell 命令。
这是同事找到的解决方案:
{ ... "currentTR":"${=java.lang.System.currentTimeMillis()}", ... }
这个效果非常好。