当chrome窗口被发送到mac上的后台时,selenium测试会挂起css过渡

时间:2016-09-29 08:19:40

标签: macos google-chrome selenium

我在我的mac,El capitan上运行我的behat selenium测试时遇到了一个恼人的问题。

我有一个测试打开一个模态,如果chrome窗口在另一个窗口后面,它将挂起。只要我点击镀铬窗口将其带到前面,测试就会继续并通过。

模态使用css过渡来显示。如果我删除了转换,则测试通过。如果我保持浏览器的一部分可见,则测试通过。

我不确定这是mac在做某种性能优化还是chrome。有人知道我可以禁用此方法吗?我宁愿不必禁用css过渡或运行chrome headless。

1 个答案:

答案 0 :(得分:0)

在这里我找到了good article,它帮助我找到了一些铬的标志:
--disable-renderer-backgrounding-设置后阻止渲染器进程背景化。
--disable-background-timer-throttling —从后台页面禁用计时器任务的任务限制。
--disable-backgrounding-occluded-windows-为被遮挡的窗口禁用背景渲染。完成测试以避免不确定的行为。

这些标志确实为我解决了这个问题。

前段时间,我发现提到并尝试了这些标志--disable-gpu --disable-d3d11。 但是他们没有帮助。

可以在here中找到更多描述的标志。