12/08/2018, 17:22

Giới thiệu về Kiểm tra ứng dụng trên điện thoại di động

Ngày nay, các ứng dụng di động đã chiếm lĩnh thị trường và chắc hẳn mọi người muốn thiết bị cầm tay của họ thực hiện tất cả mọi thứ một cách nhanh chóng. Do đó các giải pháp di động mà chúng ta cung cấp cho khách hàng nên được kiểm tra tốt. Hướng dẫn này dành cho những người đã tham gia thử ...

Ngày nay, các ứng dụng di động đã chiếm lĩnh thị trường và chắc hẳn mọi người muốn thiết bị cầm tay của họ thực hiện tất cả mọi thứ một cách nhanh chóng.

Do đó các giải pháp di động mà chúng ta cung cấp cho khách hàng nên được kiểm tra tốt. Hướng dẫn này dành cho những người đã tham gia thử nghiệm di động hoặc những người đã chuyển sang sử dụng nó trong thời gian gần đây. Sau đây, tôi sẽ hướng dẫn về các thuật ngữ liên quan đến kiểm tra di động.

Có rất nhiều loại thử nghiệm được thực hiện trên các thiết bị di động:

1. Kiểm tra phần cứng

Thiết bị này bao gồm bộ xử lý nội bộ, phần cứng nội bộ, kích thước màn hình, độ phân giải, không gian hoặc bộ nhớ, camera, radio, Bluetooth, WIFI,... được gọi là " Mobile Testing " đơn giản.

2. Phần mềm hoặc ứng dụng thử nghiệm

Các ứng dụng hoạt động trên thiết bị di động và chức năng của chúng được kiểm tra. Nó được gọi là " Thử nghiệm ứng dụng trên điện thoại di động ". Ngay cả trong các ứng dụng dành cho thiết bị di động, có một số sự khác biệt cơ bản rất quan trọng:

a) Ứng dụng Native: Ứng dụng gốc được tạo để sử dụng trên nền tảng như điện thoại di động và máy tính bảng.

b) Ứng dụng web dành cho điện thoại di động là ứng dụng phía máy chủ để truy cập trang web trên điện thoại di động sử dụng các trình duyệt khác nhau như Chrome, Firefox bằng cách kết nối với mạng di động hoặc mạng không dây như WIFI.

c) Các ứng dụng Hybrid là sự kết hợp của ứng dụng gốc và ứng dụng web. Chúng chạy trên thiết bị hoặc không trực tuyến và được viết bằng cách sử dụng các công nghệ web như HTML5 và CSS.

Một số điểm khác biệt cơ bản

  • Các ứng dụng native có mối quan hệ giữa các nền tảng đơn lẻ trong khi các ứng dụng web trên thiết bị di động có mối quan hệ giữa nền tảng.
  • Các ứng dụng native được viết bằng các nền tảng như SDK trong khi ứng dụng trên Điện thoại di động được viết bằng các công nghệ web như HTML, CSS, Java, PHP..
  • Đối với một ứng dụng native, yêu cầu cài đặt nhưng đối với ứng dụng web di động, không yêu cầu cài đặt.
  • Có thể cập nhật ứng dụng native từ play store hoặc app store trong khi ứng dụng web dành cho thiết bị di động là các bản cập nhật tập trung.
  • Nhiều ứng dụng native không yêu cầu kết nối Internet nhưng đối với ứng dụng web di động thì bắt buộc.
  • Ứng dụng native hoạt động nhanh hơn khi so sánh với ứng dụng web dành cho thiết bị di động.
  • Các ứng dụng native được cài đặt từ các cửa hàng ứng dụng như Google play store hoặc app store nơi web di động là trang web và chỉ có thể truy cập qua Internet.

Sau đây giới thiệu về Kiểm tra ứng dụng trên điện thoại di động.

