我注意到,在网格上并行运行多个 selenium firefox 测试时,焦点事件处理无法正常工作。我已经确认,当我的每个测试都单独运行并关注操作系统时,测试通过 100% 的时间。我还使用 Chrome 在网格上并行运行了测试,但没有发现问题。
我在 google groups 上发现了以下线程,这表明在单独的 xvfb 实例中启动每个浏览器可能是一个可行的解决方案。 https://groups.google.com/forum/?fromgroups#!topic/selenium-developers/1cAmsYCp2ho%5B1-25%5D
测试失败的部分是由于项目中使用的 jquery 日期选择器。日期选择器在焦点事件上启动,并且由于同时执行多个 selenium 测试,因此 webdriver 测试执行 .click() 命令,但焦点没有保持足够长的时间以显示日期选择器小部件。
.focus(function(){ $input.trigger("focus"); });
- jQuery 时间选择器插件
- 作者:特伦特理查森 [ http://trentrichardson.com]
我的问题是,是否有人以前见过这个并通过一些 Firefox 配置文件设置解决了这个问题。我尝试加载以下对问题没有影响的属性。
profile.setAlwaysLoadNoFocusLib(true);
测试失败的方式与之前在远程驱动程序 Firefox 配置文件中启用并加载该属性的方式相同。
我需要一种方法来确保 100% 的时间触发焦点事件,或者解决多个 Firefox 浏览器争夺焦点的问题。考虑到 Chrome 没有显示这些问题,我想知道它是否也可能被视为 Firefox 中的错误。
谢谢!