WedDriverException:java.util.HashMap中不能初始化RemoteWe

2019-10-19 05:52发布

我试图运行parllel JUnit测试,并网格设置有3个节点,在执行测试有一个例外

org.openqa.selenium.firefox.NotConnectedException:无法连接后45000毫秒到主机端口7055 127.0.0.1。

我的理解是没有什么做与Firefox和硒的版本,我相信例外是由于锁在Firefox浏览器未内45000毫秒会抛出一个超时异常其他webdriver的情况下试图连接上发布了一个webdriver的情况下发出端口7055在同一时间(螨是因为系统慢度)

因此,我相信使用下面的代码增加超时在这种情况下,

   DesiredCapabilities capablities = new DesiredCapabilities();

    FirefoxBinary firefoxBinary = new FirefoxBinary();
    firefoxBinary.setTimeout(120000);


    FirefoxProfile profile = new FirefoxProfile();
    profile.setAcceptUntrustedCertificates(true);
    profile.setAssumeUntrustedCertificateIssuer(false);

    capablities = DesiredCapabilities.firefox();

    capablities.setCapability("firefox_binary", firefoxBinary);
    capablities.setCapability("firefox_profile", profile);

   driver =  new RemoteWebDriver(new URL("http://" + parameters.getRemoteUrl() + ":4444/wd/hub"), capablities);

但同样有一个例外WedDriverException:java.util.HashMap中不能转换为java.lang.String

对于firefoxbinary设置功能时,抛出此异常

capablities.setCapability("firefox_binary", firefoxBinary);

否则,RemoteWebdriver实例没有任何问题的产生

请让我知道,如果我在就增加超时锁定在端口7055正确的,如果是这样好心帮我在Firefox中的二进制解决异常的webdriver

Answer 1:

我不知道如果原来的错误(无法连接到主机上的端口7055 127.0.0.1)收到是由于超时问题。 我相信这是与硒和Firefox版本所使用。 看看一个类似的问题,我的回答上,所以如果你还没有准备好。 我相信你需要的,如果你没有使用最新的升级版本硒。



Answer 2:

我也有同样的问题

此代码的工作我的本地PC上。

FirefoxProfile fp = new FireFoxProfile();
fp.setPreference("Firefox43", "43.0.1");        
File pathBinary = new 
         File("C:\\PathToFirefox\\firefox.exe");
FirefoxBinary firefoxBinary = new FirefoxBinary(pathBinary);       
WebDriver driver = new FirefoxDriver(firefoxBinary, fp);

但是这个代码,不...

FirefoxProfile fp = new FirefoxProfile();
fp.setPreference("Firefox43", "43.0.1");
File pathBinary = new 
         File("C:\\PathToFirefox\\firefox.exe");
FirefoxBinary firefoxBinary = new FirefoxBinary(pathBinary);        
capabilities.setCapability(FirefoxDriver.PROFILE, fp);
capabilities.setCapability(FirefoxDriver.BINARY,firefoxBinary);
WebDriver driver = new RemoteWebDriver(new URL(hubUrl), capabilities);

它似乎有与RemoteWebDriver错误,请检查这个问题

UPDATE !!!!!

采用 :

capabilities.setCapability(FirefoxDriver.BINARY, new
            File("C:\\PathToFirefox\\firefox.exe"));

代替 ...

File pathBinary = new 
             File("C:\\PathToFirefox\\firefox.exe");
FirefoxBinary firefoxBinary = new FirefoxBinary(pathBinary);
capabilities.setCapability(FirefoxDriver.BINARY,firefoxBinary);


文章来源: WedDriverException : java.util.HashMap cannot be cast to java.lang.String when initializing RemoteWebDriver