我正在写一些肥皂测试案例,我看到断言失败了。我看到价值观,但不确定为什么它会失败。
以下是代码: -
import com.eviware.soapui.support.XmlHolder
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.TimeZone;
def scheduledStartDate = context.expand( '${testcaseschedule#ResponseAsXml#//Results[1]/ResultSet[1]/Row[1]/SCHEDULEDSTARTDATE[1]}' )
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"))
Date date = dateFormat.parse(scheduledStartDate)
long unixTimeStamp = (long)date.getTime()
def scheduledDateTime = context.expand( '${testcase#$.data.scheduledDateTime}' )"
log.info(scheduledStartDate);
log.info(scheduledDateTime);
log.info(unixTimeStamp);
assert unixTimeStamp==scheduledDateTime:"Test Case failed as the date in DB and from API were not equal";
记录的信息: 2016年2月27日星期六20:00:14:资料:2016-02-28 00:22:52.0 2016年2月27日星期六20:00:14:资料来源:1456618972000 2016年2月27日星期六20:00:14:资料来源:1456618972000
感谢您查看我的查询!
答案 0 :(得分:1)
问题是scheduledDateTime
是String
而unixTimeStamp
是long
。您可以将String
转换为long
以进行比较。
long scheduledDateTime = context.expand( '${testcase#$.data.scheduledDateTime}' ).toLong()
提示:expand()
返回String
。