Appium 由于驱动程序而引发错误

我正在尝试使用appium运行自动测试,但我总是收到以下错误:


FAILED: f

java.lang.NoSuchMethodError: org.openqa.selenium.remote.http.HttpClient$Factory.createDefault()Lorg/openqa/selenium/remote/http/HttpClient$Factory;

我注意到,如果我删除从驱动程序声明到底部的所有内容,则测试成功。这是我的代码:


package test;

import java.net.MalformedURLException;

import java.net.URL;


import org.openqa.selenium.By;

import org.openqa.selenium.Platform;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.remote.BrowserType;

import org.openqa.selenium.remote.DesiredCapabilities;

import org.openqa.selenium.remote.RemoteWebDriver;

import org.testng.annotations.Test;


import io.appium.java_client.AppiumDriver;

import io.appium.java_client.MobileElement;

import io.appium.java_client.android.AndroidDriver;

import io.appium.java_client.remote.MobileCapabilityType;


public class FirstTest {

  @Test

  public void f() throws MalformedURLException, InterruptedException {


        new DesiredCapabilities();

        //Set the Desired Capabilities

        DesiredCapabilities caps = new DesiredCapabilities();


        caps.setCapability(MobileCapabilityType.BROWSER_NAME, BrowserType.CHROME);

        caps.setCapability(MobileCapabilityType.PLATFORM_NAME , Platform.ANDROID);

        caps.setCapability(MobileCapabilityType.DEVICE_NAME, "My Phone");

        caps.setCapability("udid", "K6T6R16C01001259"); //Give Device ID of your mobile phone

        caps.setCapability("platformName", "Android");

        caps.setCapability(MobileCapabilityType.VERSION, "7.0");

        caps.setCapability("appPackage", "com.android.chrome");

        caps.setCapability("appActivity", "com.google.android.apps.chrome.Main");

        caps.setCapability("noReset", "true");



        //Instantiate Appium Driver

        AppiumDriver<MobileElement> driver = null;

        try {

            driver = new AndroidDriver<MobileElement>(new URL("http://0.0.0.0:4723/wd/hub"), caps);


        } catch (MalformedURLException e) {

            System.out.println(e.getMessage());

        }

        driver.get("http://www.google.com");

  }

}


茅侃侃
浏览 170回答 2
2回答

慕哥6287543

我自己解决了。我将项目转换为maven项目,它现在就像一个魅力。

慕无忌1623718

我在一个双appium + selenium项目上遇到了同样的问题,这个项目一直运行良好。它停止工作,除了我升级intellij的那天,同样的例外......不知何故,一个重复的依赖项入到pom.xml中。(3.141.59和3.6.版本中现有的org.seleniumhq.selenium),我不知道,我怀疑这是由安装引入的,而不是由我的一些错过的举动引入的。因此,错误的来源来自这个重复的组织.seleniumhq.selenium 3.6。(与Appium 7.0.2或com.squareup.okhttp3或两者都不兼容...)。总结:删除 org.seleniumhq.selenium 3.6 重复的依赖关系,清空“目标”目录运行“maven clean”任务。然后一切都恢复了工作。因此,appium 7.0.2,selenium 3.141.59和com.squareup.okhttp3 3.11.0再次一起做得很好。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java