Risoluzione dei problemi relativi ai test di strumentazione in Device Farm AWS - AWS Device Farm

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Risoluzione dei problemi relativi ai test di strumentazione in Device Farm AWS

Il seguente argomento elenca i messaggi di errore che si verificano durante il caricamento dei test di Instrumentation e consiglia soluzioni alternative per risolvere ogni errore.

INSTRUMENTATION_TEST_PACKAGE_UNZIP_FAILED

In presenza del seguente messaggio, attenersi alla procedura indicata per risolvere il problema.

avvertimento

Non siamo riusciti ad aprire il tuo file di testAPK. Verificare che il file sia valido e riprovare.

Verificare che sia possibile decomprimere il pacchetto di test senza errori. Nell'esempio seguente, il nome del pacchetto è app-debug-androidTest-unaligned.apk.

  1. Copiare il pacchetto di test nella directory di lavoro, quindi eseguire il comando seguente:

    $ unzip app-debug-androidTest-unaligned.apk
  2. Dopo aver decompresso il pacchetto, è possibile trovare la struttura ad albero della directory di lavoro eseguendo il seguente comando:

    $ tree .

    Un pacchetto di test Instrumentation valido produce un output come il seguente:

    . |-- AndroidManifest.xml |-- classes.dex |-- resources.arsc |-- LICENSE-junit.txt |-- junit (directory) `-- META-INF (directory)

    Per ulteriori informazioni, consulta Strumentazione per Android e AWS Device Farm.

INSTRUMENTATION_TEST_PACKAGE_AAPT_DEBUG_BADGING_FAILED

In presenza del seguente messaggio, attenersi alla procedura indicata per risolvere il problema.

avvertimento

Impossibile estrarre informazioni sul pacchetto di test. Verificare che il pacchetto di test sia valido eseguendo il comando "aapt debug badging <percorso del pacchetto di test>" e riprovare quando il comando non stampa più errori.

Durante il processo di convalida del caricamento, Device Farm analizza le informazioni dall'output del aapt debug badging <path to your package> comando.

Controllare che questo comando possa essere eseguito correttamente sul pacchetto di test Instrumentation

Nell'esempio seguente, il nome del pacchetto è app-debug-android Test-unaligned.apk.

  • Copiare il pacchetto di test nella directory di lavoro, quindi eseguire il comando seguente:

    $ aapt debug badging app-debug-androidTest-unaligned.apk

    Un pacchetto di test Instrumentation valido produce un output come il seguente:

    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'

    Per ulteriori informazioni, consulta Strumentazione per Android e AWS Device Farm.

INSTRUMENTATION_TEST_PACKAGE_INSTRUMENTATION_RUNNER_VALUE_MISSING

In presenza del seguente messaggio, attenersi alla procedura indicata per risolvere il problema.

avvertimento

Non siamo riusciti a trovare il valore dello strumentation runner nel file.xml. AndroidManifest Verifica che il pacchetto di test sia valido eseguendo il comando «aapt dump xmltree <path to your test package> AndroidManifest.xml» e riprova dopo aver trovato il valore dello strumentation runner dietro la parola chiave «instrumentation».

Durante il processo di convalida del caricamento, Device Farm analizza il valore di instrumentation runner dall'albero di XML analisi per un XML file contenuto nel pacchetto. Utilizzare il seguente comando: aapt dump xmltree <path to your package> AndroidManifest.xml.

Controllare che sia possibile eseguire questo comando nel pacchetto di test Instrumentation e sia possibile trovare il valore instrumentation.

Nell'esempio seguente, il nome del pacchetto è Test-unaligned.apk. app-debug-android

  • Copiare il pacchetto di test nella directory di lavoro, quindi eseguire il comando seguente:

    $ aapt dump xmltree app-debug-androidTest-unaligned.apk AndroidManifest.xml | grep -A5 "instrumentation"

    Un pacchetto di test Instrumentation valido produce un output come il seguente:

    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

    Per ulteriori informazioni, consulta Strumentazione per Android e AWS Device Farm.

INSTRUMENTATION_TEST_PACKAGE_AAPT_DUMP_XMLTREE_FAILED

In presenza del seguente messaggio, attenersi alla procedura indicata per risolvere il problema.

avvertimento

Non siamo riusciti a trovare il AndroidManifest file .xml valido nel pacchetto di test. Verifica che il pacchetto di test sia valido eseguendo il comando «aapt dump xmltree <path to your test package> AndroidManifest.xml» e riprova dopo che il comando non ha stampato alcun errore.

Durante il processo di convalida del caricamento, Device Farm analizza le informazioni dall'albero di analisi per un XML file contenuto nel pacchetto utilizzando il seguente comando:. XML aapt dump xmltree <path to your package> AndroidManifest.xml

Controllare che questo comando possa essere eseguito correttamente sul pacchetto di test Instrumentation.

Nel seguente esempio, il nome del pacchetto è Test-unaligned.apk. app-debug-android

  • Copiare il pacchetto di test nella directory di lavoro, quindi eseguire il comando seguente:

    $ aapt dump xmltree app-debug-androidTest-unaligned.apk AndroidManifest.xml

    Un pacchetto di test Instrumentation valido produce un output come il seguente:

    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")

    Per ulteriori informazioni, consulta Strumentazione per Android e AWS Device Farm.

INSTRUMENTATION_TEST_PACKAGE_TEST_PACKAGE_NAME_VALUE_MISSING

In presenza del seguente messaggio, attenersi alla procedura indicata per risolvere il problema.

avvertimento

Impossibile trovare il nome del pacchetto nel pacchetto di test. Verificare che il pacchetto di test sia valido eseguendo il comando "aapt debug badging <percorso per il pacchetto di test>" e riprovare dopo aver trovato un valore del nome del pacchetto con parola chiave "package: name".

Durante il processo di convalida del caricamento, Device Farm analizza il valore del nome del pacchetto dall'output del seguente comando:. aapt debug badging <path to your package>

Controllare che sia possibile eseguire questo comando nel pacchetto di test Instrumentation e che sia possibile trovare il valore del nome del pacchetto.

Nell'esempio seguente, il nome del pacchetto è app-debug-android Test-unaligned.apk.

  • Copiare il pacchetto di test nella directory di lavoro, quindi eseguire il comando seguente:

    $ aapt debug badging app-debug-androidTest-unaligned.apk | grep "package: name="

    Un pacchetto di test Instrumentation valido produce un output come il seguente:

    package: name='com.amazon.aws.adf.android.referenceapp.test' versionCode='' versionName='' platformBuildVersionName='5.1.1-1819727'

    Per ulteriori informazioni, consulta Strumentazione per Android e AWS Device Farm.