对于我的一个项目,我正在使用Capybara和Poltergeist的组合。 我有一种情况,而不是使用表单提交,我有Javascript正在改变窗口位置
Ex:location.href = new_url;
为了测试我正在编写一个触发搜索点击事件的规范并打开新页面。
我面临的问题是测试用例总是失败,因为它无法在下一页找到该元素。原因是location.href被忽略,新页面永远不会被渲染。
我的规范代码如下
visit my_home_page_path
fill_in 'search_input_box', :with => 'some_data'
click_button('search_button')
在Javascript中:逻辑是做一个AJAX调用来做一些工作并返回新的url。 然后使用location.href,我将重定向到新页面。
这在浏览器中完全正常,但我的水豚测试用例失败了。
我甚至切换到Selenium Driver看看有什么问题,但同样的问题,在测试套件新页面没有打开。
任何想法如何处理?