Trước đây, mỗi khi ra khỏi nhà bạn luôn phải kiểm tra xem bạn có mang theo chìa khóa và ví tiền của mình. Ngày nay, điều bạn cần kiểm tra ưu tiên nhất là chiếc điện thoại thông minh. Vì vậy, chiếc điện thoại thông minh đã ảnh hưởng rất nhiều đến thói quen hằng ngày của chúng ta.

5 tỷ người trên toàn thế giới hiện đang sử dụng điện thoại thông minh và điện thoại di động; chiếm 2/3 dân số toàn cầu. Chưa từng có một thiết bị nào khác trong lịch sử loài người lại trải qua sự thâm nhập vào thị trường nhanh như vậy. Toàn bộ phạm vi cuộc sống đều bị ảnh hưởng bởi thiết bị này, và các ứng dụng hiện đang được tích hợp vào xe hơi, công nghệ có thể mang đi, và đồ gia dụng.

Bởi vì sự có mặt khắp nơi của thiết bị di dộng và trên thực tế nhiều tình huống hàng ngày đều phải dựa vào trải nghiệm ứng dụng hoàn hảo, những người sử dụng thiết bị di động luôn có kỳ vọng rất cao về chất lượng kỹ thuật số. Các công ty nhận ra điều này và đang bắt đầu ưu tiên thiết bị di động trước những thứ khác.

I. Các thử thách cần phải giải quyết trong Thử nghiệm thiết bị di động

Một trong những thử thách lớn nhất mà một nhóm cần giải quyết là phân đoạn thiết bị. Hiện có hơn 25,000 thiết bị Android trên thị trường. Thêm vào đó là thị trường thiết bị IOS nhỏ hơn nhưng vẫn phức tạp và bạn cũng gặp phải một phân đoạn khó khăn. Làm phức tạp tình hình hơn nữa là độ linh động của người dùng. Điều này dẫn đến một vài biến đổi tài khoản khi sử dụng ứng dụng như khu vực, điều kiện và tuỳ chọn mạng để đặt tên cho một vài tài khoản.

Các thiết bị di động cũng chỉ là đỉnh của tảng băng trôi. Các thiết bị mang theo được, dây đeo thể dục và thiết bị IoT tiếp tục tràn ngập thị trường, thêm một nhánh kết nối di động mới. Do đó, tất cả các thiết bị này nên được xem xét khi tạo chiến lược thử nghiệm trên thiết bị di động.

II. Chiến lược thử nghiệm thiết bị di động bền vững trong 3 bước

Bước #1: Nhận diện khách hàng mục tiêu của bạn

Với dữ liệu này, một nhóm có thể chọn được loại thiết bị di động và thiết bị có thể mang theo một cách hợp lý nhất từ cơ sở dữ liệu của khách hàng và tập hợp chúng lại thành các cụm ưu tiên. Phương pháp tiếp cận này sẽ giúp giảm thiểu số lượng phủ song thử nghiệm trong suốt giai đoạn thử nghiệm và phát triển. Từ đó, một quyết định lớn là liệu bạn có thể mua tất cả những thiết bị thử nghiệm, sử dụng một phương pháp tiếp cận cộng đồng thử nghiệm beta hoặc thử một giải pháp kiểm tra đám đông.

Một nhóm phải quyết định đối với một trong những lựa chọn hoặc một hỗn hợp của chúng. Quan trọng là, thử nghiệm trên mô phỏng và giả lập là không có gì, vì vậy nên được xem như là môi trường thử nghiệm duy nhất. Thử nghiệm trong mô phỏng và giả lập là hoàn hảo trong một tình trạng phát triển sớm, nhưng tiến đến thử nghiệm ngoài thực tế và trong tình huống thông thường của ứng dụng, thử nghiệm trong thiết bị thật là cần thiết.

Bước #2: Xác định và tập hợp các yêu cầu ứng dụng

Với sự giúp đỡ của một nhà thiết kế (tập hợp một nhà thiết kế tương tác) và những người dùng thực tế, yêu cầu ứng dụng là cần thiết để xác định tình huống thử nghiệm. Dựa vào những tình huống này, nhóm phát triển thiết bị di động có thể quyết định những thiết bị nào sẽ được sử dụng, dữ liệu thử nghiệm nào là cần thiết để mô phỏng hành vi người dùng, cũng như là ứng dụng sẽ được thử nghiệm trong môi trường nào.

