Ich bin ein Mittelstufentester, der derzeit Optionen für die mobile Automatisierung untersucht. Ich bin mit Appium/Selenium vertraut und versuche nun TestNG einzuführen, um Testsuites zu verwalten.Appium/Selenium TestNG Gradle DexArchiveBulderException Fehler beim Erstellen
Ich habe einen Fehler beim Versuch, ein einfaches Projekt zu erstellen, um mobile Tests mit TestNG und Appium/Selenium zu starten. Ich kann nicht herausfinden, wie ich diesen Fehler beheben kann.
Hier ist meine build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 27
defaultConfig {
applicationId "com.example.mikejohnson.testngtest"
minSdkVersion 15
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
configurations.all {
resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9' // added this to resolve initial build conflict
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.0.1'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'org.testng:testng:6.11' //added this
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
implementation 'org.seleniumhq.selenium:selenium-java:3.7.1' //added this
implementation 'io.appium:java-client:5.0.4' //added this
}
Hier ist der Fehler:
Information:Gradle tasks [clean, :app:assembleDebug]
Warning:Ignoring InnerClasses attribute for an anonymous inner class
Error:com.android.builder.dexing.DexArchiveBuilderException: Failed to process C:\Users\Mike.Johnson\.gradle\caches\modules-2\files-2.1\org.seleniumhq.selenium\selenium-firefox-driver\3.7.1\460c39abe149b7c649dd05dd71ab64ca80f738aa\selenium-firefox-driver-3.7.1.jar
Error:com.android.builder.dexing.DexArchiveBuilderException: Error while dexing org/openqa/selenium/firefox/FirefoxBinary.class
Error:com.android.dx.cf.code.SimException: invalid opcode ba (invokedynamic requires --min-sdk-version >= 26)
Error:Execution failed for task ':app:transformClassesWithDexBuilderForDebug'.
> com.android.build.api.transform.TransformException: com.android.builder.dexing.DexArchiveBuilderException: com.android.builder.dexing.DexArchiveBuilderException: Failed to process C:\Users\Mike.Johnson\.gradle\caches\modules-2\files-2.1\org.seleniumhq.selenium\selenium-firefox-driver\3.7.1\460c39abe149b7c649dd05dd71ab64ca80f738aa\selenium-firefox-driver-3.7.1.jar
Information:BUILD FAILED in 10s
Information:4 errors
Information:1 warning
Information:See complete output in console
zu diesem Punkt zu gelangen, alles, was ich getan habe, ist ein grundlegendes android-Projekt erstellen und versuchte, die hinzufügen benötigte Abhängigkeiten für TestNG und Appium/Selenium zu bauen.
Die Fehler werden eingeführt, wenn die Abhängigkeiten für TestNG und Appium/Selen kombiniert werden. Das Projekt kann erfolgreich nur mit TestNG-Abhängigkeiten oder nur mit Appium/Selenium-Abhängigkeiten arbeiten. Sobald ich TestNG zusammen mit Appium/Selenium kombiniere, beginnen Fehler zu erscheinen.
Ich habe viele mögliche Lösungen gesucht und ausprobiert, aber es endet immer mit einer DexArchiveBulderException. Ich habe nicht die Erfahrung, abzuleiten, was mit den Abhängigkeiten falsch läuft, und es gibt sehr wenig Informationen über "DexArchiveBuilderException" beim Suchen.
Wenn es andere Informationen gibt, die ich zur Verfügung stellen kann, lassen Sie es mich bitte wissen. Danke für die Hilfe im Voraus.
Entschuldigung, ich hätte genauer sein sollen; Ich bereite mich auf mobile Automatisierung mit Appium vor. Selen kenne ich schon. –
Ich aktualisierte die Antwort. Sie müssen separate Projekt erstellen und Tests auf PC/VM mit entsprechender Konfiguration (JVM, Android SDK, etc.) ausführen – dmle
Ich bin bereits vertraut mit Appium und habe es eingerichtet Tests mit Android SDK, etc. zu starten. Ich benutze Android Studio. Das hilft mir nicht. Ich brauche Hilfe herauszufinden, warum TestNG Abhängigkeiten Konflikt mit Appium/Selen und wie zu beheben. Danke –