Sự khác biệt giữa thư mục src / androidtest và src / test là gì?


119

Trong một dự án, trong Android Studio, theo mặc định, có hai thư mục thử nghiệm.

Đầu tiên là src/androidTest. Thư mục này đã tồn tại trong phiên bản Android Studio trước. Tuy nhiên, bây giờ có một thư mục thử nghiệm mới, theo mặc định src/testvà phụ thuộc mới, testCompile 'junit: junit: 4.12'trong build.gradle.

Tôi sử dụng thư mục nào để thử nghiệm? Đâu là sự khác biệt giữa cả hai?

Câu trả lời:


134

src/androidTest dành cho các bài kiểm tra đơn vị liên quan đến thiết bị Android.

src/testlà để kiểm tra đơn vị thuần túy không liên quan đến khuôn khổ Android. Bạn có thể chạy thử nghiệm tại đây mà không cần chạy trên thiết bị thực hoặc trên trình giả lập.

Bạn có thể sử dụng cả hai thư mục. Sử dụng cái đầu tiên để kiểm tra mã sử dụng khung Android. Sử dụng mã thứ hai để kiểm tra mã là các lớp java thuần túy. Các phương pháp để viết bài kiểm tra gần như giống nhau.

Thông tin thêm tại đây: http://developer.android.com/tools/testing/testing_android.html


URL được chuyển hướng đến: developer.android.com/studio/test/index.html
Guillaume Husta

Bạn vừa cứu được ngày của tôi
C Johnson

còn androidTestDebug thì sao?
the_prole

48

Nguồn thông tin tuyệt vời liên quan đến kiểm tra Android nói chung là trang Các phương pháp hay nhất để kiểm tra của nhà phát triển :

  • Kiểm tra đơn vị cục bộ ( /src/test/java/)

Các bài kiểm tra đơn vị chạy cục bộ trên Máy ảo Java (JVM). Sử dụng các bài kiểm tra này để giảm thiểu thời gian thực thi khi các bài kiểm tra của bạn không có phụ thuộc khung Android hoặc khi bạn có thể mô phỏng các phụ thuộc khung Android.

  • Kiểm tra công cụ ( /src/androidTest/java/)

Bài kiểm tra đơn vị chạy trên thiết bị hoặc trình mô phỏng Android. Các thử nghiệm này có quyền truy cập vào thông tin Công cụ, chẳng hạn như Bối cảnh của ứng dụng bạn đang thử nghiệm. Sử dụng các bài kiểm tra này khi các bài kiểm tra của bạn có phụ thuộc Android mà các đối tượng giả không thể đáp ứng.

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

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.