我正在运行一些自动化测试,想知道是否有办法控制下面显示的用户代理字符串设置?通过修改注册表或使用某些API(类似于InternetZoneManager)。
我知道[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\User Agent
注册表项,但据我所知,此IE设置会覆盖该项。
答案 0 :(得分:1)
因此,如果您更改兼容性视图设置文件,我认为您会有更好的运气。
该文件位于此路径中:
文件:\\%LOCALAPPDATA%\微软\互联网 资源管理器\ IECompatData \ iecompatdata.xml
在此文件中,您可以配置IE呈现的方式,并为每个站点提供用户代理。
修改强>
您需要关注以下元素:
uaString
,如果它覆盖页面上的X-UA兼容标签。示例:
<ua id="Dummy">
Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Dummy2
</ua>
<domain docMode="EmulateIE10"
versionVector="10"
uaString="Dummy"
featureSwitch="overrideXUACompatible:true">
YourSiteHere.com
</domain>
在此示例中,我有一个名为ua
的{{1}},我正在使用它来定位IE10 Trident 6.0 Token
网站。我甚至设置了test.com
,浏览器会在页面上忽略它。
修改2
要让IE读取overrideXUACompatible
文件,您需要按照以下步骤操作:
您可以找到有关兼容性视图设置here的更多信息。