Kiểm thử phần mềm trên các thiết bị di động

mobile-apps-testing
“Tôi mới làm quen với kiểm thử di động.  Xin vui lòng cho tôi biết làm thế nào để bắt đầu?”. “Tôi đang làm việc với kiểm định trên web và tôi cần chuyển sang kiểm định trên các thiết bị di động, vui lòng tư vấn để tôi có thể làm tốt trong lĩnh vực này?”. Đối với các bạn mới làm quen với lĩnh vực kiểm thử di động, có một số điểm quan trọng các bạn nên biết và chúng ta hãy cùng bắt đầu từ số ZERO về kiểm thử di động.

1. Cơ bản về kiểm thử phần mềm.

Cho dù bạn có kinh nghiệm hay mới vào nghề, kiến thức cơ bản về kiểm thử phần mềm luôn luôn là cần thiết trong mọi loại kiểm thử mà các bạn sẽ thực hiện. Các bạn tham khảo thêm ở bài viết này nhé.

2. Cơ bản về viễn thông.

Những am hiểu cơ bản về viễn thông luôn là lợi thế. Bạn chắc chắn sẽ nhận được lợi thế nếu bạn biết được những thứ khác trong lĩnh vực này xoay quanh thử nghiệm các sản phẩm di động. 2G, 3G, CDMA, GPRS, GSM, HSCSD, SIM, tin nhắn SMS, WAP là một số điều cơ bản về viễn thông mà bạn cần phải biết.

3. Các kiến thức về hệ điều hành/nền tảng di động.

Có rất nhiều các hệ điều hành dành cho di động hiện nay trên thị trường như Android, iOS, Blackberry, J2ME, Symbian, Palm, Windows phone, Samsung Bada, Nokia Meego…Kiến thức về các hệ điều hành cho di động thực sự rất quan trọng để bạn trở thành 1 kỹ sư kiểm thử di động giỏi. Những hiểu biết về khả năng và hạn chế của từng hệ điều hành sẽ cho bạn sự tự tin để phân biệt được đâu là lỗi ứng dụng và đâu là giới hạn của hệ điều hành.

4. Làm quen với điện thoại di động của chính bạn.

Tôi có thể chắc chắn một điều là rất nhiều trong số các bạn thậm chí không biết một cách đầy đủ về chiếc điện thoại mà các bạn đang sử dụng như mẫu điện thoại (model), phiên bản phần mềm, hệ điều hành, tên mã…Nếu bạn mới bắt đầu với kiểm thử di động, hãy bắt đầu khám phá chiếc dế của mình. Hãy thử truy cập Internet bằng chiếc điện thoại thông minh của bạn, sử dụng wifi, GPRS. Kiểm tra xem làm cách nào để đưa điện thoại của mình về trạng thái ban đầu (Factory reset – nhớ cẩn thận nhé các bạn, sao lưu dữ liệu…) Thử kiểm tra số IMEI của điện thoại, thử nâng cấp phiên bản của hệ điều hành, thử những cài đặt khác (settings). Nói một cách ngắn gọn hãy làm sử dụng hết tất cả các chức năng của chiếc điện thoại. Chắc chắn là bạn sẽ nghĩ ra thêm vài tình huống trong khi các bạn thực hiện kiểm thử?

5. Tìm hiểu kiến thức chuyên ngành kiểm thử di động (mobile testing).

  • Kiểm thử di dộng các ứng dụng có thể tải về: một vài ứng dụng được cài sẵn khi được sản xuất, và một số khác có thể được tải về từ kho ứng dụng (Apple App store, Android Market, Gẹtar, Nokia Ovi Store, Blackberry App world…)
  • Kiểm thử di động các thiết bị cầm tay: Tương tự như các tổ chức phát triển ứng dụng tải về di động, có rất nhiều công ty phát triển thiết bị cầm tay di động hoàn chỉnh. Bộ phận bảo đảm chất lượng ở đây có thể cần phải kiểm tra các ứng dụng hoặc các tính năng có sẵn trong điện thoại. SMS, MMS, Voice Call, MMS, danh bạ điện thoại, Máy tính, Bluetooth và tính năng di động khác. Bao gồm đa phương tiện (máy ảnh, Video, Media player, nhạc chuông) và thử nghiệm giao thức ngăn xếp điện thoại di động.
  • Kiểm thử trang web trên di động (WAP Sites): không như các ứng dụng có thể tải về, web trên di động có thể được truy cập thông qua trình duyệt, không cần tải về. Kiểm thử này có những thách thức riêng của nó. Chuyển hướng đúng đắn, giao diện người dùng tốt (thiết kế), an toàn, hiệu quả và khả năng tưng thích trình duyệt di động là những lĩnh vùng quan trọng.

6. Nhận biết các loại kiểm thử ứng dụng di động.

