問題1
執行腳本

報錯:
java.lang.NoSuchMethodError: org.openqa.selenium.remote.ErrorHandler.<init>(Lorg/openqa/selenium/remote/ErrorCodes;Z)V
at io.appium.java_client.AppiumDriver.<clinit>(AppiumDriver.java:46)
解決辦法:
更新pom.xml文件中selenium版本為2.42.2就可以解決,原因是圖2中java-client使用1.5以上的2.2.0版本,1.5以上的版本是依賴與selenium的2.42.2版本

圖1

圖2
問題2
執行腳本,注意腳本中被屏蔽了部分,我的想法的直接在手機桌面執行滑動

報錯
org.openqa.selenium.SessionNotCreatedException: A new session could not be created. (Original error: No app set; either start appium with --app or pass in an 'app' value in desired capabilities, or set androidPackage to launch pre-existing app on device) (WARNING: The server did not provide any stacktrace information)
解決辦法
日志中展示出問題的在“driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);”這個地方
我百度了關鍵字“
A new session could not be created
”,有人說將java的jdk改為1.7就可以了,但是我用的是1.8的版本,所以直接否定這個辦法
在將腳本改為下圖,區別在於我在虛擬機中先安裝app, 然后在初始化driver就不會報錯了
我猜想是因為當每次調試的時候,appium連接虛擬機,它的操作對象是一個app,而我上圖的腳本中未合理的初始化一個app,所以初始化driver失敗了,所以在使用appium在虛擬機中調試時候,都是需要重新安裝app后在初始化driver
