CodeStar Academy
  • Trang chủ
  • Khóa học
    • Khóa học Tester
  • Lịch khai giảng
  • Blog
  • Liên hệ
  • Trang chủ
  • Khóa học
    • Khóa học Tester
  • Lịch khai giảng
  • Blog
  • Liên hệ
CodeStar Academy > Kiến Thức Kiểm Thử > Mobile Testing là gì? Thông tin chi tiết mobile App Testing

Mobile Testing là gì? Thông tin chi tiết mobile App Testing

  • Tháng Mười Một 26, 2021
  • Posted by: codestar
  • Category: Kiến Thức Kiểm Thử
Không có phản hồi

Trong kỷ nguyên số, thiết bị di động đã trở thành một nhu cầu gần như thiết yếu của con người, thúc đẩy sự phát triển bùng nổ của các ứng dụng di động (Mobile Apps). Điều này đặt ra yêu cầu cao về chất lượng và độ ổn định của sản phẩm phần mềm.

Đối với những người làm trong lĩnh vực Kiểm thử phần mềm (Software Testing), đặc biệt là những người mới học Tester, Mobile Testing là một mảng kiến thức vô cùng quan trọng và cần được nghiên cứu kỹ lưỡng. Khi làm việc với ứng dụng di động, Tester không chỉ cần chú ý đến các vấn đề cơ bản mà còn phải tập trung vào các test type đặc thù như kiểm thử tương thích thiết bị, kiểm thử hiệu năng và kiểm thử khả năng sử dụng (Usability Testing).

Vậy, Mobile Testing là gì, có những thách thức và test type nào là cốt lõi? Hãy cùng CodeStar khám phá chi tiết về kiểm thử ứng dụng di động trong bài viết dưới đây!

Kiểm thử ứng dụng di động (Mobile App Testing) là gì?

Kiểm thử ứng dụng di động là kiểm thử về các chức năng, tính khả dụng và nhất quán của ứng dụng chạy trên các thiết bị di động cầm tay.

Các kĩ thuật test trên ứng dụng di động thường được đào tạo chuyên sâu trong các Khóa học Tester từ cơ bản, khóa học tester cho người mới đến Khóa học Tester nâng cao.

Trước hết, để tìm hiểu kĩ hơn về Kiểm thử trên di động, cần phân biệt được các loại ứng dụng di động hiện có.

Kiểm thử ứng dụng di động (Mobile App Testing) là gì?
Kiểm thử ứng dụng di động (Mobile App Testing) là gì?

>> Tìm hiểu thêm các khái niệm Testing khác liên quan: API Testing là gì?

Các loại ứng dụng di động

