Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Fehlerbehebung bei Instrumentierungstests in AWS Device Farm
Im folgenden Thema werden Fehlermeldungen aufgeführt, die beim Hochladen von Instrumentierungstests auftreten können, und Umgehungen für die einzelnen Fehler empfohlen.
INSTRUMENTATION_TEST_PACKAGE_UNZIP_FAILED
Wenn die folgende Meldung angezeigt wird, führen Sie die folgenden Schritte aus, um das Problem zu beheben.
Warnung
Wir konnten Ihre APK Testdatei nicht öffnen. Prüfen Sie, ob die Datei gültig ist, und versuchen Sie es erneut.
Stellen Sie sicher, dass Sie das Paket für den Test fehlerfrei dekomprimieren können. Im folgenden Beispiel lautet der Name des Pakets app-debug-androidTest-unaligned.apk.
Kopieren Sie das Testpaket in Ihr Arbeitsverzeichnis und führen Sie dann den folgenden Befehl aus:
$ unzip app-debug-androidTest-unaligned.apk
Nachdem Sie das Paket erfolgreich extrahiert haben, können Sie die Baumstruktur für das Arbeitsverzeichnis anzeigen, indem Sie den folgenden Befehl ausführen:
$ tree .
Bei einem gültigen Instrumentierungstestpaket sieht die Ausgabe wie folgt aus:
. |-- AndroidManifest.xml |-- classes.dex |-- resources.arsc |-- LICENSE-junit.txt |-- junit (directory) `-- META-INF (directory)
Weitere Informationen finden Sie unter Instrumentierung für Android und AWS Device Farm.
INSTRUMENTATION_TEST_PACKAGE_AAPT_DEBUG_BADGING_FAILED
Wenn die folgende Meldung angezeigt wird, führen Sie die folgenden Schritte aus, um das Problem zu beheben.
Warnung
Wir konnten keine Informationen zu Ihrem Testpaket extrahieren. Überprüfen Sie mit dem Befehl "aapt debug badging <Pfad zu Ihrem Testpaket>", ob das Testpaket gültig ist, und versuchen Sie es erneut, wenn der Befehl keine Fehler zurückgibt.
Während des Upload-Validierungsprozesses analysiert Device Farm Informationen aus der Ausgabe des aapt debug badging <path to your package>
Befehls.
Stellen Sie sicher, dass Sie diesen Befehl erfolgreich für Ihr Instrumentierungstestpaket ausführen können.
Im folgenden Beispiel lautet der Name des Pakets app-debug-androidTest-unaligned.apk.
Kopieren Sie das Testpaket in Ihr Arbeitsverzeichnis und führen Sie dann den folgenden Befehl aus:
$ aapt debug badging app-debug-androidTest-unaligned.apk
Bei einem gültigen Instrumentierungstestpaket sieht die Ausgabe wie folgt aus:
package: name='com.amazon.aws.adf.android.referenceapp.test' versionCode='' versionName='' platformBuildVersionName='5.1.1-1819727' sdkVersion:'9' targetSdkVersion:'22' application-label:'Test-api' application: label='Test-api' icon='' application-debuggable uses-library:'android.test.runner' feature-group: label='' uses-feature: name='android.hardware.touchscreen' uses-implied-feature: name='android.hardware.touchscreen' reason='default feature for all apps' supports-screens: 'small' 'normal' 'large' 'xlarge' supports-any-density: 'true' locales: '--_--' densities: '160'
Weitere Informationen finden Sie unter Instrumentierung für Android und AWS Device Farm.
INSTRUMENTATION_TEST_PACKAGE_INSTRUMENTATION_RUNNER_VALUE_MISSING
Wenn die folgende Meldung angezeigt wird, führen Sie die folgenden Schritte aus, um das Problem zu beheben.
Warnung
Wir konnten den Instrumentation Runner-Wert in der AndroidManifest XML-Datei nicht finden. Bitte überprüfen Sie, ob das Testpaket gültig ist, indem Sie den Befehl „aapt dump xmltree <path to your test package> AndroidManifest.xml“ ausführen, und versuchen Sie es erneut, nachdem Sie den Instrumentation Runner-Wert hinter dem Schlüsselwort „instrumentation“ gefunden haben.
Während des Upload-Validierungsprozesses analysiert Device Farm den Instrumentierungs-Runner-Wert aus dem XML Analysebaum für eine im XML Paket enthaltene Datei. Sie können folgenden Befehl verwenden: aapt dump xmltree <path to your package>
AndroidManifest.xml
.
Stellen Sie sicher, dass Sie diesen Befehl für Ihr Instrumentierungstestpaket ausführen und den Instrumentierungswert erfolgreich finden können.
Im folgenden Beispiel lautet der Name des Pakets Test-unaligned.apkapp-debug-android.
Kopieren Sie das Testpaket in Ihr Arbeitsverzeichnis und führen Sie dann den folgenden Befehl aus:
$ aapt dump xmltree app-debug-androidTest-unaligned.apk AndroidManifest.xml | grep -A5 "instrumentation"
Bei einem gültigen Instrumentierungstestpaket sieht die Ausgabe wie folgt aus:
E: instrumentation (line=9) A: android:label(0x01010001)="Tests for com.amazon.aws.adf.android.referenceapp" (Raw: "Tests for com.amazon.aws.adf.android.referenceapp") A: android:name(0x01010003)="
android.support.test.runner.AndroidJUnitRunner
" (Raw: "android.support.test.runner.AndroidJUnitRunner") A: android:targetPackage(0x01010021)="com.amazon.aws.adf.android.referenceapp" (Raw: "com.amazon.aws.adf.android.referenceapp") A: android:handleProfiling(0x01010022)=(type 0x12)0x0 A: android:functionalTest(0x01010023)=(type 0x12)0x0Weitere Informationen finden Sie unter Instrumentierung für Android und AWS Device Farm.
INSTRUMENTATION_TEST_PACKAGE_AAPT_DUMP_XMLTREE_FAILED
Wenn die folgende Meldung angezeigt wird, führen Sie die folgenden Schritte aus, um das Problem zu beheben.
Warnung
Wir konnten die gültige AndroidManifest XML-Datei in Ihrem Testpaket nicht finden. Bitte überprüfen Sie, ob das Testpaket gültig ist, indem Sie den Befehl „aapt dump xmltree <path to your test package> AndroidManifest.xml“ ausführen, und versuchen Sie es erneut, wenn der Befehl keinen Fehler ausgibt.
Während des Upload-Validierungsprozesses analysiert Device Farm mithilfe des folgenden Befehls Informationen aus dem XML Analysebaum nach einer im Paket enthaltenen XML Datei:. aapt dump xmltree <path to your package> AndroidManifest.xml
Stellen Sie sicher, dass Sie diesen Befehl erfolgreich für Ihr Instrumentierungstestpaket ausführen können.
Im folgenden Beispiel lautet der Name des Pakets Test-unaligned.apkapp-debug-android.
Kopieren Sie das Testpaket in Ihr Arbeitsverzeichnis und führen Sie dann den folgenden Befehl aus:
$ aapt dump xmltree app-debug-androidTest-unaligned.apk AndroidManifest.xml
Bei einem gültigen Instrumentierungstestpaket sieht die Ausgabe wie folgt aus:
N: android=http://schemas.android.com/apk/res/android E: manifest (line=2) A: package="com.amazon.aws.adf.android.referenceapp.test" (Raw: "com.amazon.aws.adf.android.referenceapp.test") A: platformBuildVersionCode=(type 0x10)0x16 (Raw: "22") A: platformBuildVersionName="5.1.1-1819727" (Raw: "5.1.1-1819727") E: uses-sdk (line=5) A: android:minSdkVersion(0x0101020c)=(type 0x10)0x9 A: android:targetSdkVersion(0x01010270)=(type 0x10)0x16 E: instrumentation (line=9) A: android:label(0x01010001)="Tests for com.amazon.aws.adf.android.referenceapp" (Raw: "Tests for com.amazon.aws.adf.android.referenceapp") A: android:name(0x01010003)="android.support.test.runner.AndroidJUnitRunner" (Raw: "android.support.test.runner.AndroidJUnitRunner") A: android:targetPackage(0x01010021)="com.amazon.aws.adf.android.referenceapp" (Raw: "com.amazon.aws.adf.android.referenceapp") A: android:handleProfiling(0x01010022)=(type 0x12)0x0 A: android:functionalTest(0x01010023)=(type 0x12)0x0 E: application (line=16) A: android:label(0x01010001)=@0x7f020000 A: android:debuggable(0x0101000f)=(type 0x12)0xffffffff E: uses-library (line=17) A: android:name(0x01010003)="android.test.runner" (Raw: "android.test.runner")
Weitere Informationen finden Sie unter Instrumentierung für Android und AWS Device Farm.
INSTRUMENTATION_TEST_PACKAGE_TEST_PACKAGE_NAME_VALUE_MISSING
Wenn die folgende Meldung angezeigt wird, führen Sie die folgenden Schritte aus, um das Problem zu beheben.
Warnung
Der Paketname konnte in Ihrem Testpaket nicht gefunden werden. Überprüfen Sie, ob das Testpaket gültig ist, indem Sie den Befehl "aapt debug badging <Pfad zu Ihrem Testpaket>" ausführen, und wiederholen Sie den Vorgang, nachdem Sie den Wert für den Paketnamen gefunden haben, der dem Schlüsselwort "package: name" folgt.
Während der Upload-Validierung analysiert Device Farm den Wert des Paketnamens aus der Ausgabe des folgenden Befehls:aapt debug badging <path to your package>
.
Stellen Sie sicher, dass Sie diesen Befehl für Ihr Instrumentierungstestpaket ausführen und den Wert für den Paketnamen erfolgreich finden können.
Im folgenden Beispiel lautet der Name des Pakets app-debug-androidTest-unaligned.apk.
Kopieren Sie das Testpaket in Ihr Arbeitsverzeichnis und führen Sie dann den folgenden Befehl aus:
$ aapt debug badging app-debug-androidTest-unaligned.apk | grep "package: name="
Bei einem gültigen Instrumentierungstestpaket sieht die Ausgabe wie folgt aus:
package: name='com.amazon.aws.adf.android.referenceapp.test' versionCode='' versionName='' platformBuildVersionName='5.1.1-1819727'
Weitere Informationen finden Sie unter Instrumentierung für Android und AWS Device Farm.