Thử nghiệm các ứng dụng trên thiết bị di động là thử thách nhiều hơn việc thử nghiệm các ứng dụng web trên máy tính để bàn, bởi vì:

  • Các loại thiết bị di động khác nhau với các kích cỡ màn hình và cấu hình phần cứng khác nhau như bàn phím cứng, bàn phím ảo (màn hình cảm ứng) và trackball, ...

  • Rất nhiều thiết bị di động như HTC, Samsung, Apple, Nokia, Nexus, Sony XZ...

  • Hệ điều hành di động khác nhau như Android, Symbian, Windows, Blackberry và IOS.

  • Các phiên bản khác nhau của hệ điều hành như iOS 5.x, iOS 6.x, iOS 7.x, BB5.x, BB6.x , Iphone x,..

  • Các nhà khai thác mạng di động khác nhau như GSM và CDMA.

  • Cập nhật thường xuyên - (như Android-4.2, 4.3, 4.4, iOS-5.x, 6.x, 7.x) - với mỗi bản cập nhật một chu kỳ thử nghiệm mới được khuyến khích để đảm bảo rằng không có chức năng ứng dụng nào bị ảnh hưởng.

  • Thử nghiệm ứng dụng trên điện thoại di động cũng rất quan trọng, vì khách hàng rất kỳ vọng cho một sản phẩm nhất định - và một sản phẩm có lỗi không bao giờ được đánh giá cao. Nó thường dẫn đến tổn thất về tiền tệ, vấn đề pháp lý và tổn thất hình ảnh thương hiệu không thể khắc phục được.

  • Trên máy tính để bàn, ứng dụng được thử nghiệm trên một đơn vị xử lý trung tâm. Trên thiết bị di động, ứng dụng được thử nghiệm trên các thiết bị cầm tay như Samsung, Nokia, Apple và HTC.
  • Kích thước màn hình thiết bị di động nhỏ hơn máy tính để bàn.
  • Thiết bị di động có bộ nhớ ít hơn máy tính để bàn.
  • Điện thoại di động sử dụng kết nối mạng như 2G, 3G, 4G hoặc WIFI, nơi máy tính để bàn sử dụng kết nối băng rộng hoặc dial-up.
  • Công cụ tự động được sử dụng để thử nghiệm ứng dụng trên máy tính để bàn có thể không hoạt động trên các ứng dụng di động.

Để giải quyết tất cả các khía cạnh kỹ thuật nêu trên, các loại thử nghiệm sau đây được thực hiện trên các ứng dụng trên Điện thoại di động.

  • Usability testing: Thử nghiệm khả năng sử dụng - Để đảm bảo rằng ứng dụng dành cho thiết bị di động dễ sử dụng và cung cấp trải nghiệm người dùng thỏa đáng cho khách hàng.
  • Compatibility testing: Thử nghiệm tương thích - Thử nghiệm ứng dụng trong các thiết bị di động khác nhau, trình duyệt, kích cỡ màn hình và phiên bản hệ điều hành theo yêu cầu.
  • Interface testing: Kiểm tra giao diện - Kiểm tra các tùy chọn trình đơn, các nút, dấu trang, lịch sử, cài đặt, và luồng chuyển hướng của ứng dụng.
  • Services testing: Dịch vụ thử nghiệm - Thử nghiệm các dịch vụ của ứng dụng trực tuyến và ngoại tuyến.
  • Low-level resource testing: Thử nghiệm nguồn cấp thấp : Kiểm tra việc sử dụng bộ nhớ, tự động xóa các tệp tạm, các vấn đề phát triển cơ sở dữ liệu cục bộ được gọi là kiểm tra tài nguyên ở mức thấp.
  • Performance testing: Thử nghiệm hiệu suất - Kiểm tra hiệu suất của ứng dụng bằng cách thay đổi kết nối từ 2G, 3G sang WIFI, chia sẻ tài liệu, tiêu thụ pin, v.v.
  • Operational testing: Kiểm tra hoạt động - Thử nghiệm sao lưu và kế hoạch khắc phục nếu pin sụt, hoặc mất dữ liệu khi nâng cấp ứng dụng từ cửa hàng.
  • Installation tests: Thử nghiệm cài đặt - Xác nhận ứng dụng bằng cách cài đặt / gỡ cài đặt nó trên thiết bị.
  • Security Testing - Thử nghiệm một ứng dụng để xác nhận nếu hệ thống thông tin bảo vệ dữ liệu hay không.

Chiến lược Thử nghiệm phải đảm bảo rằng tất cả các nguyên tắc về chất lượng và hiệu suất đều được đáp ứng.

