5

我在这里和网络上搜索了我的问题的答案,但找不到任何对我有帮助的东西。希望这不是一个太愚蠢的问题。

我正在尝试让 Selenium 2 使用各种浏览器工作。我使用 Mac 作为集线器和节点,使用 Windows pc 作为节点。我的问题是 Chrome。我想在 Mac 上启动 Java 代码并让 Selenium 测试在 Windows pc 上运行。为了让 Chrome 在 localhost 上运行,我有以下代码:

System.setProperty("webdriver.chrome.driver", "Users/xxxxx/chromedriver");
WebDriver driver = new ChromeDriver();
driver.get("http://www.google.com");

这会在集线器/节点 Mac 上打开 Chrome。如何让它在 Windows PC 上打开?我可以将任何东西传递给 ChromeDriver() 类吗?

我试过使用 RemoteWebDriver,并且有以下内容:

System.setProperty("webdriver.chrome.driver", "/Users/xxxxx/chromedriver");
DesiredCapabilities cap = DesiredCapabilities.chrome();
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:9515/wd/hub), cap);
driver.get("http://www.google.com");

代码编译并执行,但 Chrome 从未出现。我没有收到任何错误。请注意,我在 localhost 上启动 RemoteWebDriver 并且 Chrome 仍然无法正常工作。如果我将 URL 更改为 Windows PC 的 IP,则没有任何变化。我在 RemoteWebDriver 上做错了,或者我需要将参数传递给 ChromeDriver。请帮忙。

4

1 回答 1

3

经过一番搜索,找到了答案。事实证明,remotewebdriver 的 URL 只需要不localhost:9515/wd/hub. 此外,如果在另一台机器上运行,请确保在该机器上启动 chromedriver 并指向webdriver.chrome.driverchromedriver 的位置。

于 2012-03-05T20:03:30.570 回答