Kiểm thử ứng dụng

Không giống như các loại ứng dụng Android khác, ứng dụng Home API có những cân nhắc và thách thức riêng, bao gồm sự phụ thuộc vào thiết bị nhà thông minh vật lý, độ tin cậy của mạng, bảo mật và quyền riêng tư, cũng như khả năng tương tác giữa thiết bị và giao thức. Những điểm khác biệt này ảnh hưởng đến việc kiểm thử.

Thiết lập môi trường kiểm thử

Môi trường thử nghiệm mạnh mẽ là rất quan trọng để thử nghiệm ứng dụng Home API.

Đây là một chiến lược hay để cô lập các thiết bị thử nghiệm Home API của bạn trên mạng Wi-Fi chuyên dụng. Điều này giúp ngăn chặn sự can thiệp từ các thiết bị khác và cho phép bạn mô phỏng các điều kiện mạng khác nhau, chẳng hạn như băng thông bị hạn chế.

Bạn nên kiểm thử bằng nhiều loại thiết bị nhà thông minh của nhiều nhà sản xuất. Hãy nhớ kiểm thử bằng các thiết bị thực. Các thiết bị ảo và trình mô phỏng có vị trí riêng nhưng không nên chỉ dựa vào chúng.

Tương tự như vậy, việc thử nghiệm ứng dụng của bạn với nhiều thiết bị Android từ nhiều nhà sản xuất khác nhau, với nhiều kích thước màn hình khác nhau và chạy nhiều phiên bản Android khác nhau sẽ giúp xác minh khả năng tương thích rộng hơn.

Tập hợp các công cụ

Các công cụ sau đây sẽ hữu ích trong việc kiểm thử một ứng dụng Home API:

Công cụ Mô tả
Google Home Plugin for Android Studio Cung cấp quyền truy cập vào Google Assistant Simulator, Home Graph Viewer, Google Cloud Logging và Trình xem nhật ký Cầu gỡ lỗi Android (adb).
Google Home Playground Không phải là giải pháp thay thế cho việc kiểm thử bằng thiết bị thực, nhưng rất có giá trị đối với nhiều tình huống kiểm thử.
Matter Virtual Device (MVD) Một ứng dụng mô phỏng khác có thể hữu ích khi kiểm thử bằng các thiết bị Matter trong một ứng dụng Home APIs.
Espresso Cho phép bạn tự động hoá quy trình kiểm thử giao diện người dùng. Bạn cần mô phỏng API cơ bản để mô phỏng các hoạt động tương tác với phần cứng.
Một Trình mô phỏng mạng Cho phép bạn mô phỏng các điều kiện mạng và phản hồi API khác nhau, điều này đặc biệt hữu ích nếu Home API của bạn sử dụng một phần phụ trợ đám mây.
Logcat của Android Studio Xử lý và phân tích dữ liệu nhật ký.

Áp dụng nhiều phương pháp và chiến lược thử nghiệm

Bạn nên áp dụng nhiều phương pháp kiểm thử cho ứng dụng Home APIs. Để biết thông tin chung về các phương pháp khác nhau, hãy xem phần Kiểm thử ứng dụng trên Android. Ngoài việc kiểm thử trải nghiệm người dùng và bảo mật mà mọi ứng dụng Android đều phải trải qua, một số khía cạnh kiểm thử đặc biệt phù hợp với các ứng dụng Home API và được nêu bật chi tiết hơn trong các phần sau.

Kiểm tra chức năng

Tuỳ thuộc vào các chức năng của ứng dụng, bạn có thể muốn đặc biệt chú ý đến một số khía cạnh sau:

  1. Tính năng phát hiện và ghép nối thiết bị, bao gồm cả quy trình thiết lập ban đầu và ghép nối với thiết bị mới, phát hiện lại các thiết bị hiện có sau khi ứng dụng khởi động lại, thiết bị khởi động lại hoặc mạng thay đổi. Ngoài ra, hãy kiểm tra các trường hợp như thiết bị không phản hồi hoặc người dùng nhập thông tin đăng nhập không chính xác.
  2. Đồng bộ hoá trạng thái, đảm bảo rằng ứng dụng cập nhật để phản ánh chính xác trạng thái hiện tại một cách kịp thời.
  3. Cách quản lý và thực thi các quyền, đặc biệt là nếu ứng dụng của bạn hỗ trợ nhiều người dùng hoặc quyền truy cập vào nhà chung. Trong đó có việc xác minh rằng ứng dụng của bạn xử lý các quyền bị thu hồi một cách thích hợp.
  4. Nếu ứng dụng của bạn hỗ trợ các cảnh, chẳng hạn như cảnh "Chúc ngủ ngon" sẽ tắt tất cả đèn, hãy kiểm thử việc tạo, sửa đổi và thực thi cảnh. Kiểm thử các chế độ tự động hoá, bao gồm cả chế độ bắt đầu và hành động.

Kiểm thử hiệu suất

Xác minh rằng ứng dụng của bạn phản hồi nhanh và không gây ra bất kỳ độ trễ không cần thiết nào. Nếu có thể, hãy kiểm thử với nhiều thiết bị để đánh giá khả năng mở rộng và hiệu suất của ứng dụng khi chịu tải. Ngoài ra, hãy xem mức tiêu thụ CPU, bộ nhớ và pin của ứng dụng, đặc biệt là trong quá trình giao tiếp chủ động với thiết bị, để xem liệu mức sử dụng tài nguyên của ứng dụng có hợp lý hay không.

Kiểm thử độ tin cậy và độ ổn định

Do phụ thuộc vào khả năng kết nối mạng, các ứng dụng Home API cần được kiểm thử trong các trường hợp sau:

  1. Mạng không ổn định
    • Mô phỏng tình trạng mất kết nối Wi-Fi, tín hiệu yếu và chuyển đổi mạng.
    • Xác minh rằng ứng dụng của bạn xử lý các trường hợp ngắt kết nối và kết nối lại một cách linh hoạt.
    • Xác minh rằng các lệnh được xếp hàng đợi và thực thi khi kết nối được khôi phục hoặc cung cấp thông báo lỗi thích hợp.
    • Kiểm tra ứng dụng từ mạng từ xa, không chỉ từ mạng gia đình.
  2. Ngắt kết nối thiết bị
    • Rút phích cắm thiết bị.
    • Bật/tắt nguồn thiết bị.
  3. Các thao tác đồng thời
    • Gửi một chuỗi lệnh nhanh.
    • Nhiều người dùng cùng lúc cố gắng điều khiển cùng một thiết bị.
    • Kiểm thử các cảnh và quy trình tự động hoá chồng chéo.
  4. Xử lý lỗi
    • Ví dụ, buộc phải tạo lỗi API bằng cách mô phỏng phản hồi của máy chủ API đám mây.
    • Kiểm thử dữ liệu đầu vào không hợp lệ của người dùng.
    • Xác minh khả năng giảm cấp một cách linh hoạt và thông báo lỗi giàu thông tin.
  5. Độ tin cậy – Chạy ứng dụng và các thiết bị được kết nối trong thời gian dài để phát hiện các vấn đề có thể xảy ra về rò rỉ bộ nhớ hoặc độ ổn định.