Với thị trường di động đang phát triển mỗi ngày thì việc quyết định các thiết bị mà ứng dụng di động của bạn nên thử nghiệm là một thách thức thực sự. Vì không thể mua tất cả các thiết bị đang có trên thị trường hoặc không thể thực hiện mọi thử nghiệm trên trình giả lập điều này vượt quá giới hạn, nên các thử nghiệm phải được tạo ra một cách chọn lọc và thông minh.
Android là một hệ điều hành mã nguồn mở và đã mở ra cánh cửa cho các công ty ra mắt thiết bị của họ và điều đó đồng nghĩa giá thành của nó khá thấp. Không phải ai cũng có thể mua iPhone hoặc Samsung S7 hoặc Nexus6, v.v., do đó mọi người có xu hướng mua điện thoại giá cả phải chăng như Samsung S6 hoặc Nexus 5 hoặc Redmi Note4,…
Các Loại Thiết Bị Di Động
Ở mức cao, các thiết bị có thể được phân loại thành thiết bị cao cấp và cấp thấp:
Các thiết bị cao cấp thường là những thiết bị có hệ điều hành Android, 4G hoặc LTE mới nhất, kích thước màn hình 8 inch trở lên, bộ nhớ 7+ GB,…và có giá thành tương đối cao.
Các thiết bị cấp thấp chỉ là những thiết bị đối nghịch với phiên bản HĐH cũ hơn, 2G hoặc ở mạng 3G tối đa, màn hình nhỏ, bộ nhớ thấp hoặc điện thoại có khe cắm thẻ nhớ không lớn hơn 2 hoặc 3 GB và do đó giá thành khá rẻ.
Ví dụ: dưới đây là biểu đồ phân phối điện thoại thông minh cho năm 2017 dựa trên loại mạng:
Như bạn có thể thấy, chỉ có 28% người dùng đang sử dụng công nghệ LTE mới nhất và tiên tiến trong khi phần lớn người dùng vẫn sử dụng GSM.
Các Loại Điện Thoại Nên Sử Dụng Trong Kiểm Thử
Là một Người kiểm thử, thì diện thoại di động mà bạn nên lựa chọn để đưa vào thử nghiệm là gì?
Trong khi lựa chọn môi trường để kiểm thử ứng dụng di động, bạn có thể quyết định kiểm thử thủ công hoặc tự động đồng nghĩa với việc này là bạn có thể sử dụng thiết bị thực hoặc trình giả lập.
Lựa chọn giữa trình giả lập và thiết bị thực là một câu hỏi khó vì không phải tất cả các sự cố đều xảy ra với trình giả lập hoặc thiết bị thực (cửa sổ bật lên lỗi hoặc thông báo thường bị loại bỏ). Trong khi mặt khác, việc mua tất cả các thiết bị thực đang có trên thị trường đòi hỏi một nguồn chi phí khá lớn cho công ty của bạn.
Nếu có thể bạn nên lựa chọn cho dự án cuả mình một điện thoại cao cấp, 1 hoặc 2 điện thoại tầm trung và ít nhất 2 điện thoại cấp thấp.
Kinh nghiệm mà tôi có được khi làm việc trên nhiều loại thiết bị khác nhau là:
#1) Điện thoại cao cấp: Các ứng dụng chạy rất mượt trên, rõ ràng vì bạn có kết nối 4G, bộ nhớ 8GB, màn hình lớn sẽ bị trục trặc hoặc gặp sự cố. Các điện thoại cao cấp nên được ưu tiên để kiểm tra các khía cạnh chức năng của ứng dụng nhưng nó chưa chắc đã chứng minh là một lựa chọn tốt nhất để kiểm tra khả năng mở rộng (đối với dữ liệu di động) hoặc lỗi giao diện người dùng hoặc rò rỉ bộ nhớ.
#2) Điện thoại Mid End: Ứng dụng chạy mượt mà nhưng vẫn có thể mở rộng và rò rỉ bộ nhớ như 1 trên 15 lần. Nhưng điều này là không đủ vì các sự cố bị lỗi do khách hàng báo cáo cho một ứng dụng di động là không thể chấp nhận được và nó để lại hình ảnh xấu, không giống như các ứng dụng trên máy tính để bàn hoặc web.
#3) Điện thoại cấp thấp: Ứng dụng có thể hoặc không thể chạy trơn tru trên điện thoại cấp thấp do một số yếu tố nhất định.
Những yếu tố đó bao gồm:
1) Mạng chậm: Hiện tại các thiết bị cấp thấp không có loại mạng ngoài 3G và có các ứng dụng chạy trong nền sử dụng băng thông mạng. Trong một kịch bản thực tế, có thể người dùng đã bật Sync On cho tài khoản email của mình, Whatsapp, Google Now,…chạy trong nền ăn băng thông.
2) Giao diện người dùng : Các thiết bị cấp thấp có thể có kích thước màn hình từ 4 inch đến 6 hoặc 7 inch, do đó việc cuộn xuống danh sách hoặc nhấn vào biểu tượng là một điều khó khăn. Các biểu tượng có kích thước nhỏ và không dễ để chạm vào chúng. Tương tự cuộn xuống một danh sách dài cũng có thể gây ra sự cố và các thẻ trong danh sách không tải hoàn toàn hoặc chúng bị biến dạng.
Sau đây là một ví dụ về lỗi UI
3) Bộ nhớ thấp: Các thiết bị cấp thấp không có bộ nhớ lớn và hầu hết các ứng dụng có tối đa khoảng 5 – 6 GB. Do đó, các ứng dụng chạy chậm và đôi khi điện thoại hiển thị các tin nhắn để đóng hoặc ‘buộc dừng’ một số ứng dụng để giải phóng bộ nhớ.
Tại Sao Kiểm Thử Trên Điện Thoại Cấp Thấp Lại Quan Trọng?
Tùy thuộc vào đối tượng mục tiêu của bạn, không cần sử dụng thiết bị cấp thấp mỗi lần kiểm thử nhưng khi bạn thực hiện phát hành ứng dụng ban đầu, bạn chắc chắn nên thử nghiệm đầy đủ trên thiết bị cấp thấp.
Trên khắp thế giới, người dùng điện thoại cao cấp đắt tiền ít hơn và người dùng điện thoại trung và thấp có số lượng nhiều hơn. Nếu ứng dụng của bạn chạy trơn tru trên điện thoại cao cấp, thì điều đó không có nghĩa là nó cũng sẽ hoạt động tốt trên thiết bị cấp thấp.
Theo những kinh nghiệm mà tôi có thì với một sản phẩm tôi muốn thử nghiệm trên điện thoại cấp thấp trước.
Thử nghiệm trên điện thoại cấp thấp rất quan trọng vì:
- Hệ điều hành của điện thoại hơi cũ và phiên bản không phải là phiên bản mới nhất.
- Có rất nhiều ứng dụng đã được cài đặt trên điện thoại sử dụng bộ nhớ lớn, do đó đây là một môi trường hoàn hảo để kiểm thử trên ‘bộ nhớ thấp’.
- Tương tác với các ứng dụng khác để kiểm tra tính tương thích như sử dụng Google Maps, Trình quay số điện thoại, ứng dụng Nhắn tin,…
- Chức năng camera không tiên tiến trong điện thoại cấp thấp.
- Nếu ứng dụng của bạn cần gửi tọa độ địa lý, thì pin của điện thoại cấp thấp sẽ nhanh chóng cạn kiệt.
- Việc sở hữu màn hình quá nhỏ, chạm vào biểu tượng hoặc cuộn hoặc điều hướng giữa các màn hình có thể xảy ra vấn đề,…
Khi tôi đang thử nghiệm ứng dụng của mình trên các thiết bị cấp thấp, sau đây là những vấn đề mà tôi quan sát thấy chỉ trên điện thoại cấp thấp và không có trên các thiết bị điện thoại khác:
- Ứng dụng của chúng tôi có dịch vụ web để gửi vị trí địa lý cứ sau 10 phút nhưng trên điện thoại cấp thấp (mà chúng tôi đang sử dụng) có 2G, cuộc gọi dịch vụ web đã thất bại. Do đó, có hai vấn đề lớn xuất hiện:
– [i] vị trí không được ghi trong DB.
– [ii] pin của điện thoại bị cạn kiệt.
- Khi thử nghiệm trên 2G, chúng tôi thấy rằng các dịch vụ web đã tốn một ít thời gian để đăng nhập hoặc tìm nạp dữ liệu cho màn hình hoặc gửi dữ liệu đi. Đôi khi để xem được dữ liệu cập nhật, phải mất 15 phút.
- Chúng tôi đã có thẻ để hiển thị danh sách giao hàng trong một ngày và trong khi cuộn một danh sách dài gồm 50 thẻ, ứng dụng đã bị sập.
- Trong khi nhấp vào nút Quay lại, việc điều hướng không thành công và nó đang điều hướng 2 màn hình trở lại thay vì một màn hình.
- Chúng tôi đã có cơ sở chụp ảnh và sau khi chụp ảnh, chúng tôi đã định cỡ lại (giảm) hình ảnh.Trên các điện thoại cấp thấp, máy ảnh đã bị hỏng sau khi chụp 3-4 hình ảnh trong khi định cỡ lại vì bộ nhớ không được giải phóng khỏi lần chụp ảnh trước đó.
Sau đây là một ví dụ về lỗi như vậy có thể xảy ra:
- Một số biểu tượng xuất hiện quá nhỏ để có thể Click và do đó nó đã chặn kiểm tra một số chức năng.
Theo những quan sát mà chúng tôi thu thập được thì đây là một trong những lỗi nghiêm trọng nhất không chỉ xuất hiện một lần trên thiết bị cao cấp. Tất cả những vấn đề này sau đó đã được nhóm phát triển khắc phục và chúng tôi đã thực hiện kiểm thử hồi quy hoàn toàn trên điện thoại cấp thấp.
Trên thực tế, trong lần phát hành đầu tiên, chúng tôi đã gặp phải rất nhiều sự cố máy ảnh từ các khách hàng đang sử dụng điện thoại cấp thấp và sau khi nhấp vào khoảng 20-30 hình ảnh, chúng tôi có thể tái hiện được lỗi đó. Đó là một thử thách khó khăn đối với chúng tôi khi bắt đầu kiểm thử ứng dụng di động.
Những người giao hàng không sử dụng điện thoại cao cấp và chỉ có khoảng 5% trong số họ có iPhone 5 hoặc S3 (là sản phẩm mới nhất vào thời điểm đó. Trong khi thử nghiệm trên một thiết bị cấp thấp, sẽ rất tuyệt khi sử dụng mạng di động thay vì Wifi tốc độ cao.