如何使用groovy设置SOAPUI属性值的时间+ x分钟?

时间:2015-06-07 23:12:47

标签: groovy soapui

我想在SOAPUI中设置Property值,当前时间为+ 5分钟

我试过这个:

import groovy.time.*
import org.codehaus.groovy.runtime.TimeCategory
import groovy.time.TimeCategory
import java.text.SimpleDateFormat

currentDate =  new Date()
use( TimeCategory ) {
   after30Mins  = date + 30.minutes
}
testRunner.testCase.testSuite.project.setPropertyValue( "SendHour",after30Mins)
log.info (after30Mins)

我收到了这个错误:

groovy.lang.MissingMethodException: No signature of method: com.eviware.soapui.impl.wsdl.WsdlProject.setPropertyValue() is applicable for argument types: (java.lang.String, java.util.Date) values: [SendHour, Sun Jun 07 19:37:52 EDT 2015] Possible solutions: setPropertyValue(java.lang.String, java.lang.String), getPropertyValue(java.lang.String) error at line: 10

请帮助,谢谢

1 个答案:

答案 0 :(得分:2)

正如错误消息所示,方法setPropertyValue需要2个参数,两个参数都是String。因此解决方案是将after3OMins变量强制转换为String。在Groovy中,Date实现了format方法,使得转换为String非常简单。在我们的例子中它可能看起来像

testRunner.testCase.testSuite.project.setPropertyValue( "SendHour", 
after30Mins.format("yyyy-MM-dd'T'HH:mm:ssZ"))