Cũng giống như kiểm thử phần mềm, kiểm thử ứng dụng di động cũng bao gồm

  • Kiểm thử giao diện (màu sắc, phong cách Menu, nhất quán của giao diện người dùng trên thiết bị khác nhau)
  • Kiểm thử chức năng (kiểm tra chức năng chính của ứng dụng di động theo đặc điểm kỹ thuật)
  • Kiểm thử hiệu suất và chịu tải (Hành vi của ứng dụng di động trong các nguồn tài nguyên thấp (bộ nhớ / không gian lưu trữ), hành vi của trang web điện thoại di động khi nhiều người sử dụng điện thoại di động đồng thời truy cập vào trang web di động)
  • Kiểm tra khả năng sử dụng (kiểm tra các khía cạnh khả năng sử dụng các ứng dụng di động)
  • Thử nghiệm tương thích: Kiểm tra khả năng tương thích của ứng dụng của bạn với các tính năng thiết bị gốc (tức là để đảm bảo rằng ứng dụng của bạn không cản trở chức năng thiết bị gốc)
  • Kiểm tra gián đoạn (cuộc gọi thoại, tin nhắn SMS, sạc, thông báo bộ nhớ thấp) trong khi ứng dụng đang chạy.
  • Monkey Testing (không biết dịch sao luôn – kiểm tra khỉ haha): bấm bàn phím liên tục thông qua các công cụ để kiểm tra sự ổn định ứng dụng với sự kiện nhấn phím khác nhau.

7. Tham khảo các trường hợp thử nghiệm mẫu cho ứng dụng di động.

Đối với các bạn mới tiếp cận kiểm thử di động, sẽ là rất thông minh khi các bạn tham khảo các trường hợp thử nghiệm mẫu cho thiết bị di động. Tham khảo chúng từ những dự án đã hoàn thành trước kia hoặc hỏi các anh chị đi trước. Ngoài ra các bạn có thể tìm những thử nghiệm mẫu này từ Internet.

8. Khám phá những khả năng của trình mô phỏng.

Trình mô phỏng đóng vai trò đặc biệt quan trọng khi không có thiết bị thật cho việc kiểm thử. Mặc dù thử nghiệm trên thiết bị luôn được ưu tiên vì nó tái lập hành động của người dùng cuôi, tầm quan trọng của trình mô phỏng không thể bỏ qua. Để có thử nghiệm hiệu quả trên Simulator, tôi đề nghị khám phá tất cả các khả năng của trình mô phỏng.

9. Sử dụng các dịch vụ cho thuê thiết bị từ xa.

Vì có qúa nhiều loại thiết bị di động trên thị trường, nên chúng ta không thể mua tất cả chúng. Trong khi đó, trình mô phỏng không thể tin tưởng 100% để phát hành ứng dụng. Các dịch vụ thiết bị từ xa có thể là giải pháp tốt để đối phó với thách thức này. Là một kỹ sư kiểm thử di động giỏi, bạn nên biết các loại dịch vụ này và đề nghị với người quản lý của bạn về các dịch vụ này khi cần thiết

  • Device Anywhere (Paid)
  • Perfecto Mobile (Paid)
  • Nokia RDA (Free, For Symbian Phones)

*** Lợi ích của dịch vụ

  • Bạn không phải mua thiết bị
  • Người dùng có thể lựa chọn nhà mạng (Verizon, T-Mobile, AT&T)
  • Độ tin cậy cao hơn sử dụng trình mô phỏng bởi vì chúng là thiết bị thật
  • Một số dịch vụ thiết bị từ xa như Device Anywhere còn hỗ trợ kiểm thử tự động

*** Bất lợi

  • Mất thời gian để các sự kiện gõ phím, hành động được truyền tải tới thiết bị và phản hồi lại cho người dùng
  • Đôi khi những thiết bị bạn cần không có sẵn (vì người khác đã đặt trước rồi)
  • Chi phí khá cao.

10. Khám phá công cụ và tiện ích.

Có nhiều công cụ và tiện ích có trên thị trường, chúng có thể giúp ích cho các bạn trong việc kiểm thử ứng dụng di động hiệu quả. Một số công cụ có sẵn trong bộ SDK. Tuy nhiên bạn có thể sẽ tìm kiếm thêm trên Internet cho những nền tảng/hệ điều hành khác nhau

  • Công cụ kiểm tra sự tiêu thụ pin trong khi ứng dụng đang chạy Nokia Energy Profiler.
  • Công cụ/phần mềm chụp màn hình
  • Công cụ tạo ra những file giả để kiểm tra sự phản ứng của ứng dụng
  • Công cụ lấy logs file

11. Khám phá các công cụ kiểm thử tự động cho thiết bị di động.

  • TestComplete
  • M-Eux
  • TestQuest Countdown
  • Test Quest Pro
  • Robotium
  • VNC
  • Sikuli
  • Deviceanywhere
  • FoneMonkey (iPhone)
  • Eggplant (iPhone)
  • TestiPhone( For iPhone Mobile Web)
  • IBM® Rational® Performance Tester (RPT)
  • 3P Mobile
  • Expertest
  • MITE

12. Khám phá các cộng đồng, diễn dàn, blogs.

Càng khám phá các bạn sẽ thấy có rất nhiều thứ để học. Hơn nữa, công nghệ luôn luôn thay đổi và ngày càng nhanh hơn. Giải pháp là tham gia các cộng đồng, diễn đàn để học từ kiến thức và kinh nghiệm của những người khác. Bắt đầu và thảo luận, bạn sẽ tìm thấy rất nhiều những chia sẻ và kinh nghiệm.