Apa perbedaan antara folder src / androidtest dan src / test?


119

Dalam sebuah proyek, di Android Studio, secara default, ada dua folder pengujian.

Yang pertama adalah src/androidTest. Folder ini sudah ada di versi Android Studio sebelumnya. Namun demikian, sekarang ada folder pengujian baru, secara default src/test, dan ketergantungan baru, testCompile 'junit: junit: 4.12'di build.gradle.

Folder mana yang saya gunakan untuk pengujian? Apa perbedaan diantara keduanya?

Jawaban:


134

src/androidTest adalah untuk pengujian unit yang melibatkan instrumentasi android.

src/testadalah untuk pengujian unit murni yang tidak melibatkan framework android. Anda dapat menjalankan pengujian di sini tanpa menjalankan di perangkat nyata atau di emulator.

Anda dapat menggunakan kedua folder tersebut. Gunakan yang pertama untuk menguji kode yang menggunakan framework Android. Gunakan yang kedua untuk menguji kode yang merupakan kelas java murni. Metode untuk menulis tes hampir sama.

Info lebih lanjut di sini: http://developer.android.com/tools/testing/testing_android.html



Anda baru saja menyelamatkan hari saya
C Johnson

bagaimana dengan androidTestDebug?
the_prole

48

Sumber informasi hebat yang berkaitan dengan pengujian android secara umum adalah laman pengembang Praktik Terbaik untuk Pengujian :

  • Tes unit lokal ( /src/test/java/)

Pengujian unit yang dijalankan secara lokal di Java Virtual Machine (JVM). Gunakan pengujian ini untuk meminimalkan waktu eksekusi saat pengujian Anda tidak memiliki dependensi framework Android atau saat Anda dapat meniru dependensi framework Android.

  • Tes berinstrumen ( /src/androidTest/java/)

Pengujian unit yang dijalankan di perangkat Android atau emulator. Pengujian ini memiliki akses ke informasi Instrumentasi, seperti Konteks aplikasi yang Anda uji. Gunakan pengujian ini jika pengujian Anda memiliki dependensi Android yang tidak dapat dipenuhi oleh objek tiruan.

https://developer.android.com/training/testing/start/index.html

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.