SOAPUI中用Groovy批量将TestCase属性存入数组的方法
批量获取测试步骤属性到数组的Groovy实现
当然可以通过迭代方式批量处理,避免重复的手动调用,以下是两种实用的实现方式:
方式一:存入值数组(仅保存属性值)
// 获取目标测试步骤对象 def eKioskStep = testRunner.testCase.testSteps["eKiosk details"] // 初始化存储属性值的数组 def propertyValues = [] // 遍历所有属性,将值存入数组 eKioskStep.properties.each { property -> propertyValues.add(property.value) } // 可选:打印数组内容验证 log.info "属性值数组:$propertyValues"
方式二:存入键值对Map(保留属性名和值,更易后续使用)
如果需要同时保留属性名称和对应值,用Map会比纯数组更实用:
// 获取目标测试步骤对象 def eKioskStep = testRunner.testCase.testSteps["eKiosk details"] // 初始化存储键值对的Map def propertyMap = [:] // 遍历所有属性,存入Map eKioskStep.properties.each { property -> propertyMap[property.key] = property.value } // 可选:打印Map内容验证 log.info "属性键值对:$propertyMap"
优势说明
- 无需手动逐个编写
getPropertyValue调用,减少重复代码 - 后续新增属性时,脚本无需修改,自动遍历所有属性
- Map方式可以直接通过属性名快速取值,比如
propertyMap['eKiosk_ID']就能拿到对应值,和你原来的手动写法效果一致但更灵活
内容的提问来源于stack exchange,提问作者Lucian Al-Zafari
相关产品推荐
相关产品推荐

