我有一个用Ruby编写的集成测试,使用Capybara(Webdriver / Selenium)查找日期选择器的图标,然后单击它,打开日历以获取日期:
find("input[type=date]").click
当运行测试的窗口(即Firefox窗口)没有焦点时,日历不会出现(并且测试失败)。
任何想法发生了什么?或者如何解决它?
答案 0 :(得分:0)
你正在使用错误的事件。日期选择器由焦点激活,而不是由点击激活。当窗口没有焦点时,此示例在Firefox和Chrome中正常工作:
$("#datepicker").datepicker();
setTimeout(function() {
$('#datepicker').focus();
}, 5000);
演示:http://jsfiddle.net/ambiguous/dXJKL/
因此,请尝试修改测试以使用find('input[type=date]').focus()
。