Identification. Incorrect program behavior is meticulously analyzed and identified as a defect.
Reporting. The defect is further reported to the developers using a defect tracking system. The defect scenario and steps to reproduce it are included in the report with documentation such as screenshots and video recordings.
Analysis. The developer is responsible for the logged defects, i.e. the programmer or game designer excavates the malfunction. Although outside the scope of a game tester’s responsibilities, the programmer might require further information or evidence from the tester.
Verification. After defect fixing, the tester verifies and attests to the same.
Although there is no standard method for game testing. Standard best practices and methodologies are constantly refined and may differ for different types of games.
Functionality testing is commonly associated with “game testing”, as it requires playing the game in some form. However, Functionality testing is not extensive technical knowledge. Game testers often look for general defects within the game itself or its UI, such as instability, mechanical issues, and game asset integrity.
Compliance testing is the sole reason for the existence of game testing labs.
First-party licensors for console platforms have certain strict technical requirements for titles to their licensed platforms.
The formatting of standard error messages, handling of memory card data, and handling of legally trademarked and copyrighted material are the additional responsibilities of game testers. A single violation in submission for license approval can potentially get the game rejected, incurring additional costs in further testing and resubmission. The time frame delay can cause the title to lapse an important launch window, potentially costing the game owners even more money.
Compliance can additionally refer to regulatory bodies such as the ESRB and PEGI, when the game targets a particular content rating. Testers should report any objectionable content that is deemed inappropriate for the desired rating. Quite similar to licensing, games not receiving the desired ratings must be re-edited, retested, and resubmitted at a further additional cost.
Compatibility testing is normally required for PC titles, towards the end of development as compatibility depends mostly on the final build of the game. Two rounds of compatibility tests are done – early in the beta stage allowing time for issue resolution, and later in beta or during release candidate. Major functionalities of the game on various hardware configurations are meticulously tested. Compatibility testing further ensures that the game runs on all possible configurations of hardware and software. The hardware encompasses brands of different manufacturers, device versions, and additional assorted input peripherals such as gamepads and joysticks.
The testers evaluate the performance and results to match the game’s advertised minimum system requirements.
Soak testing involves leaving the game running for prolonged periods under various modes of operation, like idling, pausing, or on the title screen. This testing requires no further user interaction beyond the initial setup. Automated tools are deployed for simulating repetitive actions, such as mouse clicks. Soaking can also help detect memory leaks or rounding errors that surface manifest over a period of time only. Soak tests are usually regarded as one of the primary compliance requirements.
Beta testing is executed exclusively during the beta stage of development. Often the beta often refers to the first publicly available version of a game.
Regression testing is further performed post all bug fixes are executed by the programmers. The QA team checks in to relocate bugs via (regression) and re-run similar tests to check in for further defect leakages. That second stage is often termed “halo testing” involves testing bug peripherals for other similar bugs.
Load testing is deployed to test the limits of a system, the maximum possible number of players on an MMO server, the number of sprites active on the screen, or the multiple threads running in a particular program. Load testing requires simulating heavy traffic and heavy multiplayer activities measuring the breaking point of a gaming application to enable its functionality performance correctly when under load.