Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memecahkan masalah pengujian instrumentasi di Device Farm AWS
Topik berikut mencantumkan pesan galat yang terjadi selama pengunggahan pengujian Instrumentasi dan merekomendasikan solusi untuk mengatasi setiap kesalahan.
INSTRUMENTATION_TEST_PACKAGE_UNZIP_FAILED
Jika Anda melihat pesan berikut, ikuti langkah-langkah berikut untuk memperbaiki masalah.
Awas
Kami tidak dapat membuka APK file pengujian Anda. Harap verifikasi bahwa file tersebut valid dan coba lagi.
Pastikan Anda dapat membuka zip paket pengujian tanpa kesalahan. Dalam contoh berikut, nama paket adalah app-debug-androidTest-unaligned.apk.
Salin paket pengujian Anda ke direktori kerja Anda, lalu jalankan perintah berikut:
$ unzip app-debug-androidTest-unaligned.apk
Setelah Anda berhasil unzip paket, Anda dapat menemukan struktur pohon direktori kerja dengan menjalankan perintah berikut:
$ tree .
Paket uji Instrumentasi yang valid akan menghasilkan output seperti berikut:
. |-- AndroidManifest.xml |-- classes.dex |-- resources.arsc |-- LICENSE-junit.txt |-- junit (directory) `-- META-INF (directory)
Untuk informasi selengkapnya, lihat Instrumentasi untuk Android dan AWS Device Farm.
INSTRUMENTATION_TEST_PACKAGE_AAPT_DEBUG_BADGING_FAILED
Jika Anda melihat pesan berikut, ikuti langkah-langkah berikut untuk memperbaiki masalah.
Awas
Kami tidak dapat mengekstrak informasi tentang paket pengujian Anda. Harap verifikasi bahwa paket pengujian valid dengan menjalankan perintah “aapt debug badging <path to your test package>“, dan coba lagi setelah perintah tidak mencetak kesalahan apa pun.
Selama proses validasi upload, Device Farm mem-parsing informasi dari output perintah. aapt debug badging <path to your package>
Pastikan Anda dapat menjalankan perintah ini pada paket pengujian Instrumentasi Anda dengan sukses.
Dalam contoh berikut, nama paket adalah app-debug-androidTest-unaligned.apk.
Salin paket pengujian Anda ke direktori kerja Anda, lalu jalankan perintah berikut:
$ aapt debug badging app-debug-androidTest-unaligned.apk
Paket uji Instrumentasi yang valid akan menghasilkan output seperti berikut:
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'
Untuk informasi selengkapnya, lihat Instrumentasi untuk Android dan AWS Device Farm.
INSTRUMENTATION_TEST_PACKAGE_INSTRUMENTATION_RUNNER_VALUE_MISSING
Jika Anda melihat pesan berikut, ikuti langkah-langkah berikut untuk memperbaiki masalah.
Awas
Kami tidak dapat menemukan nilai instrumentasi runner di.xml.xml. AndroidManifest Harap verifikasi bahwa paket pengujian valid dengan menjalankan perintah “aapt dump xmltree <path to your test package> AndroidManifest.xmltree.”, dan coba lagi setelah menemukan nilai runner instrumentasi di belakang kata kunci “instrumentasi.”
Selama proses validasi upload, Device Farm mem-parsing nilai instrumentasi runner dari pohon XML parse untuk XML file yang terdapat dalam paket. Anda dapat menggunakan perintah berikut:aapt dump xmltree <path to your package>
AndroidManifest.xml
.
Pastikan Anda dapat menjalankan perintah ini pada paket pengujian Instrumentasi Anda dan menemukan nilai instrumentasi dengan sukses.
Dalam contoh berikut, nama paket adalah app-debug-androidTest-unaligned.apk.
Salin paket pengujian Anda ke direktori kerja Anda, lalu jalankan perintah berikut:
$ aapt dump xmltree app-debug-androidTest-unaligned.apk AndroidManifest.xml | grep -A5 "instrumentation"
Paket uji Instrumentasi yang valid akan menghasilkan output seperti berikut:
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)0x0Untuk informasi selengkapnya, lihat Instrumentasi untuk Android dan AWS Device Farm.
INSTRUMENTATION_TEST_PACKAGE_AAPT_DUMP_XMLTREE_FAILED
Jika Anda melihat pesan berikut, ikuti langkah-langkah berikut untuk memperbaiki masalah.
Awas
Kami tidak dapat menemukan AndroidManifest .xml.xml. yang valid dalam paket pengujian Anda. Harap verifikasi bahwa paket pengujian valid dengan menjalankan perintah “aapt dump xmltree <path to your test package> AndroidManifest.xmltree.”, dan coba lagi setelah perintah tidak mencetak kesalahan apa pun.
Selama proses validasi upload, Device Farm mem-parsing informasi dari pohon XML parse untuk XML file yang terdapat dalam paket menggunakan perintah berikut:. aapt dump xmltree <path to your package> AndroidManifest.xml
Pastikan bahwa Anda dapat menjalankan perintah ini pada paket pengujian instrumentasi Anda berhasil.
Dalam contoh berikut, nama paket adalah app-debug-androidTest-unaligned.apk.
Salin paket pengujian Anda ke direktori kerja Anda, lalu jalankan perintah berikut:
$ aapt dump xmltree app-debug-androidTest-unaligned.apk AndroidManifest.xml
Paket uji Instrumentasi yang valid akan menghasilkan output seperti berikut:
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")
Untuk informasi selengkapnya, lihat Instrumentasi untuk Android dan AWS Device Farm.
INSTRUMENTATION_TEST_PACKAGE_TEST_PACKAGE_NAME_VALUE_MISSING
Jika Anda melihat pesan berikut, ikuti langkah-langkah berikut untuk memperbaiki masalah.
Awas
Kami tidak dapat menemukan nama paket dalam paket pengujian Anda. Harap verifikasi bahwa paket pengujian valid dengan menjalankan perintah “aapt debug badging <path to your test package>“, dan coba lagi setelah menemukan nilai nama paket di belakang kata kunci “package: name.”
Selama proses validasi upload, Device Farm mem-parsing nilai nama paket dari output perintah berikut:. aapt debug badging <path to your package>
Pastikan bahwa Anda dapat menjalankan perintah ini pada paket pengujian Instrumentasi Anda dan menemukan nilai nama paket berhasil.
Dalam contoh berikut, nama paket adalah app-debug-androidTest-unaligned.apk.
Salin paket pengujian Anda ke direktori kerja Anda, lalu jalankan perintah berikut:
$ aapt debug badging app-debug-androidTest-unaligned.apk | grep "package: name="
Paket uji Instrumentasi yang valid akan menghasilkan output seperti berikut:
package: name='com.amazon.aws.adf.android.referenceapp.test' versionCode='' versionName='' platformBuildVersionName='5.1.1-1819727'
Untuk informasi selengkapnya, lihat Instrumentasi untuk Android dan AWS Device Farm.