Appium “线程中的异常”;“主要”;org.openqa.selenium.WebDriverException:未知错误:调用函数结果丢失';价值';
我正在安卓手机上的chrome浏览器中自动化一个web应用程序。我已经安装了7.0版的ADV 我正在尝试使用以下代码发送登录用户名-Appium “线程中的异常”;“主要”;org.openqa.selenium.WebDriverException:未知错误:调用函数结果丢失';价值';,appium,appium-android,Appium,Appium Android,我正在安卓手机上的chrome浏览器中自动化一个web应用程序。我已经安装了7.0版的ADV 我正在尝试使用以下代码发送登录用户名- 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://
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")
driver=新的AppiumDriver(新的URL(“http://0.0.0.0:4723/wd/hub(能力),;
driver.manage().timeouts().implicitlyWait(60,TimeUnit.SECONDS);
驱动程序。获取(“https://site-url/");
driver.findElement(By.id(“电子邮件”)).sendKeys(“myemailid@gmail.com")
它抛出以下异常-
线程“main”org.openqa.selenium.WebDriverException中的异常:
未知错误:调用函数结果缺少“值”(会话信息:
chrome=71.0.3578.99)(驾驶员信息:chromedriver=2.33.506120
(E3E5343736286C0BC2D2DC9AA4915BA81D9023F),平台=Windows NT
10.0.17134 x86_64)(警告:服务器未提供任何stacktrace信息)命令持续时间或超时:0毫秒
注意:请不要将其标记为重复。以下参考资料中的解决方案不适用于我
我正在使用最新的chrome版本,即71和chromedriver 2.45。这似乎不是一个兼容性问题
观察:chromedriver版本2.45用于设置属性,但它在例外情况下显示
chromedriver=2.33.506120
,我想对其进行注释,但为了清楚起见,我将其写在这里。是的,它重复上面的帖子,见日志
(会话信息:chrome=71.0.3578.99)
(驾驶员信息:chromedriver=2.33.506120
您使用的chromedriver2.33
就是Chromev60-62的chromedriver
我正在使用最新的chrome版本,即61和chromedriver 2.45
似乎不存在兼容性问题
ChromeDriver2.45
用于Chromev70-72
解决方案:请参阅以了解其他兼容性并下载在我的情况下,这似乎是默认的Appium的chromedriver.exe
问题,因为默认情况下,即使我设置了2.45版本,它也会使用chromedriver=2.33.506120
。以下解决方法解决了我的问题
先决条件
应具有与设备/仿真器中安装的chrome版本兼容的chromedriver.exe
版本
使用设置应用程序中的chromedriver.exe路径
System.setProperty(“webdriver.chrome.driver”,
“D:\\Eclipse\\chromedriver.exe”);
不起作用
使用以下方法在应用程序中设置chromedriver路径:
使用所需的功能,例如
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");
启动Appium服务器时提供chromedriver.exe路径。请参阅下面的快照
嘿,我不知道它从哪里来了chromedriver=2.33.506120
。我已经下载了2.45并在System.setProperty(“webdriver.chrome.driver”,“D:\\Eclipse\\chromedriver.exe”)中配置了路径
在chromedriver 2.45所在的文件夹之外,尝试在CMDits Powershell命令中运行where chromedriver
,然后尝试此D:\Eclipse\chromedriver.exe--version
并尝试将double\`替换为/`最后一次尝试:D打印属性System.out.println(System.getProperty(“webdriver.chrome.driver”))
它显示与我设置的路径相同。你能检查端口是否指向不同的服务器或URL是否正确吗?一切都很好。问题在于发送密钥
我能够执行单击按钮和链接检查电子邮件字段是否可以在单击时启用。因为人工操作单击然后发送密钥。自动化只要发钥匙就行了。