Kiểm thử ứng dụng di động: checklist và những điểm khác với web
Trên web, người dùng ngồi trước màn hình ổn định với mạng ổn định. Trên di động, họ đang đi tàu điện, mạng chập chờn, pin còn 4%, và có cuộc gọi đến giữa lúc thanh toán. Phần lớn lỗi đặc thù của mobile nằm ở đúng những tình huống đó.
Kiểm thử di động khác web ở đâu?
| Khía cạnh | Web | Ứng dụng di động |
|---|---|---|
| Môi trường | Tương đối ổn định | Mạng, pin, bộ nhớ thay đổi liên tục |
| Gián đoạn | Hiếm | Cuộc gọi, thông báo, báo thức, chuyển ứng dụng |
| Phân mảnh | Vài trình duyệt | Hàng nghìn tổ hợp thiết bị, hệ điều hành, độ phân giải |
| Cập nhật | Người dùng luôn có bản mới nhất | Người dùng có thể ở lại bản cũ nhiều tháng |
| Quyền truy cập | Ít | Camera, vị trí, danh bạ, thông báo — có thể bị từ chối |
| Cách nhập liệu | Bàn phím, chuột | Chạm, vuốt, chạm nhiều điểm, xoay màn hình |
Checklist kiểm thử ứng dụng di động
1. Cài đặt, cập nhật và gỡ bỏ
- Cài mới trên thiết bị chưa từng có ứng dụng.
- Cập nhật từ phiên bản cũ lên phiên bản mới — dữ liệu người dùng còn nguyên không?
- Gỡ rồi cài lại — dữ liệu cũ có được dọn sạch không?
- Cài khi bộ nhớ máy gần đầy.
2. Mạng — nhóm sinh ra nhiều lỗi nhất
- Mất mạng hoàn toàn: ứng dụng báo lỗi rõ ràng hay treo im lặng?
- Mạng chậm và chập chờn: có hiển thị trạng thái đang tải không, có bị lặp yêu cầu không?
- Chuyển từ Wi-Fi sang mạng di động giữa lúc đang gửi dữ liệu.
- Mất mạng đúng lúc đang thanh toán — giao dịch bị treo ở trạng thái nào?
- Có mạng trở lại: dữ liệu đang chờ có được đồng bộ đúng một lần, không bị nhân đôi?
3. Gián đoạn (Interrupt testing)
- Cuộc gọi đến khi đang thao tác — quay lại ứng dụng có mất dữ liệu đang nhập không?
- Thông báo đẩy, báo thức, tin nhắn.
- Chuyển sang ứng dụng khác rồi quay lại sau 30 phút.
- Khoá màn hình rồi mở lại — có yêu cầu đăng nhập lại đúng như thiết kế không?
- Máy hết pin và tắt đột ngột giữa một thao tác.
- Xoay màn hình khi đang ở giữa biểu mẫu.
4. Quyền truy cập
- Từ chối quyền camera, vị trí hoặc thông báo — ứng dụng có xử lý mượt hay sập?
- Cấp quyền rồi thu hồi trong phần cài đặt hệ thống khi ứng dụng đang chạy.
- Ứng dụng có giải thích vì sao cần quyền trước khi hỏi không?
5. Giao diện và trải nghiệm
- Màn hình nhỏ nhất và lớn nhất trong ma trận hỗ trợ.
- Vùng khuyết và thanh điều hướng không che mất nội dung hoặc nút bấm.
- Bàn phím bật lên không che ô nhập đang gõ.
- Cỡ chữ hệ thống đặt ở mức lớn nhất — bố cục có vỡ không?
- Chế độ tối, xoay ngang, và tiếng Việt có dấu hiển thị đúng.
- Vùng chạm đủ lớn để bấm trúng bằng ngón tay.
6. Hiệu năng và tài nguyên
- Thời gian khởi động lần đầu và các lần sau.
- Mức tiêu thụ pin sau 30 phút sử dụng liên tục.
- Dung lượng dữ liệu di động tiêu thụ.
- Ứng dụng có bị hệ điều hành đóng khi chạy nền lâu không, và mở lại có khôi phục đúng trạng thái không?
Chọn ma trận thiết bị
Không thể test trên mọi thiết bị. Cách chọn hợp lý là dựa vào dữ liệu người dùng thật của sản phẩm, không dựa vào cảm tính.
- Lấy thống kê thiết bị và phiên bản hệ điều hành từ công cụ phân tích của chính ứng dụng.
- Chọn các thiết bị phủ khoảng 80% người dùng thực tế.
- Bổ sung thiết bị cấu hình thấp nhất còn được hỗ trợ — nơi lỗi hiệu năng lộ ra.
- Bổ sung màn hình nhỏ nhất và lớn nhất để kiểm tra bố cục.
- Với iOS, thêm phiên bản hệ điều hành mới nhất và phiên bản cũ nhất còn hỗ trợ.
Câu hỏi thường gặp
Kiểm thử ứng dụng di động khác kiểm thử web ở điểm nào?
Khác chủ yếu ở môi trường không ổn định và sự phân mảnh thiết bị. Ứng dụng di động phải xử lý mạng chập chờn, gián đoạn bởi cuộc gọi và thông báo, quyền truy cập có thể bị từ chối, pin và bộ nhớ hạn chế, cùng hàng nghìn tổ hợp thiết bị và phiên bản hệ điều hành khác nhau.
Interrupt testing là gì?
Là kiểm thử hành vi của ứng dụng khi bị gián đoạn giữa chừng: cuộc gọi đến, thông báo đẩy, báo thức, chuyển sang ứng dụng khác, khoá màn hình hoặc hết pin. Trọng tâm là kiểm tra ứng dụng có giữ được dữ liệu người dùng đang nhập và khôi phục đúng trạng thái khi quay lại hay không.
Nên test trên máy thật hay máy ảo?
Kết hợp cả hai. Máy ảo phù hợp cho việc kiểm tra bố cục và luồng chức năng cơ bản vì nhanh và rẻ. Máy thật là bắt buộc khi kiểm tra cảm ứng, camera, hiệu năng thực tế, mức tiêu thụ pin và hành vi khi mạng chập chờn.
Chọn thiết bị nào để kiểm thử cho đủ?
Dựa vào thống kê thiết bị của chính người dùng sản phẩm: chọn nhóm phủ khoảng 80% lưu lượng thực tế, rồi bổ sung thiết bị cấu hình thấp nhất còn hỗ trợ cùng màn hình nhỏ nhất và lớn nhất. Chọn theo dữ liệu thật hiệu quả hơn nhiều so với chọn theo thiết bị phổ biến trên thị trường nói chung.