java - Appium, Java-Client 重复类问题
问题描述
我正在尝试开始使用 Appium。我在 Android Studio 中做了一个基本的活动项目只是为了测试它。我将默认测试编辑为以下内容:
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
static AppiumDriver<MobileElement> driver;
@Test
public void useAppContext() throws MalformedURLException {
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME,"ANDORID");
capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION,"9");
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME,"SM-G960F");
capabilities.setCapability(MobileCapabilityType.UDID,"2a60aaba0c057ece");
capabilities.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT,"60");
URL url = new URL("http://127.0.0.1:4723/wd/hub");
driver = new AppiumDriver<MobileElement>(url,capabilities);
}
}
当我运行此测试时,我收到以下错误:
在模块 jetified-commons-logging-1.2.jar (commons-logging:commons-logging:1.2) 和 jetified-spring-jcl-5.1.8.RELEASE.jar (org .springframework:spring-jcl:5.1.8.RELEASE) 重复类 org.apache.commons.logging.LogFactory 在模块 jetified-commons-logging-1.2.jar (commons-logging:commons-logging:1.2) 和 jetified- spring-jcl-5.1.8.RELEASE.jar (org.springframework:spring-jcl:5.1.8.RELEASE) 在模块 jetified-commons-logging-1.2.jar 中找到重复的类 org.apache.commons.logging.LogFactory$1 (commons-logging:commons-logging:1.2) 和 jetified-spring-jcl-5.1.8.RELEASE.jar (org.springframework:spring-jcl:5.1.8.RELEASE) 重复类 org.apache.commons.logging。 impl.NoOpLog 在模块 jetified-commons-logging-1.2.jar (commons-logging:commons-logging:1.2) 和 jetified-spring-jcl-5.1 中找到。8.RELEASE.jar (org.springframework:spring-jcl:5.1.8.RELEASE) 在模块 jetified-commons-logging-1.2.jar (commons-logging: commons-logging:1.2) 和 jetified-spring-jcl-5.1.8.RELEASE.jar (org.springframework:spring-jcl:5.1.8.RELEASE) 重复类 org.openqa.selenium.SearchContext 在模块 jetified-java -client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium-api:3.141.59) 重复类org.openqa.selenium.WebDriver 在模块 jetified-java-client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq .selenium:selenium-api:3.141.59) 在模块 jetified-java-client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium-api:3.141.59) 在模块 jetified-java-client-7.3 中找到重复的类 org.openqa.selenium.WebDriver$Navigation .0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium-api:3.141.59) 重复类 org.openqa。 selenium.WebDriver$Options 在模块 jetified-java-client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium :selenium-api:3.141.59) 在模块 jetified-java-client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified- 中找到重复的类 org.openqa.selenium.WebDriver$TargetLocator selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium-api:3.141.59) 在模块 jetified-java-client-7.3.0 中发现重复的类 org.openqa.selenium.WebDriver$Timeouts。jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium-api:3.141.59) 重复类 org.openqa.selenium.WebDriver $Window 在模块 jetified-java-client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium- api:3.141.59) 在模块 jetified-java-client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141 中找到重复的类 org.openqa.selenium.WebElement .59.jar (org.seleniumhq.selenium:selenium-api:3.141.59) 在模块 jetified-java-client-7.3.0.jar (io.appium:java -client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium-api:3.141.59) 重复类 org.openqa.selenium.internal。FindsByCssSelector 在模块 jetified-java-client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium-api :3.141.59) 在模块 jetified-java-client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api- 中找到重复的类 org.openqa.selenium.internal.FindsById 3.141.59.jar (org.seleniumhq.selenium:selenium-api:3.141.59) 在模块 jetified-java-client-7.3.0.jar (io.appium: java-client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium-api:3.141.59) 在 jetified 模块中发现重复的类 org.openqa.selenium.internal.FindsByName -java-client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium-api:3.141.59) 在模块 jetified-java-client-7.3.0.jar (io.appium:java-client:7.3.0) 和 jetified-selenium-api-3.141.59 中发现重复的类 org.openqa.selenium.internal.FindsByTagName .jar (org.seleniumhq.selenium:selenium-api:3.141.59) 重复类 org.openqa.selenium.internal.FindsByXPath 在模块 jetified-java-client-7.3.0.jar (io.appium:java-client :7.3.0) 和 jetified-selenium-api-3.141.59.jar (org.seleniumhq.selenium:selenium-api:3.141.59)硒:硒-api:3.141.59)硒:硒-api:3.141.59)
转到文档以了解如何修复依赖关系解析错误。
我已经编辑了我的 build.gradle,所以它看起来像这样:
apply plugin: 'com.android.application'
android {
compileSdkVersion 30
buildToolsVersion "30.0.2"
defaultConfig {
applicationId "com.example.appiumtest"
minSdkVersion 26
targetSdkVersion 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
}
}
repositories {
jcenter()
maven {
url "https://repo.maven.apache.org/maven2/"
}
}
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.2.1'
implementation 'androidx.constraintlayout:constraintlayout:2.0.1'
implementation 'androidx.navigation:navigation-fragment:2.1.0'
implementation 'androidx.navigation:navigation-ui:2.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
androidTestImplementation 'io.appium:java-client:7.3.0'
}
有谁知道我为什么会收到这个错误?
解决方案
推荐阅读
- javascript - 从我的excel文件确认或取消数据上传后
- oracle - Oracle 包替换卡住了
- php - 如果我的 JQuery 表单填充控件为假,如何避免 PHP 重定向到“操作”网址?
- excel - 如何计算从表 1 到另一表 2 的不同特定单元格中出现的次数?
- php - 使用 php SoapServer 的分段错误(核心转储)错误
- javascript - 如何在 AM 图表 javascript 中仅选择一个国家/地区?
- angular - Videogular2:静音功能在 iphone、ipad 中不起作用
- xaml - 如何在运行时动态更改 App.xaml 资源
- javascript - 如何从javascript上的json文件中的对象数组重写索引
- python - Kivy 框架:使用 ScreenManager 时标签文本不更新