微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 Robot Framework 减去两个日期

如何解决使用 Robot Framework 减去两个日期

我有以下示例,其中使用 Robot Framework 减去两个日期。 下面的这个例子没有问题。

*** Settings ***
Library           DateTime

*** Variables ***
${date1}    13.04.2021 19:40:22
${date2}    13.04.2021 19:33:33

*** Keywords ***
Subtract Two Dates
    ${diff}=    Subtract Date From Date  ${date1}  ${date2}  date1_format=%d.%m.%Y %H:%M:%s  date2_format=%d.%m.%Y %H:%M:%s

*** Test Cases ***
TC01
    Subtract Two Dates

但是在我尝试进行的实际减法中,日期将显示为:

${date1}    4/13/21,19:40:22 PM 
${date2}    4/13/21,19:33:33 PM

我应该如何修改 date1_format 和 date2_format 以实现上述格式的减法?

我曾尝试查看 DateTime 库文档并搜索各种示例,但均未成功。

解决方法

  • 首先,en_US 日期表示中没有 19。日期应该没有 PM/AM 或 9:40:22 PM
  • 其次,如果从 PM 中减去 AM,则会得到错误的结果。

这是正确的例子

*** Settings ***
Library  DateTime

*** Variables ***
${date1}    4/13/21,9:40:22 PM
${date2}    4/13/21,9:33:33 AM

*** Test Cases ***
Date Test
  ${diff}=  Subtract Date From Date  ${date1}  ${date2}  date1_format=%m/%d/%y,%I:%M:%S %p  date2_format=%m/%d/%y,%I:%M:%S %p  result_format=compact
  Log To Console  Difference: ${diff}
,

看来我是这样工作的:

*** Settings ***
Library           DateTime

*** Variables ***
${date1}    13.04.2021 19:40:22
${date2}    13.04.2021 19:33:33

${date1_modified}    4/13/21,19:40:22 PM
${date2_modified}    4/13/21,19:33:33 PM

*** Keywords ***
Subtract Two Dates
    ${diff}=    Subtract Date From Date  ${date1_modified}  ${date2_modified}  date1_format=%m/%d/%y,%H:%M:%S PM  date2_format=%m/%d/%y,%H:%M:%S PM

*** Test Cases ***
TC01
    Subtract Two Dates

因此,用于我搜索的这些示例日期的正确 date_format 是 %m/%d/%y,%H:%M:%S PM

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。