Hướng dẫn kiểm tra ứng dụng iOS: Thủ công & Tự động hóa

Kiểm tra ứng dụng iOS là gì?

Kiểm tra ứng dụng iOS là quá trình kiểm tra trong đó ứng dụng iOS được kiểm tra trên các thiết bị Apple thực để kiểm tra xem ứng dụng đó có hoạt động như mong đợi hay không đối với các hành động cụ thể của người dùng như thời gian cài đặt, giao diện người dùng, trải nghiệm người dùng, giao diện, hành vi, chức năng, thời gian tải, hiệu suất, danh sách App Store, hỗ trợ phiên bản hệ điều hành, v.v.

Tại sao nên thử nghiệm ứng dụng iOS?

Thử nghiệm ứng dụng iOS là bắt buộc vì iOS là nền tảng của Apple dành cho các ứng dụng di động được phát hành vào ngày 29 tháng 6 năm 2007. Không giống như Android, Apple không cấp phép cho iOS để cài đặt trên phần cứng không phải của Apple. Do đó, ứng dụng iOS và iOS chỉ có thể được cài đặt trên thiết bị Apple, Ứng dụng iOS của bạn phải tương thích với các phiên bản iOS và thiết bị iOS.

Đây là câu hỏi thường gặp khi nhà phát triển tạo nên ứng dụng iOS.

Không quan trọng bạn đầu tư bao nhiêu thời gian vào thiết kế và thực hiện, sai lầm là điều không thể tránh khỏi và lỗi sẽ xuất hiện. Có một số lỗi phổ biến trên ứng dụng iOS. Như thể hiện trong hình dưới đây.

Ứng dụng bị lỗi

Một trong những vấn đề khó chịu nhất khi sử dụng các thiết bị của Apple là một ứng dụng có thể gặp sự cố thường xuyên trong quá trình thực thi. Nhiều lần ứng dụng bị treo vì có một số lỗi hoặc rò rỉ bộ nhớ trong ứng dụng.

Ứng dụng không tương thích

Ứng dụng iOS của bạn có thể chạy hoàn hảo trên phiên bản iOS hiện tại, nhưng nếu iOS được nâng cấp, nó có thể không hoạt động do vấn đề không tương thích.

Lỗ hổng bảo mật

Một lỗ hổng bảo mật trong iOS cho phép tin tặc tấn công thiết bị iOS của bạn, đánh cắp thông tin cá nhân của bạn. Cho đến thời điểm hiện tại, các lỗ hổng bảo mật nghiêm trọng của iPhone được phát hiện trên các phiên bản iOS khác nhau.

Rò rỉ bộ nhớ

Rò rỉ bộ nhớ là các khối bộ nhớ được cấp phát mà chương trình không còn sử dụng. Rò rỉ bộ nhớ khiến ứng dụng iOS của bạn bị treo. Chúng là lỗi và luôn phải được sửa.

Bản đồ MindMap thử nghiệm iOS

Checklist thử nghiệm ứng dụng iOS

