Mục lục:
- Để thêm thử nghiệm Espresso vào ứng dụng của bạn, bạn có thể:
- Bên trong thư mục vừa tạo, tạo một tệp mới có tên SilentModeToggleEspressoTest. java. Bạn thực sự có thể đặt tên nó bất cứ điều gì bạn muốn, chỉ cần đảm bảo rằng nó kết thúc trong "Test.java ".
- Nếu thử nghiệm chạy thành công, bạn sẽ thấy một số thứ như sau :
- Nếu bạn thêm một vài bài kiểm tra để thêm, xóa và chỉnh sửa các tác vụ vào ứng dụng đó, bạn có thể yên tâm khi biết rằng bất cứ khi nào bạn thực hiện thay đổi, các bài kiểm tra tự động của bạn sẽ nhận được bất kỳ lỗi đáng kể nào mà bạn giới thiệu.
- Làn da dưới đây được cung cấp bởi dự án Espresso 2. 0, là công cụ hữu ích để viết bài kiểm tra Espresso. Nó liệt kê ra cú pháp chung cho các bài kiểm tra Espresso, và nó cũng liệt kê các loại matchers phổ biến nhất: ViewAction và ViewAssertion.
- AudioManager
Video: Day7: Test trên mobile như nào, sử dụng những tool gì? 2025
Là một nhà phát triển, bạn đã biết tầm quan trọng của việc viết bài kiểm tra cho mã của bạn. Điều này cũng đúng với phát triển ứng dụng Android cũng như cho bất kỳ loại phát triển khác. May mắn thay, Android giúp bạn dễ dàng thêm các bài kiểm tra vào ứng dụng của bạn.
Các thông tin sau sẽ đưa bạn qua những điều cơ bản về thêm bài kiểm tra vào ứng dụng Android của bạn bằng Espresso. Espresso là một thư viện đi kèm với Android SDK để làm cho các giao diện người dùng thử nghiệm của Android đơn giản hơn.
Chỉ cần chắc chắn rằng ứng dụng của bạn đang sử dụng chương trình gradle 2. 1. 1 trở lên với công cụ xây dựng Android 21. 1. 2 hoặc mới hơn.
Xóa thử nghiệm
-
Chạy thử nghiệm
-
Cách sửa đổi bản xây dựng của bạn
-
Mở thẻ
Để thêm thử nghiệm Espresso vào ứng dụng của bạn, bạn có thể:
xây dựng. tệp gradle cho ứng dụng của bạn. Nếu ứng dụng của bạn có nhiều mô-đun, bạn sẽ muốn mở công trình xây dựng. gradle trong mô đun ứng dụng của bạn chứ không phải trong mô đun gốc. Vì vậy, đối với ứng dụng Silent Mode Toggle, bạn sẽ mở SilentModeToggle / build. gradle.
Thêm phụ thuộc vào phần phụ thuộc của build của bạn. tệp gradle:
phụ thuộc {… // Kiểm tra phụ thuộc androidTestCompile ' com. android. ủng hộ. kiểm tra. espresso: espresso-core: 2. 0 ' }
Điều này cho biết Android Studio bao gồm thư viện Espresso trong các thử nghiệm phụ thuộc của bạn. Thư viện Espresso sẽ không được tích hợp vào gói ứng dụng mà bạn gửi đi nhưng nó sẽ được bao gồm trong gói thử nghiệm của bạn để các bài kiểm tra của bạn có thể sử dụng.
Tiếp theo, hãy thêm phần sau vào mặc định của bạnConfig:
chạy thử đến sử dụng khi chạy Điều này nói với Android mà Instrumentation sử dụng để chạy thử nghiệm của bạn. Bạn không cần phải biết nhiều về Instrumentation, khác với việc bạn cần sử dụng bất cứ khi nào bạn muốn chạy thử Espresso.Đó là tất cả những gì bạn cần làm để thêm hỗ trợ cho Espresso. Tiếp theo, bạn sẽ cần phải viết bài kiểm tra thực tế.
Làm thế nào để viết bài kiểm tra Để thêm một bài kiểm tra cho Android, bạn cần chắc chắn rằng bạn đã đặt nó vào đúng vị trí. Mở thư mục src của bạn trong Android Studio và tạo một thư mục mới có tên androidTest nếu nó chưa tồn tại. Trong thư mục đó, tạo một thư mục có tên là java.
Bên trong thư mục vừa tạo, tạo một tệp mới có tên SilentModeToggleEspressoTest. java. Bạn thực sự có thể đặt tên nó bất cứ điều gì bạn muốn, chỉ cần đảm bảo rằng nó kết thúc trong "Test.java ".
public class SilentModeToggleEspressoTest mở rộng ActivityInstrumentationTestCase2 {public SilentModeToggleEspressoTest () {super (MainActivity. Class);}}
Điều này tạo ra một lớp mới có tên là SilentModeToggleEspressoTest. Nó mở rộng ActivityInstrumentationTestCase2, mà bạn sẽ sử dụng để viết hầu hết các bài kiểm tra của ứng dụng. ActivityInstrumentationTestCase2 được tham số hóa dựa trên loại hoạt động bạn muốn kiểm tra. Đối với ứng dụng SilentModeToggle, hoạt động chính của ứng dụng được gọi là đủ chính xác, MainActivity.
Lớp kiểm thử của bạn cần phải có một constructor mặc định, và trong constructor mặc định, bạn sẽ gọi constructor của lớp siêu với lớp của hoạt động được kiểm tra. Những gì bạn đã viết cho đến bây giờ về cơ bản sẽ được sao chép-dán cho chỉ là về mọi bài kiểm tra Android mà bạn đã viết.
Trước khi bạn có thể viết bài kiểm tra thực tế của mình, bạn sẽ cần phải thiết lập nó. Để làm điều đó, hãy thêm phương thức sau vào lớp kiểm tra của bạn:
@Override public void setUp () throws Exception {super. thiết lập(); getActivity ();}Để kiểm tra một hoạt động sử dụng Espresso, trước tiên bạn phải tạo hoạt động đang được thử nghiệm. Điều này được thực hiện bằng cách gọi hàm getActivity (), tạo ra và khởi tạo hoạt động cho bạn nếu nó chưa tồn tại. Bạn làm điều này ở trên trong setUp () phương pháp cho lớp, được chạy trước khi mỗi kiểm tra của bạn được chạy.
Bây giờ, cuối cùng, bạn có thể viết bài kiểm tra của mình. Thêm phương thức sau vào lớp của bạn:
public void testPhoneIconIsDisplayed () {// Khi có chế độ xem phone_icon, // kiểm tra xem nó có được hiển thị hay không. onView (withId (R id id phone_icon)). check (matches (isDisplayed ()));}
Bạn sẽ cần phải nhập onView, withId, check, matches, và isDisplayed methods. Android Studio trợ giúp bạn với hàng nhập khẩu tĩnh cần thiết.
Các bài kiểm tra Espresso được thiết kế rất dễ đọc. Như bạn thấy ở đây, bài kiểm tra này đang chờ đến lượt xem với ID R. id. phone_icon có sẵn, và một khi nó được, nó kiểm tra rằng xem được hiển thị.
Bước tiếp theo là chạy thử nghiệm.
Làm thế nào để chạy thử nghiệm
Trước tiên, khởi động trình mô phỏng hoặc kết nối điện thoại của bạn với máy tính qua USB.
Khi thiết bị của bạn được kết nối và chạy, hãy nhấp chuột phải vào thư mục java dưới androidTest, sau đó chọn Run All Tests (với biểu tượng Android):
Nếu thử nghiệm chạy thành công, bạn sẽ thấy một số thứ như sau:
Tại sao những bài kiểm tra lại quan trọng?
Tại sao phải trải qua tất cả nỗ lực này chỉ để thêm một bài kiểm tra đơn giản? Bạn có thể nghĩ rằng nó hầu như không có giá trị kiểm tra chức năng cơ bản như vậy.
Chế độ Silent Mode Toggle app đơn giản đủ để có thể một lập trình lười biếng có thể biện minh cho việc bỏ qua các bài kiểm tra. Có lẽ.
Nếu bạn thêm một vài bài kiểm tra để thêm, xóa và chỉnh sửa các tác vụ vào ứng dụng đó, bạn có thể yên tâm khi biết rằng bất cứ khi nào bạn thực hiện thay đổi, các bài kiểm tra tự động của bạn sẽ nhận được bất kỳ lỗi đáng kể nào mà bạn giới thiệu.
Bạn có thực sự muốn kiểm tra lại tất cả chức năng của ứng dụng trên điện thoại, máy tính bảng, đồng hồ và TV và sau đó làm lại tất cả các thiết bị cũ để kiểm tra khả năng tương thích ngược?Thêm các bài kiểm tra có thể giải quyết nhiều khó khăn cho bạn.
Về các bài kiểm tra của Espresso
Các bài kiểm tra Espresso được viết bằng định dạng sau:
onView (Matcher). thực hiện (ViewAction). Kiểm tra (ViewAssertion)
Làn da dưới đây được cung cấp bởi dự án Espresso 2. 0, là công cụ hữu ích để viết bài kiểm tra Espresso. Nó liệt kê ra cú pháp chung cho các bài kiểm tra Espresso, và nó cũng liệt kê các loại matchers phổ biến nhất: ViewAction và ViewAssertion.
Cách nhanh chóng để viết bài kiểm tra Espresso là tận dụng chức năng tự động hoàn thành của Android Studio. Nếu bạn biết rằng hầu hết các matchers nằm trong lớp ViewMatchers, hầu hết các hành động xem là trong ViewActions, và hầu hết các xác nhận xem trong ViewAssertions, sau đó bạn có thể sử dụng tính năng tự động hoàn thành để tìm đúng matcher:
Hãy thêm một
Vì vậy, với trong tâm trí, hãy thêm một bài kiểm tra nữa. Thêm các dòng in đậm vào lớp kiểm tra của bạn:
lớp công khai SilentModeToggleEspressoTest mở rộng ActivityInstrumentationTestCase2 (
AudioManager
audioManager;
… @Tập lập void setUp công cộng () throws Exception {super. thiết lập(); Hoạt động Hoạt động = getActivity (); // Truy cập trình quản lý AudioManager từ hoạt động audio manager = (AudioManager). getSystemService (Bối cảnh. AUDIO_SERVICE); đảm bảo chuông là đặt lại đến trình quản lý âm thanh thông thường. setRingerMode (Trình quản lý âm thanh RINGER_MODE_NORMAL); } công cộng void testCanToggleIcon () ( sẵn có, nhấn nó onView (withId (R id id phone_icon)). thực hiện (click ()); // Sau đó khẳng định điện thoại bây giờ chế độ im lặng. assertTrue (RingerHelper. IsPhoneSilent (audioManager)); } } Thử nghiệm này tìm nút bật / tắt và nhấp vào nó, sau đó xác minh rằng chế độ im lặng của ứng dụng đã được bật. Mã setUp () đảm bảo rằng chế độ chuông sẽ được đặt lại thành bình thường trước khi chạy thử. Bây giờ, bất cứ khi nào bạn thực hiện thay đổi cho ứng dụng của mình, bạn chỉ cần chạy các trường hợp thử nghiệm này để có sự tự tin rằng bạn không làm hỏng bất cứ điều gì quan trọng.Nếu bạn có một máy chủ tích hợp liên tục, tất cả những gì bạn cần làm là chạy mục tiêu connectCheck trong chương trình gradle để chạy các trường hợp thử nghiệm của bạn với mỗi cam kết thực hiện. Nếu bạn không có một máy chủ tích hợp liên tục nào được nêu ra, có lẽ bây giờ là một thời điểm tốt để nhìn vào một! Kiểm tra travis-ci. org cho một lựa chọn tốt. Thử nghiệm các ứng dụng trên Android là chủ đề sâu sắc và liên quan, nhưng bây giờ bạn nên có mọi thứ bạn cần để bắt đầu thử nghiệm ứng dụng của mình! Nếu bạn muốn nâng cao hơn, bạn có thể quan tâm đến một số tài nguyên sau: Sử dụng Spoon để thử nghiệm trên nhiều thiết bị. Thử Fork để chạy thử nghiệm nhanh trên nhiều thiết bị.
Hãy thử travis-ci hoặc Jenkins cho một máy chủ tích hợp liên tục.
Xem bài giới thiệu của Michael Bailey về kiểm tra Android trên YouTube.