我在单窗口模式和IE8中运行Selenium。
如果我手动启动IE8,则设置IE8模式,但是当我使用Selenium启动它时,模式设置为使用兼容模式的IE7。
任何人都知道为什么在使用Selenium启动浏览器时,兼容模式不是IE8视图?
或者,我如何完全禁用IE中的兼容模式并强制它始终使用IE8视图?
答案 0 :(得分:5)
我给了一个+1的问题因为这是一个非常好的问题 - 如何做到这一点并不明显,如果你需要测试这两种模式,那么这是必要的事情。
运行测试时,您可以让网站在页面中提供<meta http-equiv="X-UA-Compatible" content="IE=7" />
。这应该强制输出模式。
显然,这并不理想,因为这意味着更改代码以按需生成元标记。我通常认为如果你不得不改变主代码库来为你的测试套件的特定用途添加代码是一件坏事,但在这种情况下我看不到任何其他解决方案。
鉴于我们已经决定沿着这条路走下去,你可以编写代码来接受触发元标记的URL中的指定参数。然后可以编写IE7测试以发送该URL参数。
顺便说一句,值得指出的是,IE8的IE7兼容模式与IE7并非完全相同;它有自己的怪癖和错误,它们与真正的IE7浏览器不同。在大多数情况下它应该没问题,但如果你期望你的测试确认该网站在IE7中工作,那么值得注意这一点。见this blog post for more info
答案 1 :(得分:4)
我有一些解决方法,我经常使用它:
在Internet Explorer中转到: 1.工具/兼容性视图设置。 2.在添加网站输入文本框中添加您的网站网址。
希望有帮助,最好的问候,
彼得纳达西(匈奴)