Danh sách kiểm tra này được thiết kế đặc biệt để kiểm tra các đặc điểm của ứng dụng di động iOS. Rõ ràng, nó chỉ kiểm tra các đặc điểm ứng dụng chung chứ không phải chức năng của nó.

  1. Kiểm tra thời gian cài đặt của ứng dụng vào thiết bị. Đảm bảo rằng ứng dụng đó được cài đặt trong thời gian có thể chấp nhận được.
  2. Sau khi ứng dụng được cài đặt, hãy kiểm tra xem ứng dụng có biểu tượng và tên ứng dụng hay không. Ngoài ra, hãy đảm bảo rằng cả biểu tượng và tên đều tự giải thích phản ánh ý định cốt lõi của ứng dụng.
  3. Khởi chạy ứng dụng và kiểm tra xem màn hình giật gân có hiển thị hay không.
  4. Kiểm tra thời gian chờ của màn hình giật gân và thời gian tải màn hình chính.
  5. Màn hình chính của ứng dụng sẽ tải trong thời gian có thể chấp nhận được. Nếu Màn hình chính chỉ mất nhiều thời gian hơn để tải, thì người dùng sẽ có nhiều cơ hội thoát hoặc thậm chí gỡ cài đặt ứng dụng. Ngoài ra, hãy kiểm tra cách tải nội dung trong Màn hình chính.
  6. Chức năng chính của ứng dụng sẽ rõ ràng ngay lập tức. Nó phải nói cho chính nó.
  7. Kiểm tra xem ứng dụng có hỗ trợ cả hướng ngang và dọc hay không. Nếu vậy, hãy kiểm tra ứng dụng theo cả hai hướng. Giao diện người dùng của ứng dụng sẽ được thiết lập phù hợp.
  8. Nếu không có kết nối internet, hãy khởi chạy ứng dụng. Đảm bảo rằng ứng dụng hoạt động như được thiết kế / mong muốn. Có khả năng ứng dụng có thể gặp sự cố khi khởi chạy hoặc có thể chỉ hiển thị màn hình trống.
  9. Nếu ứng dụng sử dụng dịch vụ vị trí, hãy kiểm tra xem cảnh báo cho phép vị trí có được hiển thị hay không. Cảnh báo này chỉ nên được nhắc cho người dùng một lần.
  10. Nếu ứng dụng gửi thông báo đẩy, hãy kiểm tra xem cảnh báo cho phép thông báo đẩy có được hiển thị hay không. Cảnh báo này cũng chỉ nên được nhắc cho người dùng một lần.
  11. Khởi chạy ứng dụng, thoát khỏi nó và khởi chạy lại. Kiểm tra xem ứng dụng có hoạt động như thiết kế / mong muốn hay không
  12. Đóng ứng dụng bằng cách chạm vào nút Home của thiết bị và mở lại ứng dụng. Kiểm tra xem ứng dụng có hoạt động như thiết kế / mong muốn hay không.
  13. Sau khi cài đặt, hãy kiểm tra xem ứng dụng có được liệt kê trong ứng dụng cài đặt của iPhone hay không.
  14. Sau khi ứng dụng hoạt động, hãy kiểm tra xem ứng dụng có thể được tìm thấy trong “App Store” hay không. Sẽ có phiên bản hệ điều hành được hỗ trợ cho ứng dụng. Vì vậy, hãy đảm bảo rằng ứng dụng có thể được tìm thấy trong "App Store" của thiết bị có phiên bản hệ điều hành được hỗ trợ. Ngoài ra, ứng dụng không nên được liệt kê trong "Cửa hàng ứng dụng" của thiết bị có phiên bản hệ điều hành không được hỗ trợ.
  15. Kiểm tra xem ứng dụng có chuyển sang chế độ ngủ khi chạy nền để tránh hao pin hay không.
  16. Nếu hiệu suất của ứng dụng chậm hoặc bất cứ khi nào nội dung đang tải, hãy kiểm tra xem có biểu tượng trạng thái tiến trình ("Đang tải…") hay không, tốt nhất là với một thông báo cụ thể.
  17. Tìm kiếm ứng dụng với tên của nó trong thanh tìm kiếm thiết bị. Kiểm tra xem ứng dụng có được liệt kê hay không
  18. Kiểm tra xem giao diện của các nút thực hiện các tác vụ tiêu chuẩn có bị thay đổi trong ứng dụng hay không (ví dụ: làm mới, sắp xếp, thùng rác, Trả lời, quay lại, v.v.)
  19. Kiểm tra xem các nút tiêu chuẩn có được sử dụng cho các chức năng khác hay không sau đó chúng thường được sử dụng cho

Chiến lược thử nghiệm iOS

Kiểm tra tự động

Kiểm tra tự động là ưu điểm nhất của kiểm thử iOS. Nó cho phép bạn phát hiện lỗi và các vấn đề về hiệu suất một cách nhanh chóng. Các lợi ích của kiểm thử tự động như được hiển thị bên dưới:

  1. Kiểm tra tự động có thể chạy trên nhiều thiết bị, tiết kiệm thời gian của bạn
  2. Thử nghiệm tự động có thể nhắm mục tiêu các SDK. Bạn có thể chạy thử nghiệm trên các phiên bản SDK khác nhau
  3. Kiểm thử tự động giúp tăng năng suất kiểm thử của bạn, tiết kiệm chi phí phát triển phần mềm
  4. Có nhiều khung kiểm tra mã nguồn mở hỗ trợ kiểm tra tự động trên iOS

