Selenium IDE—捕获当前日期

Selenium IDE—捕获当前日期,selenium,selenium-ide,Selenium,Selenium Ide,我想知道selenium是否有一种捕获当前日期、月份、年份的方法,因为我使用的应用程序有一个单独的日期、月份、年份字段,我们需要手动输入这些字段。我这里的问题是,测试用例只接受日期use storeEval 下面的示例是一个完全工作的selenium测试,它完全符合您的需求,要运行它,请打开IDE,单击主窗口中的Source选项卡,并在标记之间粘贴代码 我在javascript中添加了一个返回日期31天的选项 您还可以使用runScript和storeEval的组合从页面中获取几乎任何内容。 我

我想知道selenium是否有一种捕获当前日期、月份、年份的方法,因为我使用的应用程序有一个单独的日期、月份、年份字段,我们需要手动输入这些字段。我这里的问题是,测试用例只接受日期use storeEval

下面的示例是一个完全工作的selenium测试,它完全符合您的需求,要运行它,请打开IDE,单击主窗口中的Source选项卡,并在标记之间粘贴代码

我在javascript中添加了一个返回日期31天的选项

您还可以使用runScript和storeEval的组合从页面中获取几乎任何内容。 我问的一个问题说明了这个想法

任何其他问题都可以添加评论,我很乐意提供帮助:


请参阅@icc97 comment,为日期添加零填充。

您找到了不同的解决方案吗?谢谢您的回答,但它看起来像是在存储日期月份和年份,但它是否会在我在未来日期中运行测试用例时自动选择日期???是的,我上面给出的示例存储并回显了日期组件,但是您可以使用selenium获取存储值并将其输入到表单中。我会将答案修改为演示。我已经编辑了答案,测试在页面上完美运行,看起来所有三个日期输入都是文本输入,只需复制该年的代码,并修改选择器以针对YYYY-MM-DD格式的正确输入:d=d.getFullYear+'-'+'0'+d.getMonth+1.slice-2+'-'+'0'+d.getDate.slice-2零填充来自
  <tr>
        <td>type</td>
        <td>form1:txtCoverDateDay</td>
        <td>02</td>
    </tr>
    <tr>
        <td>type</td>
    <td>form1:txtCoverDateMonth</td>
    <td>11</td>
</tr>
<tr>
    <td>type</td>
    <td>form1:txtCoverDateYear</td>
    <td>2011</td>
</tr>
<tr>
    <td>open</td>
    <td>http://www.plus2net.com/php_tutorial/date-selection.php</td>
    <td></td>
</tr>
<tr>
    <td>storeEval</td>
    <td>new Date().setDate( new Date().getDate() + 31);</td>
    <td>date</td>
</tr>
<tr>
    <td>echo</td>
    <td>${date}</td>
    <td></td>
</tr>
<tr>
    <td>storeEval</td>
    <td>d=new Date( new Date().getFullYear(), new Date().getMonth(), new Date().getDate() + 31); d=d.getFullYear()</td>
    <td>year</td>
</tr>
<tr>
    <td>type</td>
    <td>name=year</td>
    <td>${year}</td>
</tr>
<tr>
    <td>echo</td>
    <td>${year}</td>
    <td></td>
</tr>
<tr>
    <td>storeEval</td>
    <td>d=new Date( new Date().getFullYear(), new Date().getMonth(), new Date().getDate() + 31); d=d.getMonth() + 1</td>
    <td>month</td>
</tr>
<tr>
    <td>select</td>
    <td>name=month</td>
    <td>value=${month}</td>
</tr>
<tr>
    <td>echo</td>
    <td>${month}</td>
    <td></td>
</tr>
<tr>
    <td>storeEval</td>
    <td>d=new Date( new Date().getFullYear(), new Date().getMonth(), new Date().getDate() + 31).getDate(); d= d.toString().length == 1 ? &quot;0&quot; + d : d;</td>
    <td>day</td>
</tr>
<tr>
    <td>select</td>
    <td>name=dt</td>
    <td>label=${day}</td>
</tr>
<tr>
    <td>echo</td>
    <td>${day}</td>
    <td></td>
</tr>