Đối với ứng dụng di động, có 3 loại:

  • Ứng dụng gốc (native app): Là những ứng dụng được viết riêng cho 1 loại nền tảng nhất định bằng các ngôn ngữ riêng (e.g. xCode/Objective C for iOS, Eclipse/Java for Android, Visual Studio/C# for Windows Phone).
  • Ứng dụng web (web app): Là ứng dụng server-side, người dùng thiết bị di động sẽ dùng các trình duyệt (safari, chrome, firefox) đểt ruy cập̣
  • Ứng dụng lai (hybrid app): Kết hợp giữa ứng dụng web và ứng dụng gốc. Được viết bằng công nghệ web (HTML5, CSS and JavaScript), chạy trong ứng dụng gốc & tận dụng cơ chế của browser để tạo ra HTML và xử lý javascript

Các khó khăn khi kiểm thử ứng dụng di động

Kiểm thử ứng dụng di động luôn là một thách thức lớn đối với bất kỳ Tester nào do sự đa dạng của môi trường thiết bị và kết nối. So với kiểm thử website truyền thống, kiểm thử mobile đòi hỏi sự chú ý đến nhiều yếu tố đặc thù. Dưới đây là những khó khăn chính mà các chuyên gia kiểm thử (Tester) thường phải đối mặt:

Sự đa dạng của thiết bị và hệ điều hành

Đây là thách thức lớn nhất trong kiểm thử ứng dụng di động, vì ứng dụng cần phải hoạt động ổn định trên vô số thiết bị khác nhau:

  • Các Hệ Điều Hành Khác Nhau: Cần kiểm thử trên các nền tảng chính như Android và iOS. (Trước đây còn có Windows Phone, Blackberry,…)
  • Phiên Bản Hệ Điều Hành: Mỗi hệ điều hành lại có nhiều phiên bản khác nhau (ví dụ: Android 10, 11, 12… hoặc iOS 14, 15, 16…). Ứng dụng phải tương thích ngược (Backward compatibility).
  • Các Dòng Máy Đa Dạng: Ngay cả khi sử dụng cùng một hệ điều hành (ví dụ: Android), ứng dụng vẫn cần được kiểm tra trên nhiều dòng điện thoại khác nhau từ các nhà sản xuất (Samsung, Oppo, Xiaomi,…) do sự khác biệt về phần cứng, cấu hình.

Giao diện (UI/UX) và hiển thị

Sự khác biệt về thiết kế màn hình và các thành phần giao diện mặc định gây ra nhiều vấn đề hiển thị:

  • Kích Thước Màn Hình: Sự chênh lệch lớn về kích thước và độ phân giải màn hình đòi hỏi giao diện phải linh hoạt (responsive design) để tránh lỗi tràn/thiếu nội dung.
  • Hiển Thị Mặc Định của Hệ Thống: Cách hiển thị mặc định của các thành phần như bàn phím ảo, thông báo (notifications), hoặc bộ chọn ngày giờ (date/time picker) sẽ khác nhau tùy theo dòng máy và hệ điều hành, ảnh hưởng đến trải nghiệm người dùng.

Hạn chế về tài nguyên thiết bị

Thiết bị di động có giới hạn về tài nguyên so với máy tính để bàn, đòi hỏi ứng dụng phải tối ưu hiệu suất:

  • Bộ Nhớ (RAM) Hạn Chế: Ứng dụng phải được kiểm thử nghiêm ngặt về khả năng quản lý bộ nhớ để tránh treo, lag hoặc bị buộc đóng (crash) khi tài nguyên thấp.
  • Pin: Kiểm thử mức tiêu thụ pin của ứng dụng là một yếu tố quan trọng để đảm bảo trải nghiệm người dùng không bị gián đoạn.

Tính Ổn Định Của Môi Trường Kết Nối

  • Ứng dụng di động hoạt động trong môi trường kết nối không cố định:
  • Đa Dạng Kết Nối: Cần kiểm thử ứng dụng khi sử dụng các loại kết nối khác nhau (Wi-Fi, 3G, 4G, 5G).
  • Môi Trường Kết Nối Yếu/Bị Gián Đoạn: Kiểm thử khả năng xử lý của ứng dụng khi mạng yếu, mạng thay đổi đột ngột (chuyển từ Wi-Fi sang 4G) hoặc mất kết nối hoàn toàn là rất quan trọng (Negative Testing).

Các loại kiểm thử ứng dụng di động

Các loại kiểm thử ứng dụng di động
Các loại kiểm thử ứng dụng di động

Cũng khá giống với kiểm thử trên website, kiểm thử ứng dụng di động được chia ra các loại như sau

1. Functional testing – Kiểm thử chức năng :

Kiểm thử chức năng trên mobile thường là việc tiến hành kiểm thử tương tác người dùng với app, kiểm tra các chức năng chính của ứng dụng so với đặc điểm của thiết bị.

2. Performance testing – Kiểm thử hiệu suất

Mục tiêu cơ bản của loại kiểm thử này là đảm bảo rằng app có thể thực hiện ở mức chấp nhận được một vài yêu cầu, điển hình như là truy cập từ rất nhiều người dùng cùng lúc.

3. Security testing – Kiểm thử bảo mật

Đảm bảo tính bảo mật của ứng dụng, có hệ thống mật khẩu bảo vệ mạnh, không cho phép kẻ lạ tấn công, truy cập thay đổi, có khả năng luôn chủ động và có biện pháp ngăn chặn những kẻ tấn công vào các lỗ hổng.

4. Usability testing – Kiểm thử tính khả dụng

Mục đích chính của loại kiểm thử này là đảm bảo chúng ta có ứng dụng dễ sử dụng, trực quan. Với ứng dụng khi được tạo ra, việc sử dụng được nó vào đúng mục đích đã định là một trong những ưu tiên chính mà Tester – người tham gia vào quá trình đảm bảo chất lượng cần quan tâm đến.

5. Compatibility testing – Kiểm thử khả năng tương thích

Loại kiểm thử này đảm bảo rằng app hoạt động như mong muốn trên nhiều loại thiết bị khác nhau về kích thước, độ phân giải, phần cứng, phiển bản… ; Giao diện hiển thị đầy đủ trên mọi kích thước màn hình, không có vùng nào bị khuất hoặc không truy cập được. Hơn nữa, để đảm bảo rằng gọi điện hoặc báo thức hoạt động bình thường khi app đang chạy.6.Recoverability Testing – Kiểm thử khả năng khôi phục.

Cần xác minh khả năng khôi phục sau khi bị crash và ngắt giao dịch; hiệu quả khôi phục ứng dụng trong ngữ cảnh bị ngắt/crash không mong muốn.

Kiểm thử để xác nhận ứng dụng xử lý giao dịch như thế nào trong khi không có nguồn năng lượng (VD: Pin chết hoặc tắt máy bắt ngờ).

Xác nhận các quá trình khi kết nối bị treo, hệ thống cần thiết lập lại để khôi phục dữ liệu bị ảnh hưởng trực tiếp bởi việc trì hoãn kết nối.

7. Các phần kiểm tra quan trọng khác

Kiểm tra việc cài đặt (ứng dụng có được cài đặt trong khoảng thời gian hợp lý với các tiêu chí mong muốn hay không).

Kiểm tra việc gỡ bỏ cài đặt (ứng dụng có được gỡ bỏ cài đặt trong khoảng thời gian hợp lý với các tiêu chí mong muốn hay không).

Các trường hợp kiểm tra về mạng (xác nhận mạng có chịu được tải yêu cầu hay không, mạng có thể hỗ trỡ tất cả các ứng dụng cần thiết trong suốt quá trình kiểm thử hay không).

So sánh Mobile Testing và Web Testing

Tiêu Chí So Sánh Kiểm Thử Ứng Dụng WEB (Web testing) Kiểm Thử Ứng Dụng Di Động (Mobile Testing)
1. Môi Trường (Fragmentation) Số lượng giới hạn (chủ yếu là các trình duyệt như Chrome, Firefox, Edge, Safari trên PC/Laptop). Rất đa dạng và phức tạp: Phải kiểm thử trên nhiều Hệ điều hành (iOS, Android), nhiều phiên bản OS, và vô số dòng thiết bị khác nhau (Smartphone, Tablet).
2. Kích Thước Màn Hình Thường quen thuộc với kích thước màn hình PC/Laptop, ít biến đổi lớn. Rất đa dạng và liên tục thay đổi: Cần kiểm tra nghiêm ngặt để đảm bảo giao diện (layout), kích thước các thành phần (button, textbox) không bị vỡ.
3. Tương Tác Người Dùng Chủ yếu qua Bàn phím và Chuột. Ít sử dụng các cảm biến/thiết bị ngoại vi. Đa dạng cách thức: Chạm, vuốt, kéo, thả, xoay thiết bị, FaceID, âm thanh. Cần test đầy đủ các tương tác này.
4. Trải Nghiệm Người Dùng (UX) Quan tâm nhiều đến luồng chức năng. Cực kỳ quan trọng: Cần đóng vai người dùng trong mọi hoàn cảnh để đánh giá khả năng sử dụng, tính tiện lợi.
5. Bảo Mật & Quyền Riêng Tư Tập trung vào bảo mật dữ liệu và phiên làm việc. Phát sinh nhiều Test Case về Quyền Truy Cập: Camera, Micro, Vị trí (GPS), Danh bạ, Thư viện ảnh/video.
6. Vấn Đề Kết Nối Mạng Chủ yếu test khi mạng ổn định (Internet/LAN). Các case mạng yếu/gián đoạn ít được chú trọng. Rất quan trọng: Cần test với các loại kết nối (3G/4G/5G, Wi-Fi) và trong điều kiện mạng nhanh, chậm, gián đoạn, hoặc khi thiết bị đang di chuyển.
7. Vòng Đời Ứng Dụng Đơn giản: Truy cập, Sử dụng, Đóng trình duyệt. Phức tạp hơn: Phải kiểm thử các case đặc thù như Install, Uninstall, Upgrade ứng dụng, cũng như sau khi Upgrade OS version.
8. Xử Lý Gián Đoạn (Interruption) Ít xảy ra các tình huống gián đoạn bên ngoài hệ thống. Thường xuyên xảy ra: Cần test khi có Cuộc gọi đến, Tin nhắn (SMS), Thông báo (Notification), hoặc khi ứng dụng chuyển sang nền (Background) để đảm bảo dữ liệu/trạng thái không bị mất.

Để thực hành và nắm bắt các kĩ năng test trên ứng dụng di động, có một option hiệu quả nhất là tham gia ngay Khóa học Tester cho người mới tại CodeStar Academy. Tại đây, khi tham gia khóa học Tester cho người mới bắt đầu, các bạn sẽ được bắt tay vào làm thực tế các công việc của 1 Tester thực thụ trên các dự án có thật, được đăng nhập vào chương trình website, mobile thực tế để tìm các lỗi và báo cáo lên.

Với sự linh hoạt trong các hình thức đào tạo, giảng dạy hiện nay, tại CodeStar Academy, các bạn sẽ được tham gia khóa học Tester online (Tương tác trực tiếp từ xa với các Giảng viên là Trưởng phòng QA trên 15 năm kinh nghiệm). Chương trình đào tạo thực chiến, bám sát công việc thực tế của 1 Tester tại Doanh nghiệp IT chắc chắn không để các bạn thất vọng.

Trả lời Hủy

Có thể bạn quan tâm

  • Khóa học Tester

Về chúng tôi

CodeStar hướng đến việc mang lại những trải nghiệm mới cho Học viên trong mỗi buổi học thông qua việc tham gia vào các dự án tại CodeStar

Địa chỉ

Tầng 4, Tòa CT1, Bắc Hà C14, Tố Hữu, Trung Văn, Nam Từ Liêm, Hà Nội.

0367833933

[email protected]

Quick Links

Khóa học

Lịch khai giảng

Kênh Youtube

Liên hệ


Copyright © 2020. CodeStar

Search