Kiểm tra đơn vị với OCUnit

Khi phát hành SDK iOS ban đầu, nó thiếu khả năng Kiểm tra đơn vị. Vì vậy, Apple đã mang trở lại giải pháp thử nghiệm đơn vị OCUnit trong iOS SDK phiên bản 2.2.

OCUnit là một khung thử nghiệm cho C- Objective trong Mac OS. Ưu điểm lớn nhất của OCUnit framework là tích hợp chặt chẽ vào môi trường phát triển XCode như hình dưới đây.

Một số lợi ích của OCUnit được thể hiện trong hình dưới đây.

Tự động hóa giao diện người dùng là một thư viện JavaScript được cung cấp bởi Apple Inc, có thể được sử dụng để thực hiện kiểm tra tự động trên thiết bị thực và trên Trình mô phỏng iOS. Khung này được thêm vào iOS SDK4.0. Sử dụng UI Automation, bạn có thể tự động kiểm tra ứng dụng không chỉ trên trình mô phỏng mà còn trên thiết bị thực.

UIAutomation mang lại cho bạn những lợi ích sau:

  1. Giảm bớt nỗ lực khi kiểm tra thủ công
  2. Sử dụng ít bộ nhớ hơn để thực hiện tất cả các bài kiểm tra của bạn
  3. Đơn giản hóa quy trình thử nghiệm giao diện người dùng của bạn (chỉ cần nhấn một hoặc ba nút và chạy đầy đủ các bộ thử nghiệm của bạn)

Công cụ UIAutomation hoạt động dựa trên các tập lệnh, được viết bằng JavaScript. Nó mô phỏng các sự kiện của người dùng trên ứng dụng iOS mục tiêu.

Hình trên đại diện cho một số lớp phổ biến trong khung UIAutomation.

  1. UIAElement class là lớp siêu cấp cho tất cả các phần tử giao diện người dùng trong ngữ cảnh của Tự động hóa
  2. UIATarget class đại diện cho các phần tử giao diện người dùng cấp cao của hệ thống đang được thử nghiệm
  3. UIALogger class cung cấp thông tin kiểm tra và lỗi về chức năng truy xuất
  4. UIAActivityView class cho phép truy cập và kiểm soát các chế độ xem hoạt động trong ứng dụng của bạn.
  5. UIAActionSheet class cho phép truy cập và kiểm soát các trang hành động trong ứng dụng của bạn.
  6. Event Action của người dùng
    • User Event Action
    • UISlider class
    • UIAButton class
    • UIAKey class
    • UIAKeyboard class

Manual testing

Exploratory Testing

Đó là một thử nghiệm mà không có một kế hoạch thử nghiệm chính thức. Kiểm tra khám phá là phương pháp kiểm tra chi phí thấp, nhưng nó có thể bỏ sót các lỗi tiềm ẩn trong ứng dụng iOS của bạn.

User Testing

User testing là một loại Kiểm tra thủ công trên iOS. Mục đích của thử nghiệm này là tạo ra các ứng dụng tốt hơn, không chỉ là các ứng dụng không có lỗi. Hình dưới đây cho thấy bốn loại Kiểm tra người dùng

Concept testing

Đánh giá phản ứng của người dùng đối với một ý tưởng ứng dụng trước khi phát hành ra thị trường. Quy trình kiểm tra khái niệm trên iOS được mô tả như dưới đây

Usability Testing

Usability Testing là kiểm tra mức độ dễ dàng sử dụng ứng dụng iOS của bạn. Trong thử nghiệm iOS, kiểm tra khả năng sử dụng có thể được ghi lại để ghi nhớ hoặc chia sẻ với người khác.

Có một số công cụ hỗ trợ kiểm tra khả năng sử dụng trên iOS.

Magitest, một bài kiểm tra khả năng sử dụng iOS đơn giản cho các trang web và ứng dụng.

