Trong quá trình phát triển ứng dụng, giai đoạn Test App đóng vai trò vô cùng quan trọng để giúp đảm bảo được tính ổn định, sự tương thích trên nhiều nền tảng khác nhau, các tính năng được hoạt động chính xác. Bài viết dưới đây Vietnix sẽ gợi ý cho bạn những kinh nghiệm Test App và một số công cụ hỗ trợ quá trình kiểm thử ứng dụng được diễn ra suôn sẻ, nhanh chóng và hiệu quả.
Test App là gì?
Test App là quá trình kiểm thử và xác nhận tính năng, độ tin cậy và hiệu suất của một ứng dụng trước khi nó được đưa vào sử dụng và ra mắt với người dùng.
Khi Test App, các chuyên gia kiểm thử (tester) sẽ thử nghiệm ứng dụng trên nhiều môi trường và thiết bị khác nhau để đảm bảo rằng ứng dụng hoạt động một cách hiệu quả, ổn định và tương thích với những mong muốn và yêu cầu của người dùng cuối.
Mục đích của quá trình này là tìm ra những lỗi, vấn đề và hạn chế của ứng dụng. Từ đó có thể đưa ra những giải pháp khắc phục và cải tiến.
Test App được đánh giá là một giai đoạn quan trọng trong việc đảm bảo chất lượng và trải nghiệm người dùng tốt nhất đối với một ứng dụng di động.
Kinh nghiệm Test App cho người mới
Là một Tester, bạn cần đặt mình vào vị trí của người dùng để đánh giá với một dự án phần mềm phát triển về App thì cần tiến hành Test những gì. Cụ thể như sau:
Xác định đối tượng Test cụ thể
Trước khi dự án bắt đầu phát triển, bạn cần xác định với người quản lý dự án (PM) hoặc khách hàng là App này, QA sẽ cần thực hiện test những đối tượng sau:
- Trên các thiết bị IOS và Android như: Samsung Galaxy, HTC, IP6s+, IP11, IP8, Pixel, Ipad,…
- Hệ điều hành của thiết bị là bao nhiêu: OS 8.0 , 9.0, 10.0, 11.0,…
- Kích thước màn hình của thiết bị: 4.0, 4.5 inch,…
Trên thị trường hiện nay có rất nhiều dòng thiết bị ở nhiều phiên bản khác nhau. Ở vị trí là một QA, bạn khó có thể Test được hết trên tất cả các loại thiết bị. Ngoài ra do ngân sách của từng công ty sẽ có giới hạn trong phạm vi những thiết bị chính và chủ yếu để thực hiện Test.
Chính vì thế, việc xác định cụ thể những thiết bị Test là rất quan trọng nhằm tránh được giai đoạn UAT khách hàng sẽ log bug cho những thiết bị ngoài phạm vi bên đơn vị của bạn test, dẫn đến những đánh giá không tốt và làm ảnh hưởng đến mối quan hệ của 2 bên.
Tham khảo thêm: Debug là gì? Cách làm việc với debug dành cho lập trình viên
Một số lưu ý khi thực hiện Test App
Dưới đây là những lưu ý quan trọng bạn cần quan tâm khi tiến hành Test App
Test về giao diện (UI)
UI là một trong những yếu tố ảnh hưởng đến sự thành công cho dù đó là Native hay Hybrid app. Thực tế, một ứng dụng có giao diện trực quan, thân thiện với người dùng sẽ bán được nhiều hơn so với một ứng dụng được phát triển chất lượng nhưng giao diện hạn chế khiến người dùng khó chịu.
Giao diện đồ họa chính là yếu tố mang đến sự khác biệt khiến người dùng cảm thấy thu hút và tương tác nhiều hơn khi trải nghiệm. Nhắc đến đây, không thể bỏ qua những ứng dụng shopping, ví điện tử phổ biến mang đến sự tiện lợi và tiết kiệm thời gian cho người dùng như: Grab, Shopee, Lazada, MOMO,…
Khi Test App bạn nên triển khai tối thiểu với 3 phiên bản hệ điều hành khác nhau. Do đó bạn cần xác nhận với khách hàng và thống nhất sẽ thực hiện trên những thiết bị nào. Trường hợp nếu bạn nhận thấy UI chưa đảm bảo sự thân thiện với người dùng thì nên đề xuất cho khách hàng những giải pháp, phương án hợp lý hơn.
Khi bắt đầu Test về giao diện bạn cũng nên chú ý những vấn đề sau:
- Màu chữ, nền, font size, font chữ của button, text box, background hay border có chính xác với design hay không (Không được quả nhỏ hay quá lớn; Những button của những chứng năng giống nhau nên có chung một màu sắc).
- Mức độ thân thiện của text, tooltip của message đối với người dùng. Chẳng hạn: Thông báo lỗi thường sẽ có màu đỏ, màu xanh lá cho sự thành công hoặc xanh lam cho hyperlinks,…
- Kiểm tra vị trí focus khi người dùng chạm vào các trường, khu vực,…
- Những hiệu ứng gồm: Scroll up/down, swipe left/ right, touch, xoay ngang hoặc dọc có mượt mà hay không?
- Bàn phím có ẩn đi khi người dùng chạm vào vùng khách hay không?
- Các button phải có vị trí đảm bảo không bị stuck (bị đơ) hoặc chồng chéo lên nhau. Ngoài ra, phải đảm các vùng text/control được hiển thị đầy đủ, truy cập dễ dàng khi thay đổi phiên bản, kích thước màn hình của thiết bị.
- Kiểm tra các trường có bị vỡ layout khi thực hiện input với data = maxlength, > maxlength. Hoặc ở những thiết bị có kích thước nhỏ hơn sẽ ra sao?
Test về chức năng (Functional testing)
- Kiểm tra lúc bản build vừa được install liệu có gặp tình trạng crash app lần đầu không?
- Kiểm tra lúc app vừa khởi động và dừng lại có đúng với yêu cầu hay không?
- Thực hiện kiểm tra những trường bắt buộc có thực hiện chính xác với yêu cầu hay không?
- Kiểm tra những icon, button có điều hướng và hoạt động tốt hay không?
- Các button/icon [<] /back đảm bảo quay lại những màn trước đó.
- Xác nhận app cho phép dịch chuyển (scroll) màn hình.
- Kiểm tra tính đồng bộ dữ liệu khi “Login” trên nhiều thiết bị khác nhau: Android, IOS và Tablet,…
- Kiểm tra khi người dùng thay đổi cài đặt về thời gian, ngôn ngữ, App có hoạt động ổn định hay không
- Khi có cuộc gọi đến thì App có thông báo đẩy về hay không? Khi đang sử dụng app thì tin nhắn sms có đến hay không?
- Khi kết nối với Wifi, 3G, 4G, chế độ máy bay,… bị gián đoạn thì các chức năng sẽ ra sao, có thông báo lỗi hay không?
- Kiểm tra nội dung hướng dẫn cài đặt App có rõ ràng, dễ hiểu và trực quan với người dùng hay không. Hạn chế sử dụng những thuật ngữ của chuyên ngành IT. Để những người dùng không quá am hiểu về kỹ thuật cũng có thể cài đặt dễ dàng.
- Kiểm tra button khi bấm giữ một thời gian hoặc bấm nhanh thì hoạt động bình thường hay không?
- Khi thiết bị được sạch trong thời gian đang dùng ứng dụng thì có ảnh hưởng hay không
- Các chức năng trong ứng dụng không bị ảnh hưởng sau những phiên cập nhật định kỳ của phiên bản như Android 4.2, 4.3, 4.4, iOS 5.x hoặc 6.x,…
- Kiểm tra App xem khi Update version mới thì có bị ảnh hưởng gì hay không? Sẽ thế nào nếu không update version mới nhất.
Test về bảo mật và hiệu năng (Performance and Security Testing)
- Các chức năng liên quan đến mật khẩu cần đảm bảo luôn hiển thị dưới dạng mã hóa.
- App cần giới hạn thời gian quản lý session để ngăn người dùng chưa được xác thực truy cập vào thông tin. Theo đó, những App có liên quan đến ví tiền, thanh toán cần đảm bảo chặt chẽ hơn cho trường hợp kill app hoặc không dùng thì cần logout ra để nâng cao tính bảo mật. Từ đó bảo vệ người dùng khỏi các vấn đề như lấy cắp thông tin cá nhân, mất tiền.
- Tránh được những cuộc tấn công thông qua hình thức chèn mã SQL.
- Kiểm tra thời gian phản hồi của app đó có theo đúng yêu cầu đề ra không.
- Kiểm tra sự ổn định của App khi network chuyển từ Wifi sang 3G/4G hoặc ngược lại.
- Khi nhiều người dùng truy cập cùng một lúc thì hệ thống hoạt động có ổn định hay không.
- Kiểm tra hiệu suất của network ra sao khi di chuyển thiết bị.
Top 6 công cụ hỗ trợ Test App
Samsung Remote Test Lab – Giải pháp tối ưu thời gian và chi phí cho các nhà phát triển và kiểm thử ứng dụng Android
Bạn có muốn kiểm thử ứng dụng Android của bạn trên các thiết bị mới nhất của Samsung như Galaxy S23 Series hay các thiết bị màn hình gập độc đáo như Galaxy Z Flip 4 hay Galaxy Z Fold 4 mà không cần phải mua hay mượn chúng?
Bạn có muốn kiểm thử ứng dụng Android của mình trên nhiều thiết bị khác nhau với các cấu hình và phiên bản hệ điều hành khác nhau?
Nếu câu trả lời là có, thì Samsung Remote Test Lab là giải pháp dành cho bạn.
Samsung Remote Test Lab là một dịch vụ miễn phí do Samsung cung cấp cho các nhà phát triển ứng dụng trên khắp thế giới, cho phép họ điều khiển các thiết bị Galaxy từ xa qua mạng internet.
Tại Remote Test Lab, Samsung cho phép bạn truy cập và sử dụng nhiều loại thiết bị khác nhau như: các dòng điện thoại Galaxy S, Z, A, M…, máy tính bảng Galaxy Tab và các mẫu đồng hồ thông minh Galaxy Watch.
Với khả năng truy cập toàn cầu vào Remote Test Lab, các nhà phát triển từ khắp nơi trên thế giới có thể kiểm tra các ứng dụng của họ từ xa trên các thiết bị Samsung Galaxy, bất kể nơi nào mà họ đang cư trú. Trong mười năm qua, Samsung đã xây dựng Remote Test Lab trên khắp thế giới, bao gồm cả ở Ấn Độ, Ba Lan, Hàn Quốc, Hoa Kỳ, Brazil, Nga, Vương quốc Anh và Việt Nam.
Với hệ thống này, bạn có thể cài đặt, trải nghiệm và kiểm thử ứng dụng Android của bạn trên các thiết bị Samsung Galaxy thật một cách hoàn toàn miễn phí, bằng cách tương tác với màn hình của thiết bị trên máy tính của bạn. Bạn có thể hình dung được cách thức hoạt động ứng dụng của mình trên các thiết bị đặc biệt của Samsung như Galaxy Z Flip 4 hay Galaxy Z Fold 4 khi nó mở trên các kích cỡ màn hình khác nhau. Ngoài ra bạn cũng có thể sử dụng các công cụ kiểm tra khác nhau như chụp màn hình, ghi âm, lặp lại thao tác, xem log, kết nối Remote Debug Bridge và nhiều hơn thế nữa.
Sau đây là một số hướng dẫn nhanh để bạn có thể trải nghiệm điện thoại Samsung Galaxy và kiểm thử ứng dụng của bạn từ xa một cách nhanh chóng và dễ dàng nhất.
Trước hết bạn hãy đăng ký cho mình 1 tài khoản tại trang: https://developer.samsung.com/
Để truy cập vào dịch vụ Remote Test Lab, các bạn chọn Support > Remote Test Lab hoặc vào đường dẫn: Remote Test Lab | Samsung Developers
Chọn Get Started để tiếp tục
Chọn thiết bị mà bạn muốn thử nghiệm
Với mỗi 30 phút remote, bạn sẽ cần 2 Credit, với account mới lần đầu đăng nhập bạn sẽ được cấp 20 Credit, hãy duy trì đăng nhập mỗi ngày để được tặng thêm Credit.
Với các model như Samsung Galaxy Z Flip hay Z Fold, bạn cũng có thể sử dụng được cả 2 màn hình của những thiết bị này.
Ngoài có thể sử dụng các chức năng của thiết bị, Samsung cũng cung cấp cho bạn các tùy chọn như: chụp màn hình, ghi âm, lặp lại thao tác, xem log, kết nối Remote Debug Bridge và nhiều hơn thế nữa.
Dưới đây là video giới thiệu và hướng dẫn sử dụng do Samsung Developer cung cấp:
Với việc kiểm thử ứng dụng Android của mình một cách hoàn toàn miễn phí trên các thiết bị Samsung Galaxy thật tại Samsung Remote Test Lab, hãy trải nghiệm ngay và phát triển ứng dụng của bạn trên nền tảng thiết bị Samsung một cách tiện lợi và hiệu quả.
Truy cập ngay: https://developer.samsung.com/remotetestlab/
Appium
Appium là công cụ kiểm thử mã nguồn mở tự động dùng để kiểm thử những ứng dụng iOS và Android. Công cụ này hỗ trợ kiểm thử những ứng dụng mobile, ứng dụng hybrid, web mobile. Appium chạy thử nghiệm thông qua giao diện WebDriver.
Hiện tại Appium đang hỗ trợ Java, C#, Ruby và nhiều ngôn ngữ khác nằm trong thư viện WebDriver.
Với Appium bạn thể kiểm thử những ứng dụng gốc được phát triển bằng SDK Android, iOS, ứng dụng web mobile và ứng dụng hybrid có chứa web view. Là một công cụ nền tảng chéo, các lập trình viên được phép tái sử dụng mã nguồn giữa iOS và Android.
Robotium
Được viết bằng Java, Robotium là một công cụ mã nguồn mở hỗ trợ kiểm tra những ứng dụng Android của hầu hết các phiên bản. Robotium kiểm tra cả ứng dụng Native và Hybrid.
Với Robotium, bạn có thể viết các trường hợp kiểm thử hộp đen tự động mạnh mẽ cho các ứng dụng Android một cách dễ dàng. Công cụ này hỗ trợ tự động hóa nhiều hoạt động của Android và tạo các trường hợp kiểm thử chính xác trong thời gian tối thiểu.
MonkeyRunner
Là một công cụ được phát triển đặc biệt dùng để thử nghiệm những thiết bị và ứng dụng ở cấp chức năng, khung. MonkeyRunner với nhiều tính năng nổi bật có thể kể đến như: mở rộng tự động hóa, kiểm thử hồi quy, kiểm soát nhiều thiết bị, thử nghiệm chức năng để kiểm tra phần cứng và các ứng dụng.
MonkeyRunner được phát triển bởi ngôn ngữ Python. Do đó, developer không cần thay đổi mã nguồn để thực hiện kiểm thử tự động.
Ui Automator
Được phát triển để nghiệm giao diện người dùng của App, UI Automator tạo ra nhiều trường hợp thử nghiệm UI khác nhau trên Android. Mới đây, Google đã đầu tư mở rộng nó, chính vì thế công cụ này đã tương tác với các phần mềm và ứng dụng Android thường xuyên hơn.
Phần mềm này hoạt động với hầu hết các thiết bị hỗ trợ Android từ phiên bản 4.1 trở lên. Với những phiên bản trước đó, tester buộc phải dùng các công cụ khác. Đồng thời, UI Automator còn được dùng để khóa và mở khóa máy tính bảng và smartphone.
Selendroid
Là một công cụ kiểm thử tự động được đánh giá cao, Selendroid kiểm thử UI của Android thông qua các ứng dụng và web mobile native hoặc hybrid. Các kiểm tra Client API được viết bằng Selendroid 2.
Ngoài ra, Selendroid còn cho phép cắm các thiết bị phần cứng. Đặc biệt, nó có thể tương tác với hàng loạt thiết bị Android cùng một thời điểm. Selendroid được nhận xét có tính tương thích cao với những giao thức dây JSON.
Lời kết
Trên đây là toàn bộ nội dung liên quan đến Test App và những gợi ý hữu ích cho những ai đang có định hướng với công việc kiểm thử thú vị này. Hy vọng sau khi đọc bài viết bạn đã bổ sung được thêm một số kiến thức liên quan đến Test App. Chúc bạn thành công.