Beginner’s Guide to Game Testing
Modern games are some of the most complex software expressions in existence, so you cannot simply use existing software testing processes to test them. Game testing nowadays requires the right understanding of the gaming industry, title publishing, mass server loading, level architecture and advanced user experience. It can often entail testing rarely used in other software scenarios such as AI testing, multi-player networking, audio testing, Physics and realism, and API integration.
Game Testing Processes
The gaming industry is, so far, the most rapidly expanding software sector. As such, the sophistication and complexity of modern titles bring with them a diverse range of features (both software and hardware), UI, functionality due to interaction, server concerns with online multi-player options and security regarding accounts and payments.
Here are the most common game testing processes:
Although not exclusive to the gaming industry, alpha and beta testing are being associated with this market sector often due to common exposure. Alpha testing is a form of acceptance testing done mainly by in-house QA teams. Meanwhile, beta testing (done after an internal full-cycle alpha test) is the testing stage where the company releases the game to a few external user groups to 'real world' test as many conceivable usage scenarios as possible.
Using a combination of automated and manual testing, all current features’ functionality is tested to determine process, load durability, and user logic. From this, concerns over redundancies, UI flow, and cross-platform and browser breakdown are assessed.
Also known as confidence, sanity or build verification testing, smoke testing is a preliminary test performed to reveal simple failures touching the main functions and updates on the game. Failures shown through this testing are severe enough to reject a release and determine that a game should be subjected to further refined testing or modification.
Automation should be included where it is appropriate to do so for time and budget benefits.
Localization testing is done to make technical corrections and review translation work of game scripts (cataloged collections of all the in-game text). Localization testers native to the area where a game is marketed may be hired to ensure the accuracy and quality of the game localization.
Game Testing Phases
Below are the game testing phases, which are somewhat similar to the Software Testing Life Cycle (STLC):
Gathering of Requirements
To create an effective game testing strategy, testers should have a thorough understanding of the following aspects of the game:
- Pointing System
Preparation of Game Test Strategy
In this phase, the Test Strategy document is prepared, which must include sections like:
- Number of testing cycles
- Testing types to be conducted
- Risk-based test analysis
- Service Level Agreements (SLAs)
- Risks and mitigation
- Defect logging process
- Reporting process
Designing of Test Cases
Testers should make both positive and negative test cases. Here are some effective test case design techniques:
- Critical Path Test - a technique used to identify the critical paths in the game, which helps reveal the dependencies causing the failures
- Exception Path Testing - helps in documenting alternate paths and exception paths
- Traditional black-box testing techniques - boundary value analysis, equivalence partitioning and error guessing
Execution of Game Test Cases
- To reveal more defects, game test cases must be executed in the identified environment with different software and hardware configuration.
- To further improve the quality of the game, alpha, beta, and respective age group testing are necessary.
- Another significant aspect of game testing is content testing, which is often partially ignored in many projects. It addresses the following concerns:
- Is the content appropriate for the gamers?
- How easy is it to understand the content of the game?
Recording of Test Results
The development team should record test results as a movie or a series of screenshots so they can review the behavior effectively.
Creation of Defect Log
All the defects should be logged, prioritized, categorized and tracked effectively. Creating the defect log will help developers in their next title works.
To Do’s When Testing Games
Games need to be tested before, during and after their release in the market. Once released, gamers expect a near flawless experience, and it is game testers’ job to ensure that gamers’ expectation will be met, even surpassed.
Here are some tips on testing game titles:
Review the game rules.
Evaluate and verify the consistency of the predefined game rules. Also, check if the game win determination is aligned with the game rules.
Functionality includes game progress and outcomes, multi-player games, and handling of incomplete and restarted games. The most practical way to verify the correctness of game elements is by playing the actual game from start to finish.
Check for compliance.
Most games, especially console games, do not have a stand-alone system and need interaction with hardware devices. It calls for checking if protocol compatibility and hardware pin assignments are compatible with both software and hardware.
Make sure it is localized.
It is common for most role-playing and story-based games to have difficulty translating east to west and visa versa. The work of localization testers, most often, involves facing a spreadsheet-like interface that lists all game scripts and their corresponding translation.
Do the soaking.
Game soaking is done by exposing a game for an excessively long period of execution. The purpose of this activity is to test if the game will display unreleased segments of memory and mathematical rounding discrepancies. These errors can cause problems as they can affect game parameters involving numerical computations, such as pointing system and health value consumption.
Perform security test
Security is vital for games, especially for network capable, multi-user ones. Games that need security testing most are those with role escalation, prizes, virtual money and selling trinkets.
Game testing is not an easy job as it is impossible to fix everything. But as you do your job, you just have to bear in mind that what you are doing is for gamers’ convenience and entertainment.