【问题标题】:Comparing two string as dates in Selenium在 Selenium 中比较两个字符串作为日期
【发布时间】:2017-06-20 23:23:35
【问题描述】:

所以我正在使用

<tr> 
    <td>storeEval</td> 
    <td>var d=new Date(); d.getDate()+'-'+((d.getMonth()+1)) 
+'-'+d.getFullYear();</td> 
    <td>date2</td> 
</tr>
<tr>
    <td>storeValue</td>
    <td>//span[@id=&quot;txtDateEnd&quot;]//input[@id=&quot;txtDateEnd_txt&quot;]</td>
    <td>Date1</td>
</tr>
<tr>
    <td>storeEval</td>
    <td>&quot;${Date1}&quot; &gt; &quot;${Date2}&quot;</td>
    <td>Test</td>
</tr>

来自Selenium IDE: How do I get today's date?

但是我想比较两个日期,其中一个是直接从我页面上的 xpath 注册的。事实是 Selenium 不会将这些值识别为日期格式,而只是尝试比较原始数字 togueter。我一直在寻找将这些值注册为日期而不是原始数字的正确语法,以便当我比较 "${Date1}" > "${Date2}" 时,将数字作为日期而不是原始数字进行比较。

【问题讨论】:

标签: javascript selenium


【解决方案1】:

正如上面显示的链接中所建议的,我使用“新日期”行来强制 selenium 将这些变量识别为日期。此外,我设法将整个脚本恢复为一行:

<tr>
    <td>storeEval</td>
    <td>(new Date() &gt; new Date(selenium.getValue('//span[@id=&quot;txtDateEnd&quot;]//input[@id=&quot;txtDateEnd_txt&quot;]')))</td>
    <td>CouponExpired</td>
</tr>

再次感谢您提供非常感谢的链接。

【讨论】:

    猜你喜欢
    • 2013-12-20
    • 2013-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-25
    • 2013-06-24
    • 2014-04-21
    • 2013-01-24
    相关资源
    最近更新 更多