首页 文章

无法创建新的Chrome远程会话

提问于
浏览
2

我正在尝试使用Selenium Grid启动新的Chrome浏览器,但最终会出现以下错误

无法创建新的远程会话 . desired capabilities = Capabilities [{browserName = chrome,version = 55.0.2,platform = WINDOWS}],required capabilities = Capabilities [{}] Build info:version:'3.0.1',revision:'1969d75',time:' 2016-10-18 09:49:13 -0700'系统信息:主机:'PL9710388',ip:'10 .61.249.5',os.name:'Windows 7',os.arch:'amd64',os.version :'6.1',java.version:'1.8.0_111'驱动程序信息:driver.version:RemoteWebDriver

下面是我启动远程浏览器的代码

java -Dwebdriver.chrome.driver = C:\ chromedriver.exe -jar selenium-server-standalone-3.0.1.jar -role hub

java -Dwebdriver.chrome.driver = C:\ chromedriver.exe -jar selenium-server-standalone-3.0.1.jar -role node

cap = DesiredCapabilities.chrome();
cap.setVersion("55.0.2");
cap.setBrowserName("chrome");
cap.setPlatform(org.openqa.selenium.Platform.WINDOWS);
browser = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),cap);

你能帮我解决一下是什么问题吗?

3 回答

  • 3

    确保您的代码能够在系统中找到chromedriver . 您可以以编程方式设置路径,甚至可以从下面下载并保留您的驱动程序link

    System.setProperty("webdriver.chrome.driver","/path to/chromedriver.exe");
    cap = DesiredCapabilities.chrome();
    cap.setPlatform(org.openqa.selenium.Platform.WINDOWS);
    browser = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),cap);
    
  • 0

    java -Dwebdriver.chrome.driver=C:\chromedriver.exe -jar selenium-server-standalone-3.0.1.jar -role node 导致一个普通的vanilla节点被分离,这与PLATFORM风格无关(即,该节点未被分类为将平台识别为特征并且应该作为通用节点工作) .

    但是,您的测试代码似乎在指定平台,如下所示

    cap = DesiredCapabilities.chrome();
    cap.setVersion("55.0.2");
    cap.setBrowserName("chrome");
    cap.setPlatform(org.openqa.selenium.Platform.WINDOWS);
    

    要解决您的问题,请将测试代码更改为如下所示

    cap = DesiredCapabilities.chrome(); // this sets the browser name. u dont need to do it again.
    browser = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),cap);
    

    一旦你有了这个,你应该能够正确执行测试 .

    请不要忘记在启动节点之前将 chromedriver 二进制存在的位置添加到 PATH 变量,这样就不会发现与selenium相关的问题无法找到chromedriver的位置 .

    有关使用Grid的一般概述,请参阅my blog post

  • 3

    我遇到了同样的问题,我发现平台,浏览器名称和浏览器版本的详细信息与网格配置不匹配 . 具体是因为我使用platrom作为我将使用VISTA的窗口 . 还要确保使用中心URL而不是节点URL.Hub URL将是http://hubIP:port/wd/hub .

    请参阅下面的屏幕截图以获取有关节点的正确详细信息:
    enter image description here

相关问题