【问题标题】:Convert string to seconds - Robot framework将字符串转换为秒 - 机器人框架
【发布时间】:2015-04-28 16:03:42
【问题描述】:

我正在使用以下方式从页面获取时间戳:

|| ${value}= |  Get Text |  //span[@class='time']

它返回一个格式为“Apr 28, 2015 03:03 AM AST”的值。我想将它转换为秒,以便我可以将时间戳与之前在我的测试用例中发生的另一个事件进行比较。

对于以前的事件,我使用了以下内容,并且我在几秒钟内得到了结果:

||  ${secs} = |  Get Time  |    epoch

请让我知道我在上面缺少哪些信息,我将编辑我的问题。如果您还可以指导我,我也将不胜感激在拥有两个时间戳之后,我如何判断两个时间戳的差异是否小于 5 分钟。

【问题讨论】:

    标签: datetime robotframework


    【解决方案1】:

    您可以使用 DateTime 库

    该库有一个转换日期关键字,可以转换为纪元时间。

    但是请注意,一旦时区发挥作用,您的测试可能会失败,这仅仅是因为有人在不同时区的主机上运行它。

    *** Settings ***
    Library DateTime
    
    *** Keywords ***
    Convert The date to epoch
      [arguments] ${date}
      ${epoch_date}=  Convert Date  ${date}  epoch
      [return]  ${epoch_date}
    

    转换日期也可以接受格式参数(Apr 28, 2015 03:03 AM AST)

      ${epoch_date}=  Convert Date  ${date}  epoch  date_format=%bbb %dd, %Y %H:%M %p %Z
    

    格式解释如下: https://docs.python.org/2/library/datetime.html#strftime-strptime-behavior

    【讨论】:

    • 谢谢尤里。最后只是上面的一个小编辑|| ${epoch_date}= |转换日期 | ${日期} |时代 | date_format=%b %d, %Y %H:%M 完美运行
    猜你喜欢
    • 1970-01-01
    • 2016-10-30
    • 1970-01-01
    • 2021-01-16
    • 2017-02-26
    • 1970-01-01
    • 1970-01-01
    • 2020-06-28
    • 1970-01-01
    相关资源
    最近更新 更多