Delight.io, công cụ này có thể nắm bắt tương tác thực của người dùng trên các ứng dụng iOS của bạn.

Beta testing

Beta testing là thử nghiệm tích hợp với dữ liệu thực để nhận được phản hồi cuối cùng từ người dùng. Để phân phối ứng dụng của bạn cho thử nghiệm beta, bạn phải làm theo các bước bên dưới.

Pre-condition: Nếu bạn đang thử nghiệm phiên bản beta, ứng cử viên cuối cùng cho bản phát hành, hãy đảm bảo xác thực ứng dụng trước khi phân phối cho người thử nghiệm.

Find tester via service: bạn thu thập ID thiết bị từ người thử nghiệm và thêm họ vào Trung tâm thành viên

Create ad-hoc distribution: Phân phối Ad Hoc cho phép người thử nghiệm chạy ứng dụng của bạn trên thiết bị của họ mà không cần Xcode. Bước này bao gồm 2 bước phụ

  • Tạo chứng chỉ phân phối
  • Tạo hồ sơ cấp phép đặc biệt

Feedback: Người kiểm tra tiến hành kiểm tra và gửi báo cáo lỗi cho bạn. Sau khi ứng dụng của bạn được phát hành, bạn có thể nhận báo cáo từ kết nối iTunes.

A/B testing

A/B testing là một trong những cách mạnh mẽ nhất để đánh giá hiệu quả của ứng dụng iOS của bạn. Nó sử dụng các thí nghiệm ngẫu nhiên với hai thiết bị A và B.

A/B testing bao gồm ba bước chính

  • Định cấu hình thử nghiệm: Đã chuẩn bị sẵn 2 phiên bản ứng dụng iOS của bạn (A & B) và chỉ số thử nghiệm
  • Thử nghiệm: Thử nghiệm đồng thời 2 phiên bản ứng dụng iOS trên trên các thiết bị.
  • Phân tích: Đo lường và chọn phiên bản tốt hơn để phát hành

Các công cụ sau hỗ trợ A/B testing trên iOS.

Arise: A/B testing cho cả iOS và Android. Nó có thể được tích hợp vào ứng dụng iOS của bạn và giúp quá trình thử nghiệm nhanh hơn.

Các phương pháp hay nhất cho A/B testing

  1. Xác định mục tiêu của bài kiểm tra của bạn. Bất kỳ bài kiểm tra nào cũng vô ích nếu không có mục tiêu.
  2. Xem người dùng cuối sử dụng ứng dụng của bạn lần đầu tiên
  3. Chỉ chạy một bài kiểm tra cho mỗi bản cập nhật. Nó tiết kiệm thời gian của bạn khi tiến hành thử nghiệm
  4. Theo dõi bài kiểm tra của bạn một cách cẩn thận. Bạn có thể học hỏi kinh nghiệm từ bài kiểm tra của mình bằng cách theo dõi nó.

Kiểm tra iOS Phương pháp hay nhất

Dưới đây là một số mẹo bạn nên biết khi tổ chức thử nghiệm ứng dụng iOS của mình

  1. Kiểm tra ứng dụng trên thiết bị thực để biết thực tế về hiệu suất
  2. Cải thiện các phương pháp thử nghiệm của bạn, vì các phương pháp thử nghiệm truyền thống không còn đủ để bao phủ tất cả các thử nghiệm trên thử nghiệm iOS
  3. Sử dụng bảng điều khiển để kiểm tra ứng dụng iOS. Đây là một tính năng iOS bao gồm thông tin từ mọi ứng dụng trên thiết bị.
  4. Ghi lại các lỗi ứng dụng bằng cách sử dụng lệnh ngắn trên màn hình được tích hợp sẵn. Nó giúp nhà phát triển hiểu cách các lỗi xảy ra.
  5. Báo cáo sự cố là công cụ hữu ích khi kiểm tra ứng dụng của bạn. Họ có thể phát hiện sự cố và ghi chi tiết nhật ký để bạn có thể điều tra lỗi dễ dàng

Tài liệu tham khảo

https://www.guru99.com/getting-started-with-ios-testing.html


All Rights Reserved