admin管理员组文章数量:1516870
WebDriver - 设置浏览器启动语言
作者: Max.Bai
时间: 2015/06
WebDriver - 设置浏览器启动语言
有时候开启浏览器需要特别的语言版本,比如,英文的,中文的。
测试时候发现,机器默认启动的是系统语言对应的浏览器,我们的被测网站的中文的,而系统是英文的,开启的浏览器就是英文的,提交的某些数据按照en-US的格式提交了,导致数据报错,那么我们就需要设置浏览器启动语言。
1. Firefox
Firefox 我们可以通过FirefoxProfile 来解决这个问题。
FirefoxProfile ffpf = new FirefoxProfile();
ffpf.SetPreference("intl.accept_languages", "en-GB");
// for FirefoxDriver
driver = new FirefoxDriver(ffpf);
// for remote driver
DesiredCapabilities ffcaps = DesiredCapabilities.firefox();
ffcaps.setCapability(FirefoxDriver.PROFILE, ffpf.toString());
driver = new RemoteWebDriver(new URL(remoteUrl), ffcaps);
2. Chrome
Chrome 需要通过ChromeOptions来解决。
同时chromeoption 也可以解决启动浏览器的时候添加执行的参数, 比如--private。
ChromeOptions op = new ChromeOptions();
op.addArguments("--lang=zh-CN");
// for ChromeDriver
driver = new ChromeDriver(op);
// for remote driver
DesiredCapabilities chromecaps = DesiredCapabilities.chrome();
chromecaps.setCapability("chromeOptions", op);
driver = new RemoteWebDriver(new URL(remoteUrl), chromecaps);貌似 intl.accept_languages 也可以,没有试验
Chromedriver caps官网
3. IE
IE 就简单了,不用代码解决,直接手动设置IE的语言就可以了,自动化执行的时候就是你设置的语言了,当然你也可以修改注册表来自动化这个问题,具体哪个注册表自己查吧
IE添加添加启动参数可以
使用DesiredCapabilities
DesiredCapabilities iecaps = DesiredCapabilities.internetExplorer();
iecaps.setCapability(InternetExplorerDriver.FORCE_CREATE_PROCESS, true);
iecaps.setCapability(InternetExplorerdriver.IE_SWITCHES, "-private");
// for InternetExplorerDriver
driver = new InternetExplorerDriver(iecaps);
// for remote driver
driver = new RemoteWebDriver(new URL(remoteUrl), iecaps);
版权声明:本文标题:通过WebDriver自动配置你的浏览器语言环境 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.betaflare.com/web/1770993697a3260841.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


发表评论