如何使用Robot Framework从另一个日期中减去一个日期?

问题描述 投票:0回答:1

我在使用Robot Framework关键字 Subtract Date From Date 测试一个日期是否在两个日期之间(例如11062020是在07062020和20062020之间),但我在日志文件中得到一个错误信息 ValueError: Invalid timestamp. 日期是一个 String 摘自 Span Text 我把它转换为日期,这是我的代码。

${date}=        Get Current Date   result_format=datetime
${postdate}=    Get Text    xpath://app-post[1]//div[1]//div[1]//div[1]//div[2]//div[1]//div[2]//div[1]//div[2]//span[2]
${postdate}=    Convert Date    ${postdate}     date_format=%d/%m/%y
${date}=    Convert Date    ${date}     result_format=%d/%m/%y
${temp} =   Subtract Date From Date     ${postdate}     ${date}
Should Be True  ${temp}>=0
datetime robotframework
1个回答
0
投票

问题是你没有遵循关键字的允许格式。Subtract Date From Date 这里提到的。https:/robotframework.orgrobotframeworklatestlibrariesDateTime.html#Date%20formats。

%y 会给你 20但这显然是不够的。如果我把它改成 %Y它将给我 2020 当年的,以及关键词 Subtract Date From Date 不会再抱怨无效的时间戳。你还需要把它改成类似于 date_format=%Y/%m/%d,也就是改变 %Y, %m%d.

EDIT:

我现在可以看到你也在使用 日期格式 以及 结果格式Convert Date. 这是你代码中的另一个错误,你需要使用 result_format 与两者。

编辑2。

完整的工作示例:

enter image description here

(这里你没有使用BuiltIn库, 这些日期时间关键字来自DateTime库)

© www.soinside.com 2019 - 2024. All rights reserved.