如果窗口没有焦点,则不会出现jQuery UI日期选择器

时间:2012-06-15 16:01:52

标签: ruby selenium webdriver capybara jquery-ui-datepicker

我有一个用Ruby编写的集成测试,使用Capybara(Webdriver / Selenium)查找日期选择器的图标,然后单击它,打开日历以获取日期:

find("input[type=date]").click

当运行测试的窗口(即Firefox窗口)没有焦点时,日历不会出现(并且测试失败)。

任何想法发生了什么?或者如何解决它?

1 个答案:

答案 0 :(得分:0)

你正在使用错误的事件。日期选择器由焦点激活,而不是由点击激活。当窗口没有焦点时,此示例在Firefox和Chrome中正常工作:

$("#datepicker").datepicker();
setTimeout(function() {
    $('#datepicker').focus();
}, 5000);

演示:http://jsfiddle.net/ambiguous/dXJKL/

因此,请尝试修改测试以使用find('input[type=date]').focus()