Kiểm thử Game trên Mobile

1.Khái quát kiểm thử game

a. Định nghĩa:

Kiểm thử game là một phần trong việc phát triển game, là quá trình kiểm thử phần mềm dành cho việc kiểm soát chất lượng video game. Chức năng chính của kiểm thử game là tìm ra và cung cấp bằng chứng, tài liệu về các lỗi của game. Kiểm thử phần mềm giải trí tương tác là một ngành kỹ thuật cao đòi hỏi sự thành thạo về máy tính, năng lực phân tích, kỹ năng đánh giá, phản biện và đức tính nhẫn nại.

2222_img1.jpg

b. Các kỹ thuật được dùng trong kiểm thử game:

Kiểm thử hộp đen và hộp trắng.

  • Kiểm thử hộp đen: tập trung chủ yếu vào các khía cạnh chức năng và khả năng chơi của game. Đối với kiểu này, người kiểm thử có thể thực hiện kiểm thử đồ họa UI, trải nghiệm của người dùng hoặc bất kỳ hình ảnh nào xuất hiện trong game. Menu, các yếu tố đồ họa, các effect đặc biệt, hình động cùng với lối chơi thực tế được thực hiện bởi kiểm thử hộp đen.

  • Kiểm thử hộp trắng: tập trung chủ yếu vào khía cạnh thuộc về hệ thống, cấu trúc game: sự cấu thành của bên thứ ba, cơ sở dữ liệu, social media, các thực thể bên ngoài, âm thanh và nhạc nền, cũng như graphic/game engine được tích hợp trong game.

2. Kiểm thử game trên mobile:

Kiểm thử game trên mobile khác với kiểm thử các ứng dụng thông thường khác. Kiểm thử game trên mobile muốn có hiệu quả thì phải bắt nguồn từ cách tiếp cận có cấu trúc, có hệ thống; sử dụng framework test tự động và tích hợp liền mạch với quy trình làm việc. 1.jpg

Các kỹ thuật sử dụng trong việc kiểm thử game trên mobile:

  • Functional testing (kiểm thử chức năng): là phương pháp rất phổ biến trong kiểm thử game trên mobile.

    Kiểm thử chức năng chính (điển hình) được liên kết với việc kiểm thử thủ công và chơi từng vòng chơi. Tuy nhiên theo mô hình Agile, kiểm thử chức năng nên được thực hiện bằng tool tự động. Việc kiểm thử chức năng với sự giúp đỡ của các framework test tự động yêu cầu những hiểu biết cơ bản về lập trình và thiết lập môi trường. Các tool tự động có thể phát hiện ra những vấn đề liên quan tới UI, tính ổn định, game flow và đồ họa tích hợp

  • Compability testing (kiểm thử tính tương thích): là kiểm tra xem liệu game có thích hợp với mọi loại thiết bị hay không.

    Một quan niệm sai lầm phổ biến về kiểm thử tính tương thích là nó chỉ có thể được hoàn thành ở bản cuối cùng của game. Nếu như kiểm thử tính tương thích được thực hiện nghiêm chỉnh trong suốt quá trình phát triển sản phẩm, giống như là smoke testing, thì nó sẽ giúp phát hiện ra những vấn đề liên quan đến sự không tương thích ở bất kỳ phần nào của game; điều này vô cùng quan trọng để cho game chạy tốt trên các thiết bị khác nhau, cả phần cứng và phần mềm.

  • Performance testing (kiểm thử hiệu năng): rất quan trọng trong kiểm thử game. Game chạy chậm có thể khiến cho game không thể thành công, nhận rating thấp và không tạo được thương hiệu cho người sáng lập. Việc thực hiện kiểm thử hiệu năng giúp cho người kiểm thử hiểu được sự quan trọng của việc sử dụng những thiết bị khác nhau với hệ điều hành khác nhau và yêu cầu của game đối với người chơi. Nhiều game được phát triển mặc định dành cho các thiết bị high-end mà không có cơ hội nào để thử một mức phù hợp hơn trên thiết bị low-end.

  • Localization testing (kiểm thử định vị): vô cùng quan trọng nếu như game nhắm tới thị trường toàn cầu. Toàn cầu tức là game dành cho mọi đối tượng người dùng. Khi tiêu đề, các dòng chữ hay nội dung của game cần được dịch và kiểm thử trên các thiết bị với những ngôn ngữ khác nhau, kiểu kiểm thử này có thể thực hiện một cách dễ dàng và tự động để thay đổi ngôn ngữ trên các thiết bị. Vấn đề về layout sẽ được phát hiện dễ dàng thông qua ảnh chụp màn hình.

  • Regression testing (kiểm thử hồi quy): cần thực hiện khi có bất cứ thay đổi nào trong game. Ngày nay, hầu hết các mobile game đều có sự tương tác server-client, yêu cầu login, upload dữ liệu (như kết quả) và download dữ liệu (như hình ảnh, thông tin). Khi phát triển những dịch vụ như thế này kèm theo game, user cần được bảo đảm tất cả những thay đổi của họ đều được thực hiện và hoàn thành trong code, cả ở server và phía client mà không phá vỡ chức năng của dịch vụ.

    Kiểm thử tự động là lựa chọn duy nhất trong trường hợp này, test thủ công không thể làm được.

  • Load testing (kiểm thử khi load): kiểm thử giới hạn của hệ thống, như số lượng người chơi tối đa trên server, nội dung đồ họa trên màn hình (số frame trên giây), hoặc sự tiêu tốn bộ nhớ…

    Kiểm thử khi load có thể được xây dựng một cách liền mạch trong phạm vi kiểm thử tự động và load những dữ liệu nặng, tính năng và sự tương tác có thể được mô phỏng bằng test script và những nội dung thực tế từ back-end server.

