selenium-webdriver - 如何使用 RemoteWebDriver 设置浏览器语言

标签 selenium-webdriver remotewebdriver

我正在使用 Selenium 并进行测试,这些测试会随机选择它们运行的​​浏览器。
我有一些测试与国际化相关的功能,所以我需要让浏览器指定浏览器语言。

我最好的猜测是我需要使用 SetCapability 方法作为 DesiredCapabilities 类的一部分,但我不确定设置哪些功能是有效的。

最佳答案

结论/解决方案

最终我将继续使用 Firefox,因为它的支持似乎更彻底。

这是我的解决方案:

var fp = new FirefoxProfile();
fp.SetPreference("intl.accept_languages", "en-au");
desiredCap.SetCapability(FirefoxDriver.ProfileCapabilityName, fp.ToBase64String());

对于 Chrome,它对语言的支持仅限于 ISO 639-1,这意味着它仅支持 2 种字符语言。我尝试了 en-au、en-ca 等,但在这些情况下似乎只添加了英语(英国)。
以下是我尝试过的选项及其结果的摘要:
var options = new ChromeOptions();
//options.AddArgument("--lang=es"); //espanol
//options.AddArgument("--lang=es-mx"); //espanol (Latinoamerica), espanol
//options.AddArgument("--lang=en-ca"); //english (UK), english (us), english
//options.AddArgument("--lang=en-au"); //english (UK), english (us), english
//options.AddArgument("--lang=en-nz"); //english (UK), english (us), english
//options.AddArgument("--lang=zh"); //english (us), english
//options.AddArgument("--lang=zh-tw"); //Chinese (Traditional Chinese), Chinese, english (us), english
//options.AddArgument("--lang=zh-hk"); //Chinese (Traditional Chinese), Chinese, english (us), english
//options.AddArgument("--lang=zh-cn"); //Chinese (Simplified Chinese), Chinese, english (us), english
options.AddArgument("--lang=fr"); //Francais (France), Francais, english (us), english
//options.AddArgument("--lang=fr-ca"); //Francais (France), Francais, english (us), english
//options.AddArgument("--lang=aus"); //Francais (France), Francais, english (us), english
desiredCap.SetCapability(ChromeOptions.Capability, options);

一种

关于selenium-webdriver - 如何使用 RemoteWebDriver 设置浏览器语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20808209/

相关文章:

java - 方法中每次运行新值

selenium - 通过 sendKeys() 将字符串发送到 ExtJS 输入时,第一个字符不断丢失

java - Page.render() 返回 false

java - ChromeDriver Remote - 使用 browserstack 禁用通知

java - Selenium-Java-Actions 类型错误 : rect is undefined

selenium-webdriver - Selenium WebDriver 和 Selenium 服务器

java - 在 SauceLabs 上运行 Android WebDriver 测试

java - 如何通过使用 Selenium Grid 将文件从本地计算机传输到远程 Web 服务器来上传文件

xpath - 使用 Capybara 和 Xpath 悬停和单击按钮时遇到问题

java - WebDriver - 使用 selenium 检查忘记密码功能