Viblo CTF
+1

Mobile Application Testing

Với sự phát triển chóng mặt và sự phổ biến của các thiết bị di động SmartPhone, các ứng dụng được phát triển trên moblile ngày càng nhiều để đáp ứng nhu cầu sử dụng của người dùng. Song song với đó , kiểm thử ứng dụng trên mobile cũng đang là một chủ đề khá hot và rất được quan tâm trong giới kiểm thử phần mềm.

Vậy để kiểm thử trên thiết bị di động cần chú ý test những case như thế nào, kiểm thử những gì và thực thi nó như thế nào ?

Vì vậy bài viết này sẽ chia sẻ về một số điểm khác biệt giữa kiểm thử ứng dụng trên thiết bị di động và kiểm thử trên Desktop và Website và một số checklist cần thiết khi test ứng dụng trên thiết bị di động.

I. Một số điểm khác biệt giữa kiểm thử ứng dụng trên thiết bị di động và kiểm thử trên Desktop và Website

  1. Việc hỗ trợ nhiều nền tảng hoặc thiết bị đồng nghĩa sẽ có nhiều phiên bản để kiểm thử.
  • Với ứng dụng trên Web thường được phát triển trên những nền tảng cụ thể và dễ sử dụng nhưng đối với ứng dụng trên mobile lại phức tạp hơn do có rất nhiều các loại thiết bị khác nhau.
  • Việc chắc chắn rằng ứng dụng di động chạy được trên tất cả các loại thiết bị (smartphone, tablet hay phablet được cung cấp bởi một số các nhà cung cấp lớn (như Samsung, Sony, Nokia, HTC, Apple…) và trên tất cả các hệ điều hành (iOS, Android, Windows, Blackberry…) thực sự là một thử thách.
  1. Khả năng thích nghi và không gian giới hạn khiến kích thước màn hình thay đổi liên tục.
  • Với mỗi một dòng máy, mỗi loại thiết bị sẽ có nhiều kích thước khác nhau để đáp ứng tính cạnh tranh trên thị trường nên việc phát triển làm sao để ứng dụng có thể thích nghi với kích thước của các màn hình, layout khác nhau cũng là một thách thức.
  1. Tương tác người dùng phức tạp hơn
  2. Quá phụ thuộc vào sự giả lập và mô phỏng dẫn đến việc thiếu những trải nghiệm trên thiết bị thực tế. Các ứng dụng trên mobile dựa vào sự giả lập và mô phỏng nên không thể đảm bảo được tính chính xác trên thiết bị thực.
  3. Sự bảo mật và quyền riêng tư đòi hỏi ta phải sử dụng dữ liệu thật cẩn thận.
  4. Cài đặt, loại bỏ và cập nhật liên tục đòi hỏi ứng dụng phải đứng đầu trong danh sách các ứng dụng mới nhất.
  • Ứng dụng điện thoại được cài đặt, loại bỏ và cập nhật thường xuyên hơn ứng dụng desktop, các OS và nền tảng cũng được nâng cấp thường xuyên hơn. Với tư cách là tester, phải luôn biết được bản OS/nền tảng tiếp theo có những thay đổi gì và chúng có thể ảnh hưởng tới ứng dụng ra sao.
  • Thường thì với hầu hết các ứng dụng, dữ liệu của người dùng được lưu trữ trên servers chứ không phải thiết bị. Điều đó khiến việc cài đặt trở nên rắc rối hơn. Nếu người dùng có nhiều hơn 1 thiết bị thì sao? Nếu những thiết bị đó có những phiên bản khác nhau của ứng dụng thì sao? Những thứ như tính tương thích ngược, hỗ trợ đồng thời cho nhiều phiên bản, bảo quản dữ liệu, khôi phục lại trạng thái và dữ liệu, khả năng cài đặt / nâng cấp nhiều lần đều chiếm phần quan trọng trong việc thử nghiệm ứng dụng di động.
  1. Các phiên quản lý và gián đoạn nghĩa là phải đảm bảo rằng các ứng dụng hoạt động tốt.
  • Xử lý các phiên gián đoạn là cách điều hành các ứng dụng điện thoại. Ứng dụng và người dùng liên tục bị cuộc gọi, SMS, thông báo và nhiều thứ nữa cắt ngang.
  • Cách các ứng dụng xử lý những trường hợp trên và duy trì trạng thái của chúng rất quan trọng, nhưng việc đảm bảo ứng dụng không làm gián đoạn giới hạn công việc đã được platform hoặc người dùng định sẵn cũng quan trọng không kém.

II. Một số checklist khi test App Mobile

1. Cài đặt và định hình ứng dụng

  • Yêu cầu kiểm thử trên thiết bị di động nào: Samsung Galaxy, Google Nexus, Iphone 5....
  • Hỗ trợ trên hệ điều hành nào: Android 5.00, 6.0.0; IOS, Windowphone.... -> Từ đó chọn chương trình giả lập , thiết bị thực để tiến hành kiểm thử.
  • Ứng dụng đang kiểm thử được lưu trữ ở đâu?
  • Một ứng dụng dùng trên nhiều thiết bị thì việc đồng bộ sẽ như thế nào?
  • Kiểm thử quá trình cài đặt, gỡ bỏ ứng dụng , cài đặt lại và sẽ ra sao nếu quá trình đó bị gián đoạn ?
  • KIểm thử quá trình update version mới......

2. Test giao diện ứng dụng

  • Kiểm thử mà nền, cỡ chữ , font chữ ...có chuẩn với thiết kế không? Trường hợp nếu chưa có thiết kế dựa vào cảm nhận như người dùng cuối để kiểm thử.
  • Font size, size của các textbox, button, căn phải, trái.... ở chế độ bình thường, theo chiều dọc, xoay ngang như thế nào?
  • Các hiệu ứng scroll, chuyển trang có smooth hay không?
  • Dữ liệu hiện tại có được lưu khi đóng cửa sổ hay không?
  • Kiểm tra vị trí focus có được đặt ngay field đầu tiên hay con trỏ đầu tiên khi load màn hình hay không?
  • Kiểm tra giao diện khi người dùng thực hiện các hiệu ứng cảm ứng như như tap on, zooom in, zoom out, scroll, multi-touch.....

3. Test chức năng

  • Đảm bảo chức năng có trong thiết kế hoạt động tốt
  • Test những những năng ngoài luồng
  • Test những chức năng khi kết nối mạng wifi, 3g, 4g, mất kết nối mạng, điện thoại đang để chế độ áy bay...
  • Tap, swipe, scroll.. nhanh có gây ra lỗi không?
  • Sự chuyển hướng từ các liên kết trong ứng dụng hay những liên kết với mạng xã hội (Facebook, google+...)
  • Kiểm tra sự đồng bộ dữ liệu khi đăng nhập ở nhiều thiết bị khác nhau
  • Đối với ứng dụng có camera cần test camera trông ứng dụng ( lưu trữ, chụp ảnh....)
  • Notification từ ứng dụng
  • Kiểm thử các trường hợp khi đang sử dụng app bị gián đoạn như: có SMS, có cuộc gọi đến, pin yếu...

Tài liệu tham khảo

https://saucelabs.com/blog/what-to-test-when-testing-a-mobile-app https://viblo.asia/p/mobile-testing-giao-dien-nguoi-dung-ORNZqwrb50n


All Rights Reserved