Ứng dụng Android của tôi có dịch vụ gửi thông báo tới người dùng dựa trên các thông số như số lần chạy ứng dụng. Các thông báo được gửi vào các thời điểm khác nhau trong các tình huống khác nhau. Tôi muốn kiểm tra xem thông báo có được gửi đúng thời điểm trong tất cả các trường hợp khác nhau hay không. Android có cung cấp cách thử nghiệm như vậy không?Kiểm tra thông báo trong Android
Trả lời
đọc xin bài viết này
http://qathread.blogspot.com/2015/05/espresso-uiautomator-perfect-tandem.html
Ở đây bạn sẽ tìm thấy lời giải thích tốt đẹp của chủ đề này:
Espresso
dành cho Android là thử nghiệm hoàn hảo và nhanh chóng khuôn khổ tự động hóa, nhưng nó có quan trọng giới hạn - bạn chỉ được phép hoạt động bên trong ứng dụng của mình trong ngữ cảnh thử nghiệm.Điều đó có nghĩa rằng nó không thể tự động kiểm tra cho các ứng dụng như các tính năng như:
- thông báo ứng dụng push
- đồng bộ hóa liên lạc
- hướng từ ứng dụng khác để ứng dụng của bạn dưới kiểm tra,
vì bạn phải xử lý các ứng dụng khác từ thiết bị di động -
NotificationBar
,Contacts
hoặcPeople
ứng dụng, v.v.Thực tế là không thể thực hiện cho đến khi phát hành
UIAutomator 2.0
. Dưới dạng được nêu trong bài đăng trên blog dành cho nhà phát triển Android - "... Quan trọng nhất,UI Automator
hiện được dựa trên Android Instrumentation ...". Và bởi vì trong số đó chúng tôi có thể chạy các thử nghiệmUIAutomator
cũng nhưEspresso
kiểm tra sử dụngInstrumentation test runner
. Ngoài ra, chúng tôi có thể kết hợp các thử nghiệm UIAutomator cùng vớiEspresso
kiểm tra và điều này mang lại cho chúng tôi sức mạnh thực sự và quyền kiểm soát trên điện thoại và ứng dụng đang được thử nghiệm.
Kiểm tra thông báo bằng UIAutomator: -
Chỉ cần đi qua các mã dưới đây. Nó sẽ giúp bạn trong việc kiểm tra thông báo.
UiDevice device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
device.openNotification();
device.wait(Until.hasObject(By.text(NOTIFICATION_TITLE)), TIMEOUT);
UiObject2 title = device.findObject(By.text(NOTIFICATION_TITLE));
UiObject2 text = device.findObject(By.text(NOTIFICATION_TEXT));
assertEquals(NOTIFICATION_TITLE, title.getText());
assertEquals(NOTIFICATION_TEXT, text.getText());
title.click();
device.wait(Until.hasObject(By.text(ESPRESSO.getName())), TIMEOUT);`
Đừng quên thêm phụ thuộc UIAutomator vào build.gradle.
`//UIAutomator dependency
androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1'`
được đăng bởi @ dcr24 Tôi chưa có đủ tiếng để nhận xét. Câu trả lời của Prem Choudhary khá khéo léo nhưng điều quan trọng cần lưu ý là nó chỉ hoạt động trên tiền đề rằng thiết bị được mở khóa, nếu không device.openNotification() sẽ không hoạt động cho màn hình khóa. –
- 1. Kiểm tra ActiveSupport :: Thông báo với rspec
- 2. Thông báo về/kiểm tra thất bại SCM trong Jenkins
- 3. Kiểm tra mã thông báo chuỗi ký tự nhỏ
- 4. Cảnh báo Android: KIỂM TRA bề mặt Thông tin Tạo = false
- 5. NSTokenField không kiểm tra mã thông báo trên blur
- 6. Android - Hiển thị thông báo nếu không có kết nối internet và tiếp tục kiểm tra
- 7. Rspec 3 cách kiểm tra thông báo flash
- 8. Kiểm tra/Thông báo Phiên bản PHP Script
- 9. Kiểm tra thông báo đẩy tự động với XCTest
- 10. Thông báo đẩy Android
- 11. Cách kiểm tra xem ứng dụng của tôi có được phép hiển thị thông báo
- 12. Kiểm tra thông số lỗi trong nút
- 13. Kiểm tra android
- 14. Thông báo Android- Hiển thị toàn bộ thông báo
- 15. Thông báo nhóm Android không báo động sau khi thêm thông báo tóm tắt (Android 6.0)
- 16. dòng mới nhúng Android trong thông báo
- 17. Gửi thông báo địa phương trong Android
- 18. Thông báo đẩy VOIP trong android
- 19. Thông báo cảnh báo - Android Lollipop
- 20. Android: xóa thông báo khỏi thanh thông báo
- 21. Trình quản lý báo động và thông báo trong android
- 22. Android: thông báo từ BroadcastReceiver
- 23. Kiểm tra phần tử trong Android Studio
- 24. Internet kết nối kiểm tra trong Android
- 25. Kiểm tra chuỗi rỗng trong android
- 26. Khóa đã kiểm tra đôi trong Android
- 27. iOS - Kiểm tra hỗ trợ thông báo đẩy trong ứng dụng
- 28. chúng ta có thể kiểm tra thông báo đẩy trong trình mô phỏng không?
- 29. kiểm tra thông báo cam kết cuối cùng trong lật đổ
- 30. Cách kiểm tra Thông báo đẩy đang hoạt động trong ứng dụng của tôi
Bạn đang sử dụng dịch vụ thông báo nào? –
Tôi đang sử dụng dịch vụ nền sẽ gửi thông báo vài ngày một lần. – user12345
Ý tôi là, Bạn có đang sử dụng thông báo đơn giản hoặc thông báo đẩy không? –