<tr>
<td>type</td>
<td>id=release_date</td>
<td>2012-09-30</td>
</tr>
这样可行,但我不想输入日期,而是使用DatePicker选择日期并尝试自动化。
答案 0 :(得分:6)
根据日期选择器的编码方式,这会有很大差异。例如,我正在使用一个使用Dojo的Web应用程序,我正在使用以下代码在datepicker弹出窗口而不是特定日期中选择特定位置(因为实际日期对我的测试并不重要):
<tr>
<td>waitForElementPresent</td>
<td>//*[@id="startDate"]</td>
<td></td>
</tr>
<tr>
<td>clickAt</td>
<td>xpath=(//input[@value='▼ '])[3]</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//table[@id='startDate_popup']/tbody/tr/td[4]/span</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//table[@id='startDate_popup']/tbody/tr/td[4]/span</td>
<td></td>
</tr>
我经常使用waitForElementPresent
来确保JavaScript在执行测试的下一步之前有时间完成运行。
我还发现,在Dojo小部件中单击时clickAt
非常有用,我通常更喜欢将XPath用于特定目标。
我希望这有帮助!
答案 1 :(得分:1)
作为Selenium IDE中的新手,这些天我做了一些包括日期选择器的测试。
我会粘贴我的HTML代码,但如果您有任何问题或任何问题,请随时提出。
<!--Set some random generators for Hour From/To-->
<tr>
<td>storeEval</td>
<td>[Math.floor((Math.random() * 31) + 1)]</td>
<td>random</td>
</tr>
<tr>
<td>click</td>
<td>//select[@id='valid']/option[3]</td>
<td></td>
</tr>
<!--Add values to From date and To date-->
<tr>
<td>click</td>
<td>id=p_date_from</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>link=${random}</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//div[@id='valid_period']/p[2]/span/span/abbr</td>
<td></td>
</tr>
<tr>
<td>storeEval</td>
<td>[Math.floor((Math.random() * 10) + 1)]</td>
<td>random</td>
</tr>
<tr>
<td>click</td>
<td>link=${random}</td>
<td></td>
</tr>