1) Lựa chọn thiết bị

  • Phân tích thị trường và chọn các thiết bị được sử dụng rộng rãi. Khách hàng hoặc người xây dựng ứng dụng xem xét yếu tố phổ biến của các thiết bị nhất định cũng như nhu cầu tiếp thị cho ứng dụng để quyết định loại thiết bị nào cần sử dụng để thử nghiệm.

2) Emulators

  • Việc sử dụng chúng là vô cùng hữu ích trong giai đoạn đầu của sự phát triển, vì chúng cho phép kiểm tra nhanh chóng và hiệu quả ứng dụng. Trình mô phỏng 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 thay đổi phần mềm. Nó trùng lặp các tính năng và hoạt động trên hệ thống thực.

Các loại mô phỏng di động

  • Device Emulator- được cung cấp bởi các nhà sản xuất thiết bị
  • Trình duyệt Emulator- mô phỏng môi trường trình duyệt di động.
  • Hệ điều hành Trình mô phỏng - Apple cung cấp trình giả lập cho iPhone, điện thoại Microsoft dành cho điện thoại Windows và điện thoại Google Android

Danh sách các trình giả lập điện thoại di động miễn phí và dễ sử dụng

i. Mobile Phone Emulator- Được sử dụng để thử nghiệm các thiết bị cầm tay như iPhone, Blackberry, HTC, Samsung, ...

ii. MobiReady - Với điều này, không chỉ có thể kiểm tra các ứng dụng web, cũng có thể kiểm tra mã.

iii. Responsivepx - Nó kiểm tra phản hồi của các trang web, sự xuất hiện, và chức năng của các trang web.

iv. Screenfly - Đây là một công cụ tùy biến và được sử dụng để kiểm tra các trang web thuộc các thể loại khác nhau.

3) Sau khi đã hoàn thành mức phát triển thỏa đáng cho ứng dụng dành cho thiết bị di động, có thể chuyển sang thử nghiệm trên các thiết bị vật lý để thử nghiệm dựa trên kịch bản thực tế hơn.

4) Xem xét thử nghiệm dựa trên điện toán đám mây: Điện toán đám mây về cơ bản đang chạy các thiết bị trên nhiều hệ thống hoặc mạng thông qua Internet, nơi các ứng dụng có thể được kiểm tra, cập nhật và quản lý. Đối với mục đích thử nghiệm, nó tạo ra môi trường di động dựa trên web trên trình mô phỏng để truy cập vào ứng dụng dành cho thiết bị di động.

Ưu điểm:

  • Sao lưu và khôi phục- Điện toán đám mây sẽ tự động sao lưu dữ liệu của bạn từ vị trí từ xa giúp phục hồi và khôi phục dữ liệu một cách dễ dàng. Và cũng có thể, dung lượng lưu trữ là không giới hạn.
  • Có thể truy cập các đám mây từ các thiết bị khác nhau và ở bất cứ đâu.
  • Điện toán đám mây hiệu quả về chi phí, dễ sử dụng, duy trì và cập nhật.
  • Triển khai nhanh và nhanh.
  • Giao diện web.
  • Có thể chạy cùng một kịch bản trên nhiều thiết bị song song.

Nhược điểm

  • Kiểm soát ít hơn - Kể từ khi ứng dụng chạy trên môi trường từ xa hoặc bên thứ ba, người dùng có quyền hạn kiểm soát và truy cập vào các chức năng.
  • Các vấn đề kết nối Internet - cài đặt trên Internet. Các vấn đề về mạng ảnh hưởng đến tính khả dụng và hoạt động
  • Vấn đề bảo mật và riêng tư - Điện toán đám mây là một máy tính Internet và không có gì trên Internet đang hoàn tất an toàn, do đó cơ hội về việc hacker dữ liệu nhiều hơn.

