โฟลเดอร์ src / androidtest และ src / test ต่างกันอย่างไร


119

ในโปรเจ็กต์ใน Android Studio โดยค่าเริ่มต้นจะมีโฟลเดอร์ทดสอบสองโฟลเดอร์

ประการแรกคือsrc/androidTest. โฟลเดอร์นี้มีอยู่แล้วใน Android Studio เวอร์ชันก่อนหน้า อย่างไรก็ตามตอนนี้มีโฟลเดอร์ทดสอบใหม่ตามค่าเริ่มต้นsrc/testและการพึ่งพาใหม่testCompile 'junit: junit: 4.12'ในbuild.gradle.

ฉันใช้โฟลเดอร์ใดในการทดสอบ อะไรคือความแตกต่างระหว่างทั้งสอง?

คำตอบ:


134

src/androidTest มีไว้สำหรับการทดสอบหน่วยที่เกี่ยวข้องกับเครื่องมือวัดของ Android

src/testมีไว้สำหรับการทดสอบหน่วยบริสุทธิ์ที่ไม่เกี่ยวข้องกับกรอบงาน Android คุณสามารถเรียกใช้การทดสอบได้ที่นี่โดยไม่ต้องทำงานบนอุปกรณ์จริงหรือบนโปรแกรมจำลอง

คุณสามารถใช้ได้ทั้งสองโฟลเดอร์ ใช้อันแรกเพื่อทดสอบโค้ดที่ใช้ Android framework ใช้อันที่สองเพื่อทดสอบโค้ดที่เป็นคลาส java แท้ วิธีการเขียนข้อสอบแทบจะเหมือนกัน

ข้อมูลเพิ่มเติมที่นี่: http://developer.android.com/tools/testing/testing_android.html


URL ถูกเปลี่ยนเส้นทางไปที่: developer.android.com/studio/test/index.html
Guillaume Husta

คุณเพิ่งบันทึกวันของฉัน
C Johnson

แล้ว androidTestDebug ล่ะ?
the_prole

48

แหล่งข้อมูลที่ดีเกี่ยวกับการทดสอบ Android โดยทั่วไปคือหน้านักพัฒนาแนวทางปฏิบัติที่ดีที่สุดสำหรับการทดสอบ :

  • การทดสอบหน่วยในพื้นที่ ( /src/test/java/)

การทดสอบหน่วยที่รันภายในบน Java Virtual Machine (JVM) ใช้การทดสอบเหล่านี้เพื่อลดเวลาในการดำเนินการเมื่อการทดสอบของคุณไม่มีการอ้างอิงเฟรมเวิร์กของ Android หรือเมื่อคุณสามารถจำลองการอ้างอิงเฟรมเวิร์กของ Android ได้

  • การทดสอบด้วยเครื่องมือ ( /src/androidTest/java/)

การทดสอบหน่วยที่ทำงานบนอุปกรณ์ Android หรือโปรแกรมจำลอง การทดสอบเหล่านี้สามารถเข้าถึงข้อมูลเครื่องมือวัดได้เช่นบริบทของแอปที่คุณกำลังทดสอบ ใช้การทดสอบเหล่านี้เมื่อการทดสอบของคุณมีการอ้างอิงของ Android ซึ่งการจำลองวัตถุไม่สามารถตอบสนองได้

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.