3. Sự khác nhau giữa kiểm thử game trên mobile và trên PC. website_top_billede.png

Kể cả khi chơi cùng một game trên mobile và PC thì chúng thường chỉ giống nhau về giao diện cơ bản (hình ảnh đại diện, màu sắc), luật chơi, còn lại sẽ được thay đổi để phù hợp với từng loại thiết bị. Tuy nhiên, sự khác biệt lớn nhất của việc chơi game trên mobile (đặc biệt là smartphone) và trên PC là trải nghiệm của người dùng về việc điều khiển game.

Khi chơi game trên máy tính hoặc feature phone, người dùng sẽ theo dõi nhân vật (hoặc đối tượng) của game bằng mắt, điều khiển bằng một số phím trên bàn phím; còn trên smartphone, người dùng sẽ trực tiếp tap/touch vào màn hình để điều khiển. Trải nghiệm cảm ứng phong phú và rất đa dạng khi người dùng có thể dùng 1 ngón tay hoặc cũng có thể dùng cả 10 ngón tay cùng lúc, hay có thể dùng bút (ví dụ đối với Samsung Galaxy Note)…

Dưới đây là những điểm cần chú ý đối với việc kiểm thử game trên mobile: error-guessing.jpg

  • Hệ điều hành, kích thước màn hình và các thông số nói chung của điện thoại có phù hợp với game hay không, có hỗ trợ game hay không. Trên các điện thoại khác hãng, dòng loại thì hình ảnh game có tương ứng với độ phân giải màn hình đang sử dụng không.

  • Chơi game có tiêu tốn nhiều dung lượng không, có thể vừa chơi game vừa nghe nhạc hoặc chạy ứng dụng khác mà không làm giảm tốc độ không, có tốn pin không…Khi pin yếu thì có thông báo như thế nào, có thay đổi như thế nào về độ sáng màn hình, về chế độ sử dụng pin, có phải ngừng chơi game một cách bắt buộc hay không.

    Hiện tại, các game dành cho smartphone với giao diện đẹp, nhiều màu sắc, nhiều hiệu ứng…đều khá tốn pin.Những game đang ăn khách hiện nay như Candy crush saga, Angry birds, Fruit Ninja…đều được xếp vào danh sách những trò chơi không nên download về máy nếu muốn tiết kiệm pin.

    Nếu là Candy crush thì người chơi có thể vừa chơi vừa nghe nhạc, tuy nhiên sẽ hết pin rất nhanh và làm máy điện thoại nóng lên đáng kể. Thông báo hết pin tùy thuộc từng dòng, từng hãng máy, ví dụ đối với Samsung Galaxy Note 3 thì có warning hiện đè lên trò chơi để báo pin yếu (15%) và tự động giảm độ sáng màn hình tới mức tối thiểu (5%). Khi pin yếu người chơi vẫn có thể chơi tiếp đến khi hết hẳn pin mà không bị dừng bắt buộc.

  • Đang chơi game mà có tin nhắn hoặc cuộc gọi đến thì sao, có nhắc nhở task hoặc báo thức thì sao; sau khi xử lý xong thì có chơi game tiếp được không hay phải chơi lại từ đầu. Đang nghe nhạc mà mở game thì nhạc có bị tắt tự động không.

    Khi đang chơi Candy crush mà có cuộc gọi đến thì game sẽ bị mất (đặc biệt, nếu vừa mới thoát được bàn đang chơi và chưa được lên bàn tiếp theo mà có cuộc gọi đến thì vẫn bị tính là chưa thoát), có tin nhắn đến thì vẫn có thể chơi tiếp. Đang nghe nhạc mà mở game thì vẫn có nhạc.

  • Mở game lên mà không chơi thì màn hình có bị lock tự động không.

  • Về giao diện, về menu, về chức năng…có khác gìvới bản trên PC không.

  • Về âm thanh, nhạc nền, hiệu ứng khi tap vào các button, khi chuyển trang, khi thắng/thua, tạm ngừng chơi…

  • Số lượng “mạng”, khi thắng có tăng không, khi thua có giảm không. Số mạng tối đa có thể có, bao giờ có thể hồi phục được hết số mạng, hoặc làm cách nào để hồi phục được mạng.

  • Điểm thưởng, phần thưởng, quà tặng, free spin…khi thắng.

  • Có thể xem hướng dẫn chơi trong phần Help hoặc tương tự, dựa vào đó để test xem game đã chạy đúng với requirement hay chưa.

4. Kết luận:

Có thể nói test là một công việc rất quan trọng đối với bất kỳ một game nào, dù lớn hay nhỏ, dù online hay offline, dù là một game đơn giản hay phức tap… một khi bạn đã tạo ra nó nhiệm vụ của bạn là phải test nó bằng tất cả những khả năng của mình.

Ngoài những điều quan trọng tôi đã trình bày ở trên chắc chắn các bạn cũng tự trang bị cho mình những công đoạn khi test game của mình rồi đúng không, bạn cũng đừng quên test game theo yêu cầu của các store mà bạn dự định sẽ submit game của bạn lên đó. Tốt nhất những gì bạn đưa vào game của bạn, bạn nên ghi lại tất cả và test chúng, từ những hình ảnh, âm thanh, gameplay… đến những quảng cáo, in-app purchase…v.v và thậm chí là khi bạn thực hiên một thay đổi nhỏ nào đó với các thành phần đó, bạn cũng nên test lại tất cả chúng.

Có thể có những vấn đề khác trong test game nhưng hi vọng bài viết này sẽ giúp ích được cho các bạn phần nào. Chúc các bạn thành công với những dự án của mình. Thanks.jpg