5) Tự động hóa so với kiểm tra thủ công

  • Nếu ứng dụng có chứa chức năng mới, hãy thử nghiệm theo cách thủ công.
  • Nếu ứng dụng yêu cầu thử nghiệm một hoặc hai lần, hãy thực hiện theo cách thủ công.
  • Tự động hoá các kịch bản cho các trường hợp kiểm tra hồi quy. Nếu các bài kiểm tra hồi quy được lặp lại, kiểm tra tự động là hoàn hảo cho điều đó.
  • Tự động hoá các kịch bản cho những tình huống phức tạp tốn rất nhiều thời gian nếu được thực hiện theo cách thủ công.
  • Có hai loại công cụ tự động hóa để thử nghiệm ứng dụng dành cho thiết bị di động:
  • Các công cụ kiểm tra di động dựa trên đối tượng - tự động hóa bằng các yếu tố ánh xạ trên màn hình thiết bị vào các đối tượng. Cách tiếp cận này không phụ thuộc vào kích thước màn hình và chủ yếu được sử dụng cho thiết bị Android.

Ví dụ: - Ranorex, jamo solution

  • Các công cụ kiểm tra di động dựa trên hình ảnh - tạo các tập lệnh tự động hoá dựa trên tọa độ màn hình của các phần tử. Ví dụ: - Sikuli, Egg Plant, RoutineBot

6) Cấu hình mạng cũng là phần cần thiết của thử nghiệm di động. Điều quan trọng là phải xác thực ứng dụng trên các mạng khác nhau như 2G, 3G, 4G hoặc WIFI.

Các trường hợp thử nghiệm để thử nghiệm ứng dụng dành cho thiết bị di động

Ngoài các trường hợp thử nghiệm dựa trên chức năng, thử nghiệm ứng dụng di động yêu cầu các trường hợp thử nghiệm đặc biệt bao gồm các tình huống sau.

  • Sử dụng pin - Điều quan trọng là phải theo dõi mức tiêu thụ pin trong khi chạy ứng dụng trên thiết bị di động.
  • Tốc độ ứng dụng - thời gian đáp ứng trên các thiết bị khác nhau, với các tham số bộ nhớ khác nhau, với các loại mạng khác nhau vv
  • Yêu cầu về dữ liệu - Để cài đặt cũng như xác minh xem người dùng có gói dữ liệu hạn chế có thể tải xuống không.
  • Bộ nhớ yêu cầu - một lần nữa, để tải về, cài đặt và chạy
  • Các chức năng của ứng dụng - đảm bảo ứng dụng không bị lỗi do lỗi mạng hoặc bất cứ thứ gì khác.

Cách thử nghiệm ứng dụng trên điện thoại di động trên cả nền tảng Android và iOS

Điều rất quan trọng đối với những người kiểm tra đã kiểm tra ứng dụng của họ trên iOS và Android Platform để biết sự khác biệt giữa cả hai. iOS và Android có rất nhiều sự khác biệt về giao diện, chế độ xem, tiêu chuẩn mã hoá, hiệu suất, ...

Sự khác biệt cơ bản giữa kiểm tra Android và iOS

  1. Vì có rất nhiều thiết bị Android có sẵn trên thị trường và tất cả đều có độ phân giải và kích cỡ màn hình khác nhau, do đó đây là một trong những điểm khác biệt chính.

Ví dụ : kích thước Samsung S2 quá nhỏ so với Nexus 6. Có nhiều khả năng bố cục ứng dụng và thiết kế của bạn bị méo mó trên một trong các thiết bị. Xác suất thấp trong iOS vì chỉ có các thiết bị có thể đếm được trên thị trường và trong số những điện thoại đó có độ phân giải tương tự.

Ví dụ , trước khi iPhone 6 trở lên xuất hiện tất cả các phiên bản cũ hơn chỉ có kích thước tương tự.

  1. Ví dụ để khẳng định điểm trên là trong Android người phát triển phải sử dụng các hình ảnh 1x, 2x, 3x, 4x và 5x để hỗ trợ độ phân giải hình ảnh cho tất cả các thiết bị trong khi iOS chỉ sử dụng 1x, 2x và 3x. Tuy nhiên, nó trở thành trách nhiệm của người kiểm tra để đảm bảo rằng các hình ảnh và các yếu tố giao diện người dùng khác được hiển thị chính xác trên tất cả các thiết bị.

  2. Khi chúng ta có thị trường bị ngập bởi thiết bị Android, mã phải được viết theo cách mà hiệu suất vẫn ổn định. Vì vậy, rất có thể là ứng dụng của bạn có thể hoạt động chậm trên các thiết bị đầu cuối thấp hơn.

  3. Một vấn đề khác với Android là việc nâng cấp phần mềm không khả dụng cho tất cả các thiết bị di động. Các nhà sản xuất thiết bị quyết định khi nào nâng cấp thiết bị của mình. Nó trở thành một nhiệm vụ rất khó khăn để kiểm tra tất cả mọi thứ với cả hệ điều hành mới và hệ điều hành cũ.

  • Ngoài ra, nó trở thành một nhiệm vụ rườm rà cho các nhà phát triển để sửa đổi mã của họ để hỗ trợ cả hai phiên bản.

