使用Groovy脚本断言数组列表中的变量值

使用Groovy脚本断言数组列表中的变量值,groovy,soapui,Groovy,Soapui,我试图在数组列表中查找变量值,但显示错误弹出窗口 Groovy代码:- def testCase = messageExchange.modelItem.testCase; def Created_BookingID = testCase.testSuite.project.getPropertyValue("Created_BookingID"); log.info Created_BookingID import groovy.json.JsonSlurper JsonSlurper j

我试图在数组列表中查找变量值,但显示错误弹出窗口

Groovy代码:-

def testCase = messageExchange.modelItem.testCase;
def Created_BookingID = testCase.testSuite.project.getPropertyValue("Created_BookingID");
log.info Created_BookingID


import groovy.json.JsonSlurper
JsonSlurper jsonSlurper = new JsonSlurper()
String jsonString = context.expand('${ListAllRoomBookings#Response}')
Map convertedJSONMap  = jsonSlurper.parseText(jsonString)
def RoomID
//If you have the nodes then fetch the first one only
if(convertedJSONMap."RoomBookings"){

     RoomID = convertedJSONMap."RoomBookings"."BookingData"."BookingID"
     log.info RoomID
}

//Find the created booking in list.
assert Created_BookingID.containsAll(RoomID)
错误:- 没有方法签名:java.lang.String.containsAll()适用于参数类型:(java.util.ArrayList)值:[[1482811482148277]]可能的解决方案:contains(java.lang.CharSequence)、contains(java.lang.CharSequence)、contains(java.lang.String)、notifyAll()

在窗口中打印值:-

Wed Aug 02 17:17:22 IST 2017:INFO:148277
Wed Aug 02 17:17:22 IST 2017:INFO:[148281, 148282, 148277]
没有方法的签名:
java.lang.String.containsAll()

适用于参数类型:(java.util.ArrayList) 值:[[148281、148282、148277]]

您尝试对字符串对象调用
containsAll()
方法。这意味着,
Created\u BookingID
vaiable此时为String

如果要检查创建的字符串\u BookingID是否位于数组
RoomID
代码如下所示:

assert Created_BookingID in RoomID

现在错误显示:-assert Created_BookingID in RoomID | | | | 148277 |[148281,148282,148277]false您确定
RoomID
也包含字符串值(与
Created_BookingID
的类型相同)?要检查
RoomID
元素的数据类型,请调用:
log.info(RoomID[0].getClass().toString())
。将断言之前创建的
BookingID
的数据类型强制转换为
RoomID
type。谢谢。”Created_BookingID'为字符串,其中as'RoomID'为整数。
assert Created_BookingID in RoomID