java - 为 SauceLabs 执行设置 DesiredCapability 时出错

标签 java selenium webdriver saucelabs

以下内容是根据https://saucelabs.com/platforms中列出的配置进行配置的.

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("platform", "Windows 8.1");
capabilities.setCapability("browserName", "firefox");
capabilities.setCapability("version", "33.0.");
capabilities.setCapability("name", "Bamboo Job");
driver = new RemoteWebDriver(new URL("http://user:key@localhost:4445/wd/hub"),capabilities);

上面的代码会导致以下错误:

java.lang.IllegalArgumentException: No enum constant org.openqa.selenium.Platform.Windows 8.1
at java.lang.Enum.valueOf(Enum.java:236)
at org.openqa.selenium.Platform.valueOf(Platform.java:30)
at org.openqa.selenium.remote.DesiredCapabilities.setCapability(DesiredCapabilities.java:168)
at com.automation.tool.internal.InitiateBrowser.getBrowser(InitiateBrowser.java:17)
at com.automation.tool.Automation_Tool.(Automation_Tool.java:36)
at ui_automation.Login_Validation.setUp(Login_Validation.java:19)

但是当我在平台枚举中提供值时,整个套件都会通过。例如:- WINDOWS、WIN8_1 但使用此方法无法提及 Mac 或 Linux 中的版本。

请告诉我如何修复此错误。

最佳答案

platform 设置的内容不是由 Selenium 决定,而是由 Sauce Labs 决定。他们有一个 whole page致力于告诉您确切要放在那里的内容。您可以选择平台、浏览器、浏览器版本,它会准确地告诉您您需要什么。

无论如何,Linux 的platform 字符串是字符串"Linux"。对于 Mac,您有多种选择,具体取决于您想要的操作系统版本。我看到的是:

"OS X 10.10"
"OS X 10.9"
"OS X 10.8"
"OS X 10.6"

关于java - 为 SauceLabs 执行设置 DesiredCapability 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26798746/

相关文章:

java - 在 TDD 中设计异步方法

java - 扩展 PageFactory 注释以支持 wait4element(By)?

session - 如何关闭失去客户端的 selenium RC 服务器上的浏览器

xpath - 测试Codeception/webdriver和动态表单ID

java - 通过 maven 运行 testng.xml 出现错误

java - 我们可以使用 Web 驱动程序来测试 https ://sites? 我正在尝试在 gmail.com 上工作,但它不起作用

java - 我们可以在 jSTL 标签中有一个可选属性取决于另一个属性吗?

javascript - 如何在 MAC 上使用 Protractor 与 Appium 和 IOS-Simulator 进行自动化测试

java - JTree刷新而不崩溃

java - 检查错误页面 webdriver java