Исключение в потоке "main" org.openqa.selenium.WebDriverException: неизвестная ошибка: в результате вызова функции отсутствует пропущенное значение - PullRequest
0 голосов
/ 21 декабря 2018

Я автоматизирую веб-приложение в браузере Chrome на Android Mobile.У меня ADV с версией 7.0

Я пытаюсь отправить имя пользователя для входа в систему, используя следующий код -

driver = new AppiumDriver<WebElement>(new URL("http://0.0.0.0:4723/wd/hub"), capabilities);
driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);
driver.get("https://site-url/");
driver.findElement(By.id("email")).sendKeys("myemailid@gmail.com")

Выдает ниже исключения -

Исключение в потоке «main» org.openqa.selenium.WebDriverException: неизвестная ошибка: в результате вызова функции отсутствует «значение» (информация о сеансе: chrome = 71.0.3578.99) (информация о драйвере: chromedriver = 2.33.506120 (e3e53437346286c0bc2d2dc9aa4915ba )8123 платформа WindowsNT 10.0.17134 x86_64) (ВНИМАНИЕ: сервер не предоставил никакой информации о трассировке стека) Длительность или время ожидания команды: 0 миллисекунд

Примечание: пожалуйста, не отмечайте его как дубликат,Решение из приведенных ниже ссылок не работает для меня.

  1. org.openqa.selenium.WebDriverException: неизвестная ошибка: в результате вызова функции отсутствует пропущенное «значение»

  2. Selenium WebDriverException: неизвестная ошибка: результат вызова функции отсутствует «значение» при вызове метода sendkeys

Я использую последнюю версию Chromeт.е. 71 и хромированный драйвер 2,45.Кажется, это не проблема совместимости.

Замечание: chromedriver версии 2.45 используется для установки свойства, но показывает chromedriver=2.33.506120 в исключении

Ответы [ 2 ]

0 голосов
/ 26 декабря 2018

Похоже, проблема Appium chromedriver.exe по умолчанию в моем случае, так как она по умолчанию принимает chromedriver=2.33.506120, даже если я установил версию 2.45.следующий обходной путь решил мою проблему.

Предварительные условия Должна иметь совместимую chromedriver.exe версию с версией chrome, установленной в устройстве / эмуляторе

, указав путь к chromedriver.exe вAppium с использованием System.setProperty("webdriver.chrome.driver", "D:\\Eclipse\\chromedriver.exe"); не будет работать

Используйте следующие способы установки пути хромедривера в Appium:

  1. Использование DesiredCapabilitiesнапример,

    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability("platformName", "Android");
    capabilities.setCapability("deviceName", "emulator-5554 (9)");
    capabilities.setCapability("platformVersion", "9");
    capabilities.setCapability("browserName", "Chrome");
    capabilities.setCapability("noReset", true);
    capabilities.setCapability("chromedriverExecutable", "D:\\chromedriver_win32_2.45\\chromedriver.exe");
    
  2. Укажите путь к chromedriver.exe при запуске Appium Server.См. Ниже оснастку

    enter image description here

0 голосов
/ 21 декабря 2018

Я хочу сделать это комментарием, но чтобы прояснить это, я пишу это здесь.Да, он повторяется выше сообщения, см. Журнал

(Информация о сеансе: chrome = 71.0.3578.99)

(Информация о драйвере: chromedriver = 2.33.506120

Вы используете chromedriver 2.33, который для Chrome v60-62, а затем

Я использую последнюю версию Chrome, т. Е. 61, и chromedriver 2.45. Кажется, проблема совместимости отсутствует.

ChromeDriver 2.45 предназначен для Chrome v70-72

решение: см. страницу загрузки для другой совместимости и загрузки

...