Một số những tình huống mẫu như sau:

  • Người dùng phải có khả năng đăng nhập vào ứng dụng
  • Người dùng phải có khả năng đăng ký
  • Người dùng phải có khả năng tìm kiếm sản phẩm
  • Người dùng phải có khả năng nhìn thấy giỏ hàng
  • Người dùng phải có các tuỳ chọn để chọn ra giữa các nhà cung cấp thanh toán khác nhau
  • Người dùng phải có khả năng đồng bộ hoá ứng dụng di động với các thiết bị có thể mang theo.

Các tình huống như vậy sẽ giúp tập trung những thành phần phản biện của ứng dụng và dành ưu tiên công việc trong suốt giai đoạn phát triển.

Bước #3: Nhận diện phương pháp tiếp cận thử nghiệm thiết bị di động của bạn.

Là một quá trình tạo ra một chiến lược thử nghiệm thiết bị di động, nhưng nếu bạn có thể trả lời 4 câu hỏi dưới đây, bạn sẽ đi đúng hướng

  1. Phần nào của ứng dụng có thể được tự động hoá và trong phân nhánh nào?
  2. Những phần nào không thể tự động hoá và cần đòi hỏi thử nghiệm bằng tay?
  3. Có bất kỳ chức năng phần cứng cụ thể nào được ứng dụng sử dụng không?
  4. Các yêu cầu phi chức năng của ứng dụng là gì?

Việc tự động hoá thử nghiệm thiết bị di động đóng vai trò quan trọng trong hầu hết vòng đời phát triển phần mềm của một ứng dụng. Tuy nhiên, đó không phải là một nhiệm vụ dễ dàng và không nên đánh giá thấp. Khi nghĩ về việc tự động thử nghiệm thiết bị di động, hãy giữ kim tự tháp tự động hoá thử nghiệm trong đầu và quyết định phân nhánh tính năng nào nên được tự động.

Với tính di động của người dùng, không phải mỗi tính năng đều có thể được tự động hoá trong ứng dụng. Tuỳ thuộc vào trường hợp sử dụng ứng dụng, việc tự động hoá trong phân nhánh đầu cuối có thể không phù hợp với tất cả. Do đó, điều quan trọng là nhận dạng các tính năng khó khăn và không phù hợp để tự động hoá. Những tính năng này có thể được thử nghiệm bằng tay trước mỗi bảng phát hành.

Trong khi tiến hành thử nghiệm thiết bị di động bằng tay, điều quan trong là thử nghiệp ứng dụng trong môi trường mà khách hàng sẽ sử dụng nó. Những môi trường thử nghiệm phù hợp có thể là giao tiếp hằng ngày trên xe lửa, một chuyến đi trong rừng hoặc khi tham gia vào một giải đấu thể thao. Như đã đề cập trước đó, thử nghiệm đám đông hoặc beta có thể giúp ích trong giai đoạn này.

Nếu ứng dụng sử dụng chức năng phần cứng cụ thể như là máy ảnh hoặc các bộ cảm biến khác, những chức năng này phải là một phần của chiến lược thử nghiệm và có thể được ưu tiên dựa vào tình huống của người dùng. Khi thử nghiệm đối với những chức năng phần cứng cụ thể, điều quan trọng là kiểm tra trong một phạm vi rộng hơn các thiết bị thử nghiệm để bao phủ những thành phần phần cứng khác nhau.

Cuối cùng nhưng không kém phần quan trọng, nhóm phát triển thiết bị di động phải biết các yêu cầu phi chức năng của ứng dụng.

Các yêu cầu phi chức năng có thể là:

  • Bảo mật
  • Tải & Hiệu suất
  • Khả năng sử dụng
  • Khả năng truy cập
  • Quốc tế hóa (I18N) và bản địa hóa (L10N)

Điều quan trọng là lập kế hoạch cho những yêu cầu phi chức năng trong giai đoạn thiết kế, phát triển và thử nghiệm.

Phòng bệnh hơn chữa bệnh

Khi phần mềm đã qua vòng đời phát triển phần mềm (SDLC: Software Development Life Cycle), chi phí để sửa lỗi kỹ thuật tăng lên cấp số nhân. Với sự giúp đỡ của chiến lượt thử nghiệm thiết bị di động toàn diện, các lỗi kỹ thuật có thể được nhận dạng ở giai đoạn sớm hơn trong khi vẫn giữ được quy trình tổng thể nhanh chóng, gọn gàng và hiệu quả.

Hãy ngưng thỏa hiệp với chất lượng công nghệ và dành thời gian để chọn lựa phương hướng thử nghiệm tốt hơn dành cho bạn. Các quyết định của bạn bây giờ sẽ làm tất cả sự khác biệt giảm thiểu.

Techtalk via Viblo