用于 SOAPUI 测试的自动递增自定义属性

Auto-increment Custom Properties for SOAPUI testing

def TransID = testRunner.testCase.testSuite.project.getPropertyValue("TransID")
def TransIDInc = TransID.toInteger()+1 
testRunner.testCase.testSuite.project.setPropertyValue("TransID",TransIDInc.toString())
//checkin..
log.info testRunner.testCase.testSuite.project.getPropertyValue("TransID")

我想自动增加这个自定义 属性,在研究和查看类似问题 之后,我尝试了这个解决方案并创建了这个名为 TransID 的自定义 属性,如下所示在我的请求消息中为 "id": "${#TransID}" ,但每当我 运行 groovy 脚本时,我都会收到值为 null 的日志消息,因此无法增加空值。这是否意味着我的值不是从自定义属性中读取的?

这部分有效:

def TransID = "1"
TransIDInc = TransID.toInteger()+1
assert TransIDInc.toString() == "2"

所以我认为您的 属性 访问不正确。有不同级别或范围的属性:

testRunner.testCase.testSuite.project.getPropertyValue("TransID")
testRunner.testCase.testSuite.getPropertyValue("TransID")
testRunner.testCase.getPropertyValue("TransID")

确保您正在访问正确的 属性,或正确范围内的 属性。

你也可以试试这个:

    testRunner.testCase.testSuite.project.setPropertyValue("TransID","${TransIDInc.toString()}")

但这应该没什么区别。