关于将字符串属性值设置为日期格式,执行日期操作然后将属性值还原为字符串,只是有一个小问题。
计划是我有一个名为testRunner.testCase.setPropertyValue( "LastModifiedDateTo")
的属性,其中变量是test 2.目前这个值是20170203,但这可以是任何动态值。
我想要做的是if if语句条件为真:
获取testRunner.testCase.getPropertyValue( "LastModifiedDateTo")
的属性值(不要抓住def test1变量,因为我实际上希望在自定义属性中更改属性值)
将字符串值20170203
转换为日期格式' 2017-02-03'
将第二天添加到日期中,以便现在“2017-02-04'
将日期转换回字符串格式' 20170204'并设置属性值
下面我在if语句中只有一个硬编码值,就像我对完成值所要求的那样但是我想要替换它来遵循上面的方法。有人可以帮助我完成转换并确定日期。
def test1 = testRunner.testCase.getPropertyValue( "LastModifiedDateTo")
def test2 = testRunner.testCase.getPropertyValue( "LastModifiedTimeFrom")
def test3 = testRunner.testCase.getPropertyValue( "LastModifiedTimeTo")
log.info test1
log.info test2
log.info test3
if (test2 == "23:50:00" && test3 == "00:00:00") {
testRunner.testCase.setPropertyValue( "LastModifiedDateTo", "20170204")
log.error "true"
} else {
log.error "false"
}
答案 0 :(得分:1)
日期格式一般无关紧要,您要做的是在给定日期添加一天。它可以通过以下方式实现丹麦(使用TimeCategory
):
import groovy.time.TimeCategory
def date = Date.parse('yyyyMMdd', '20170203')
use(TimeCategory) {
date = date + 1.day
}
assert date.format('yyyyMMdd') == '20170204'