2017-02-03 1 views
0

Я не могу подключить свой браузер к Selenium Grid. Любые идеи, почему следующий код не будет работать?Не удается подключить мой «BrowserFactory» к «Selenium Grid»

public static WebDriver getDriver() throws Exception { 
    try { 
    // Load the driver selected by user 
    Properties p = new Properties(); 
    FileInputStream fi = new FileInputStream(Constant.CONFIG_PROPERTIES_DIRECTORY); 
    p.load(fi); 
    if(p.getProperty("use_grid").equalsIgnoreCase("true")) { 
     DesiredCapabilities desiredCapabilities = new DesiredCapabilities(); 
     desiredCapabilities.getBrowserName(); 
     desiredCapabilities.setPlatform(Platform.WINDOWS); 
     return new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), desiredCapabilities); 
    } 
    String browserName = p.getProperty("browser"); 
    switch (browserName) { 
     case "firefox": 
     if (null == webdriver) { 
      System.setProperty("webdriver.gecko.driver", Constant.GECKO_DRIVER_DIRECTORY); 
      webdriver = new FirefoxDriver(); 
     } 
     break; 
  1. У меня есть узел и сетки и работает успешно.

Спасибо.

+0

'desiredCapabilities. getBrowserName(); 'похоже, что просто спрашивает, что такое имя браузера ... вы уже установили браузер? Вам, вероятно, нужна строка типа 'wishCapabilities.setBrowserName (« firefox »);' – mrfreester

+0

Еще пара вопросов. Что вы имеете в виду, когда говорите, что ваш код не будет работать? Значит ли это, что он работает локально? Или выдает ошибку? Если есть ошибка, что это? – mrfreester

ответ

0

Похоже, вы не устанавливаете браузер при использовании селеновой сетки. Попробуйте изменить эту строку:

desiredCapabilities.getBrowserName(); 

к этому:

desiredCapabilities.setBrowserName("firefox"); 

или это, если вы свойства в правильном формате и что код работает правильно:

desiredCapabilities.setBrowserName(p.getProperty("browser"));