Ngày nay với sự phát triển của những chiếc điện thoại thông minh thì những chiếc điện thoại này không chỉ còn là thiết bị nghe và gọi, thay vào đó có rất nhiều ứng dụng được sử dụng qua chiếc smartphone. Như chúng ta đã biết thì Công nghệ điện thoại di động và các thiết bị thông minh hiện nay là xu hướng và cũng là tương lai của thế giới. Mỗi ngày có hàng triệu application được download từ Appstore hoặc Google Play về các thiết bị cá nhân. Các ứng dụng di động rất phong phú đa dạng đáp ứng đủ các nhu cầu học tập, chăm sóc sức khỏe hay giải trí của người dùng.v.v. Trong sự phát triển của smartphone như vậy, các nhà phát triển phải chắc chắn rằng ngoài việc cung cấp một ứng dụng thú vị và sáng tạo cho khách hàng thì đương nhiên ứng dụng đó cũng phải không có bất kỳ trục trặc nào. Và do đó, kiểm thử ứng dụng dành cho thiết bị di động đang trở nên rất quan trọng.
Kiểm thử ứng dụng trên thiết bị di động là gì? (Mobile Application Testing)
Kiểm thử ứng dụng trên Mobile là kiểm tra các ứng dụng cho các thiết bị di động về chức năng, tính khả dụng và nhất quán
Với mỗi loại ứng dụng thì kiểm thử ứng dụng di động đều đóng vai trò rất quan trọng. Vì số lượng lượt download ứng dụng thường lên tới hàng triệu lượt cho một sản phẩm nào đó, do vậy một ứng dụng bị lỗi không bao giờ được đánh giá cao. Nó thường gây tổn thất về mặt tiền bạc, vấn đề pháp lý và không thể khác phục thiệt hại về hình ảnh thương hiệu sản phẩm.
Các yếu tố cần thiết để kiểm tra ứng dụng di động là gì?
Kiểm thử ứng dụng di động rất khác với kiểm thử phần mềm và kiểm thử web . Có một số chi tiết cụ thể nên xem xét trước khi thực hiện kiểm tra ứng dụng dành cho thiết bị di động:
- Độ phân giải màn hình
- Bật / tắt GPS
- Hướng màn hình (ngang, dọc)
- Các nhà sản xuất thiết bị khác nhau
- Hệ điều hành
- Loại ứng dụng di động
Các loại ứng dụng di động
Loại ứng dụng dành cho thiết bị di động bạn đang kiểm thử đóng một vai trò rất quan trọng trong việc xác định quy trình kiểm thử của bạn. Vì vậy, hãy thật rõ ràng về loại ứng dụng dành cho thiết bị di động mà bạn sẽ kiểm thử. Chúng chủ yếu được phân loại thành ba loại khác nhau:
- Ứng dụng web trên điện thoại di động : Đây là các trang web mà bạn mở thông qua trình duyệt trên điện thoại di động.
- Ứng dụng gốc : Đây là những ứng dụng được phát triển cho một nền tảng cụ thể. (iOS, Android, Windows 10 M0bile, Tizen, BlackBerry).
- Kết hợp : Nó là sự kết hợp của ứng dụng web dành cho thiết bị di động và Ứng dụng gốc.
Một vài điểm khác nhau cơ bản giữa các ứng dụng trên:
- Ứng dụng gốc chỉ chạy trên một nền tảng trong khi ứng dụng di động web thì đa nền tảng.
- Ứng dụng gốc được viết trên nền tảng giống SDKs trong khi ứng dụng di động web được viết với các công nghệ web: html, css, asp.net, java, php
- Trong một vài ứng dụng gốc, việc cài đặt là bắt buộc nhưng trong ứng dụng di động web, việc cài đặt là không cần thiết.
- Ứng dụng gốc có thể được cập nhật từ play store hoặc app store trong khi các ứng dụng di động web thì được cập nhật tập trung.
- Rất nhiều ứng dụng gốc không yêu cầu kết nối internet nhưng ứng dụng di động web thì yêu cầu.
- Ứng dụng gốc làm việc nhanh hơn khi so sánh với ứng dụng di động web
- Ứng dụng gốc được cài đặt thông qua app stores hoặc google play store trong khi ứng dụng mobile web là các websites và được truy nhập thông qua internet.
Làm thế nào để lập chiến lược test trên ứng dụng di động của bạn?
Chiến lược kiểm thử nên chắc chắn rằng tất cả chất lượng và hiệu năng cần phải phù hợp. Một vài chiến lược kiểm thử trong phạm vi bài báo này như sau:
Việc lựa chọn các thiết bị:
Phân tích thị trường và lựa chọn các thiết bị được sử dụng rộng rãi. (Quyết định này hầu như đều phụ thuộc vào khách hàng, Khách hàng hoặc người xây dựng ứng dụng xem xét các nhân tố phổ biến hoặc các thiết bị chính tốt nhất trên thị trường cần cho ứng dụng, cần sử dụng để kiểm thử )
Dưới đây là một số gợi ý có thể giúp bạn lựa chọn thiết bị:
- Nghiên cứu về thiết bị di động được sử dụng và phổ biến nhất trên thị trường.
- Hãy chú ý đến điện thoại di động có độ phân giải màn hình khác nhau.
- Chọn điện thoại di động có hệ điều hành khác.
- Đừng đánh giá thấp các tính năng như khả năng tương thích, kích thước bộ nhớ, kết nối, v.v. và hãy chú ý đến chúng.
Giả lập
Việc sử dụng giả lập là cực kỳ hữu ích trong giai đoạn đầu phát triển của ứng dụng. Nó cho phép chúng ta kiểm tra ứng dụng một cách nhanh chóng và hiệu quả. Giả lập là một hệ thống chạy phần mềm từ môi trường này sang môi trường khác mà không cần thay đổi chính phần mềm đó. Nó bao gồm tất cả các tính năng và làm việc trên môi trường thật. Các loại giả lập di động
Giả lập thiết bị: Cung cấp bơi các nhà sản xuất thiết bị Giả lập trình duyệt: mô phỏng môi trường trình duyệt di động. Giả lập hệ điều hành: Apple cung cấp giải lập cho Iphones, Microsoft cung cấp giải lập cho window phones và Google là cho android phones
Kiểm thử đám mây (cloud computing):
Các thiết bị chạy trên đa hệ thống hoặc mạng thông qua internet nơi mà các ứng dụng có thể được kiểm thử, cập nhật và quản lý. Về mục đích kiểm thử, nó tạo ra trang web dựa trên môi trường di động trên một giả lập để truy nhập và ứng dụng di động.
Kiểm tra thủ công hay tự động trên thiết bị di động?
Một số người nghĩ kiểm thử thủ công sẽ dần biến mất, thay vào đó sẽ là kiểm thử tự động. Nhưng thực tế là cả thử nghiệm tự động hóa và thử nghiệm thủ công đều quan trọng. Có những trường hợp thì việc kiểm thử tự động là tốt nhất, nhưng có những trường hợp kiểm thử thủ công lại cho kết quả tốt nhất Ví dụ:
- Nếu ứng dụng chứa chức năng mới, hãy kiểm thử nó bằng tay
- Nếu ứng dụng yêu cầu kiểm thử một hoặc hai lần, hãy kiểm thử nó bằng tay
- Sử dụng kiểm thử tự động cho trường hợp test hồi quy (regression test)
- Sử dụng kiểm thử tự động cho các kịch bản phức tạp, mất nhiều thời gian để thực hiện khi thực hiện nó bằng tay.
Các giai đoạn kiểm tra ứng dụng dành cho thiết bị di động
Kiểm thử tài liệu (Documentation Testing)
Sự bắt đầu của kiểm thử trên thiết bị di động diễn ra từ giai đoạn kiểm tra tài liệu - chuẩn bị. Ngay cả trước khi ứng dụng chưa được hình thành thì những người kiểm thử đã được giao bố cục màn hình, biểu đồ điều hướng và các yêu cầu khác bị che khuất trong thiết kế. Trong giai đoạn này, bạn cần phân tích các yêu cầu về tính tổng thể và sự khác biệt. Tất cả sự khác biệt được tìm thấy trong giai đoạn này cần phải được giải quyết trước khi bắt đầu phát triển Giai đoạn lập tài liệu đánh dấu sự sáng tạo và phân tích các yêu cầu (Đặc điểm kỹ thuật, PRD
Kiểm thử chức năng (Functional Testing)
Nó giúp bạn kiểm tra xem ứng dụng di động của bạn có hoạt động như mong đợi và phù hợp với các thông số kỹ thuật yêu cầu hay không. Trong khi bạn đang thực hiện kiểm tra chức năng cho ứng dụng của mình, hãy lưu ý các yếu tố sau:
- Chức năng kinh doanh trên ứng dụng của bạn như ngân hàng, mạng xã hội, đặt hàng và giao đồ ăn, giáo dục, vé, ngành công nghiệp trò chơi, v.v.
- Đối tượng mục tiêu như công ty, sinh viên, doanh nhân, v.v.
- Các kênh phân phối như Google Play, giao hàng trực tiếp, App Store, v.v.
Các xác nhận cơ bản mà bạn cần kiểm tra trong kiểm thử chức năng là:
- Cài đặt và chạy ứng dụng
- Kiểm tra các lĩnh vực
- Kiểm tra các chức năng kinh doanh
- Kiểm tra gián đoạn
- Kiểm tra phản hồi của người dùng liên tục
- Cập nhật kiểm thử
- Kiểm tra tài nguyên thiết bị
Kiểm thử khả năng sử dụng (Usability Testing)
Kiểm tra khả năng sử dụng để đảm bảo rằng ứng dụng của bạn cung cấp khả năng làm việc thuận tiện cho khách hàng và tạo ra một giao diện trực quan tuân theo các tiêu chuẩn ngành. Nó hứa hẹn sẽ là ứng dụng nhanh chóng và dễ sử dụng. Khả năng sử dụng ứng dụng được đánh giá dựa trên ba tiêu chí cơ bản sau:
- Sự thỏa mãn
- Hiệu quả
- Hiệu suất
Kiểm thử giao diện người dùng (UI (User Interface) testing)
Kiểm tra Giao diện Người dùng (UI) đảm bảo rằng GUI của ứng dụng của bạn đáp ứng tất cả các thông số kỹ thuật được yêu cầu.
Kiểm thử khả năng tương thích (Cấu hình)
Kiểm thử khả năng tương thích (Cấu hình) để xác nhận hiệu suất tối ưu của ứng dụng trên các thiết bị khác nhau dựa trên kích thước, độ phân giải màn hình, phiên bản, phần cứng của chúng, v.v. Kiểm thử khả năng tương thích cũng quan tâm đến:
- Cấu hình hệ điều hành
- Cấu hình trình duyệt
- Cấu hình cơ sở dữ liệu
- Cấu hình thiết bị
- Cấu hình mạng
Kiểm thử khả năng tương thích có thể được chia thành
- Kiểm tra đa nền tảng : Kiểm tra khả năng tương thích của ứng dụng di động với các hệ điều hành khác nhau: Windows, iOS, Android và BlackBerry, v.v.
- Kiểm tra trên nhiều trình duyệt : Kiểm tra khả năng tương thích ứng dụng di động trong các trình duyệt khác nhau Google Chrome, Mozilla Firefox, Opera Mini, v.v.
- Kiểm tra cơ sở dữ liệu : Kiểm tra khả năng tương thích ứng dụng di động trong các cấu hình cơ sở dữ liệu khác nhau: DB2, Oracle, MSSQL Server, MySql, Sybase.
- Kiểm tra cấu hình thiết bị : Kiểm tra khả năng tương thích ứng dụng di động trên các thiết bị khác nhau dựa trên:
- Loại thiết bị: điện thoại thông minh, máy tính bảng, v.v.
- Cấu hình thiết bị: loại vi xử lý, RAM, dung lượng pin, độ phân giải màn hình, v.v.
- Kiểm tra cấu hình mạng: Kiểm tra khả năng tương thích của ứng dụng di động củtrong các cấu hình mạng khác nhau (TDMA, GSM) và các tiêu chuẩn (2G, 3G, 4G, 5G).
Kiểm tra hiệu suất
Kiểm tra hiệu suất giúp bạn kiểm tra phản ứng và tính ổn định của ứng dụng theo khối lượng công việc cụ thể.
Các thuộc tính kiểm tra hiệu suất
- Kiểm tra tải : Nó được thực hiện để kiểm tra hoạt động của ứng dụng trong điều kiện tải bình thường và tải khắc nghiệt.
- Kiểm tra căng thẳng : Nó được thực hiện để kiểm tra khả năng duy trì căng thẳng của ứng dụng. Nó đảm bảo rằng ứng dụng của bạn có khả năng chịu áp lực quá mức.
- Kiểm tra độ ổn định : Nó kiểm tra xem ứng dụng của bạn có thể hoạt động tốt trong một thời gian dài hơn trong các lần tải bình thường hay không.
- Kiểm tra khối lượng : Nó được tiến hành để kiểm tra hiệu suất ứng dụng của bạn khi phải chịu một khối lượng lớn dữ liệu.
- Kiểm tra đồng thời : Nó kiểm tra hiệu suất của ứng dụng của bạn khi nhiều người dùng đăng nhập.
Kiểm tra bảo mật
Kiểm tra bảo mật xác nhận các tính năng bảo mật của ứng dụng. Nó cũng phân tích các rủi ro của tin tặc ứng dụng, bảo vệ sự xâm nhập của virus hay truy cập trái phép vào dữ liệu cực kỳ nhạy cảm.
Kiểm tra phục hồi
Dùng để kiểm tra khả năng ứng dụng có thể chịu đựng và khôi phục thành công khỏi các lỗi có thể xảy ra do sự cố phần mềm, lỗi phần cứng hoặc sự cố giao tiếp.
Kiểm thử bản địa hóa
Kiểm thử bản địa hóa là kiểm tra khả năng thích ứng của ứng dụng đối với một đối tượng mục tiêu cụ thể dựa trên các đặc điểm văn hóa cụ thể.
Kiểm thử thay đổi liên quan
Cuối cùng, khi hoàn tất quá trình kiểm tra thì bạn có thể tìm thấy một số lỗi và dẫn đến một đoạn mã nhất định phải thay đổi để loại bỏ những lỗi đó. Sau khi những thay đổi mã này một lần nữa, bạn cần phải thực hiện một vòng kiểm tra. Về cơ bản, điều này bao gồm:
- Kiểm tra lại hoặc Kiểm tra xác nhận : để kiểm tra xem tất cả các lỗi được phát hiện đã được sửa thành công hay chưa.
- Kiểm tra hồi quy: đôi khi thay đổi mã thậm chí có thể làm xáo trộn hoạt động của các chức năng hiện có và hoạt động tốt. Kiểm tra hồi quy được thực hiện để đảm bảo rằng các thay đổi mới không dẫn đến sự xuất hiện của các lỗi mới.
Kiểm thử beta
Kiểm thử beta được thực hiện bởi người dùng thực trên thiết bị thực để xác nhận khả năng sử dụng, chức năng, khả năng tương thích và kiểm tra độ tin cậy. Trước khi đẩy ứng dụng lên để kiểm thử beta, hãy tính đến các yếu tố sau
- Số người tham gia kiểm thử
- Thời lượng kiểm tra
- Tiêu chuẩn đầu vào đầu ra
- Các bên liên quan
- Kiểm tra chi phí Thử nghiệm beta là một khoản đầu tư tốt để đảm bảo chất lượng tốt hơn cho ứng dụng dành cho thiết bị di động của bạn.
Kiểm tra chứng nhận
Kiểm thử chứng nhận là kiểm tra xem ứng dụng có đáp ứng các tiêu chuẩn, thỏa thuận cấp phép, điều khoản sử dụng và yêu cầu của các cửa hàng như App Store, Google Play và Windows Phone hay không.
Những thách thức của kiểm ứng dụng di động
- Phương pháp kiểm thử dựa trên thiết bị
- Tính khả dụng của nhiều giao diện người dùng
- Các vấn đề bảo mật lớn hơn
- Giới hạn thời gian đối với thị trường ứng dụng
- Môi trường liên tục thay đổi và cách sử dụng điện thoại di động
- Kiểm tra màn hình cảm ứng phức tạp hơn.
- Trải nghiệm người dùng và vấn đề với hiệu suất ứng dụng
Các mẹo để kiểm thử ứng dụng di động
- Hãy rất quen thuộc với ứng dụng di động của bạn: tìm hiểu nó trong và ngoài
- Hãy nhớ rằng bạn đang kiểm một ứng dụng dành cho thiết bị di động chứ không phải phần mềm dành cho máy tính để bàn
- Tính đến các thông số kỹ thuật phần cứng và hệ điều hành của thiết bị bạn đang kiểm thử
- Sử dụng thiết bị thực bất cứ khi nào có thể để có kết quả kiểm tra tốt hơn.
- Sử dụng các công cụ kiểm tra ứng dụng di động mà bạn quen thuộc và không chọn bất kỳ công cụ nào vì tính phổ biến của nó.
- Hãy thử sử dụng kiểm thử di động đám mây.
- Hãy thử sử dụng các tùy chọn menu ở mức tối đa.
- Trình giả lập và trình mô phỏng có thể là người bảo vệ bạn, hãy sử dụng chúng bất cứ khi nào được yêu cầu.
- Hãy nhớ kiểm tra hiệu suất là quan trọng.
- Đừng chạy theo kiểm thử tự động, hãy cân bằng giữa kiểm thử tự động và kiểm tra thủ công
- Kiểm thử beta luôn là một lợi thế bổ sung.
- Lập kế hoạch thời gian của bạn cho các hoạt động kiểm thử khác nhau
Tham khảo: https://www.testbytes.net/blog/how-to-test-a-mobile-application/