Ví dụ : khi Android 6.0 đã xuất hiện, có một thay đổi lớn khi hệ điều hành này bắt đầu hỗ trợ cấp quyền ứng dụng. Để làm rõ hơn, người dùng cũng có thể thay đổi quyền (địa điểm, địa chỉ liên hệ) ở cấp ứng dụng.

  • Giờ đây, nhóm thử nghiệm có trách nhiệm đảm bảo hiển thị quyền truy cập vào ứng dụng trên Android 6.0 trở lên và không hiển thị màn hình quyền cho các phiên bản thấp hơn.
  1. Từ góc độ thử nghiệm, thử nghiệm sản xuất trước khi sản xuất (ví dụ phiên bản thử nghiệm) khác nhau trên cả hai nền tảng. Trong Android, nếu người dùng được thêm vào danh sách người dùng beta thì anh ta có thể xem phiên bản beta được cập nhật trên Cửa hàng Play chỉ khi anh ta đăng nhập vào cửa hàng phát với cùng một ID email được thêm vào như một người dùng beta.

Các nhân tố chính trong thử nghiệm di động

  • Xác định phạm vi thử nghiệm
  • Mọi người đều có phong cách thử nghiệm riêng. Một số người kiểm tra chỉ tập trung vào những gì họ nhìn thấy từ mắt họ và phần còn lại đều say mê mọi thứ hoạt động đằng sau của bất kỳ ứng dụng di động nào.

  • Nếu bạn là Người kiểm tra iOS / Android, bạn nhất phải làm quen với một số hạn chế phổ biến / các chức năng cơ bản của Android hoặc iOS vì nó luôn làm tăng giá trị cho phong cách thử nghiệm của chúng tôi. Tôi biết mọi thứ khó hiểu mà không trích dẫn ví dụ.

Ví dụ:

  • Không thể thay đổi quyền truy cập như máy ảnh, bộ nhớ, ... trên cấp độ ứng dụng trong các thiết bị Android có phiên bản dưới 6.0.1.
  • Đối với iOS dưới đây phiên bản 10.0, kit cuộc gọi không có ở đó. Chỉ cần ngắn gọn bạn bằng một từ đơn giản, bộ gọi được sử dụng bởi một ứng dụng gọi điện thoại và hiển thị chế độ xem toàn màn hình khi người dùng nhận được cuộc gọi từ ứng dụng gọi điện thoại như WhatsApp, Skype ... Trong khi các phiên bản iOS dưới 10,0, chúng ta sẽ thấy các cuộc gọi đó như một biểu ngữ thông báo.
  • Nhiều người trong số các bạn có thể gặp vấn đề trong Paytm nơi mà ứng dụng của bạn không chuyển hướng bạn đến trang thanh toán của ngân hàng trong trường hợp bạn muốn thêm tiền vào ví của mình. - Chúng tôi nghĩ rằng ở trên là một vấn đề với ngân hàng của chúng tôi hoặc máy chủ Paytm nhưng nó chỉ là AndroidSystemWebView của chúng tôi không được cập nhật. Ít hiểu biết về lập trình luôn hữu ích cho bạn và chia sẻ với nhóm của bạn.
  • Bất cứ khi nào ứng dụng đang mở bất kỳ trang web nào trong đó, thì phải cập nhật AndroidSystemWebView.

Hy vọng bạn sẽ có được tất cả các hướng dẫn thử nghiệm Điện thoại di động và có thể thu được kiến thức về Khái niệm Kiểm tra Điện thoại di động bây giờ.

http://www.softwaretestinghelp.com/beginners-guide-to-mobile-application-testing/

0