2017-07-25 115 views
1
package demo; 
import java.net.MalformedURLException; 
import java.net.URL; 
import org.openqa.selenium.By; 
import org.openqa.selenium.WebElement; 
import org.openqa.selenium.remote.CapabilityType; 
import org.openqa.selenium.remote.DesiredCapabilities; 
import org.openqa.selenium.remote.RemoteWebDriver; 
import io.appium.java_client.android.AndroidDriver; 

    public class Test { 

RemoteWebDriver driver; 
public static void main(String[] args)throws MalformedURLException, InterruptedException{ 
    DesiredCapabilities capabilities = new DesiredCapabilities(); 
    capabilities.setCapability("deviceName", "Samsung S4"); 
    capabilities.setCapability("platformName", "Android"); 
    capabilities.setCapability(CapabilityType.BROWSER_NAME, "Chrome"); 
    capabilities.setCapability("platformVersion", "5.0.1"); 
    RemoteWebDriver driver = new AndroidDriver(new 
    URL("http://127.0.0.1:4723/wd/hub"), capabilities); 
    driver.get("http://www.google.com"); 
    WebElement keyword = driver.findElementByName("q"); 
    keyword.sendKeys("appium"); 
    driver.findElement(By.id("btnK")).click(); 
    Thread.sleep(5000); 

}} 如何解决的NoSuchMethodError和appiumDriver错误

错误是

Exception in thread "main" java.lang.NoSuchMethodError: org.openqa.selenium.remote.ErrorHandler.(Lorg/openqa/selenium/remote/ErrorCodes;Z)V at io.appium.java_client.AppiumDriver.(AppiumDriver.java:46) at demo.Test.main(Test.java:31)

我添加了所有必要的罐子文件。当我运行代码时,appium服务器上没有任何事情发生。任何帮助!

回答

0

你能重新检查一次代码吗“capabilities.setCapability(CapabilityType.BROWSER_NAME,”Chrome“);”

,也罐子有关“进口io.appium.java_client.android.AndroidDriver;” ..

尝试导入最新的罐子,然后再次运行。

capabilities.setCapability("platformName", "Android"); 
capabilities.setCapability("appPackage", "com.android.browser"); 
capabilities.setCapability("appActivity","com.android.browser.BrowserActivity"); 
capabilities.setCapability("platformVersion", "5.1"); 
0

NoSuchMethodError - 通常会在您尝试访问使用反射的运行时不可用的方法时引发此异常。

此错误可能是由于库(jar)版本不匹配而导致某些方法已被删除。