DesiredCapabilities'Chrome'>不适用于'Selenium Grid。
当前代码:
case "chrome":
if (null == webdriver) {
System.setProperty("webdriver.chrome.driver", Constant.CHROME_DRIVER_DIRECTORY);
DesiredCapabilities capability = DesiredCapabilities.chrome();
capability.setBrowserName("chrome");
capability.setVersion("55.0.2883.87 m");
capability.setPlatform(Platform.WINDOWS);
webdriver = new RemoteWebDriver(new URL("http://172.16.1.48:5555/wd/hub"),capability);
}
break;
异常: org.openqa.selenium.SessionNotCreatedException:无法创建新的远程会话。 desired capabilities = Capabilities [{browserName = chrome,version = 55.0.2883.87 m,platform = WINDOWS}],required capabilities = Capabilities [{}]
答案 0 :(得分:0)
一些事情:
DesiredCapabilities capability = DesiredCapabilities.chrome();
时,它会自动适当地设置浏览器名称。所以你不需要通过capability.setBrowserName("chrome");
再次设置它(所以你可以将其删除)。capability.setVersion("55.0.2883.87 m");
,因为这会导致您的测试要求提供可支持chrome 55
版本的节点,但是,如果您未在节点上指定相同的版本控制,则您的网格将拒绝您的新会话请求,说明它无法找到所需的所需功能。localhost
上运行,正在侦听端口4444
,但您的代码显示为您正在尝试直接连接到该节点。所以请将webdriver = new RemoteWebDriver(new URL("http://172.16.1.48:5555/wd/hub"),capability);
更改为`webdriver = new RemoteWebDriver(新网址(" http://localhost:4444/wd/hub"),功能); 一旦你处理了这些项目,你的问题就应该得到解决。