Quality Assurance (QA) Testing is the process of verifying a product's functionality, validating that the product benefits the customer, and ensuring that the product is not prone to errors. In game development, QA testing focuses on verifying implementation of game features, validating that the game is fun to play, and ensuring that there are no egregious bugs or glitches. QA is handled by a team of producers, engineers, analysts, and testers to ensure quality of the title, and work in tandem with the development team.
When a tester launches into the game and manually conducts testing on the title. Test coverage of a game is accomplished through a variety of strategies.
Bugs are tracked in a project management or bug database. They include a concise title of the Bug, how it happens, and where it occurs. Repo steps are included to provide exact replication steps a developer can use to review. And lastly a statement of the expected results, intended designk, and the actual results, the bug.
Production regularly reviews new bug reports and triages them, assessing the validity of the bug as well as noting the severity of the issue and the priority to fix it. The bug report is then sent to the appropriate development team, where a developer will investigate the bug and procure a fix for the issue if it's still occurring. Once a bug is resolved, it's sent back to the testers to regress and verify that the fix was implemented. If a bug is verified to be fixed by a tester, then the bug will be closed out. However, if a bug is still occurring, then the bug report is sent back to the developers.
Sometimes, testers will be asked to participate in playtests and provide feedback to the developers about the game from a customer's point-of-view. If a tester has the aptitude for programming, they may be given the opportunity to make tools or scripts for the project. Occasionally, production will make special requests that involve gathering game footage, accumulating performance data, evaluating if sections of the game are too difficult, etc.
Compliance Testing is done to verify that a game satisfies all of the requirements or guidelines as defined by a distribution platform. Console Platforms, such as Sony’s Playstation, Microsoft’s Xbox, and Nintendo's systems, each have their own guidelines for legal, technical, and performance requirements. Distribution platforms, such as Valve's Steam Store and The Epic Games Store, have a set of guidelines as well, and are less strict than the console guidelines. Testers will perform compliance testing to ensure the game will pass a platform's compliance verification.
If necessary, the game is submitted to the platform owners for certification. A game that passes certification is allowed to be published on the platform. If a game fails certification, then subsequent development and testing is done to address any certification issues.
Compatibility Testing verifies a games performance and playability on various hardware and operating system configurations. For PC and mobile, the most common configurations are typically tested. For consoles, you test the game on all models for the console generation you are targeting. For VR, you will be testing different headset and controllers.
The Release Candidate is the label given to a game build that will be published and released to market. This label applies to the Gold Master version released on the launch date, and any subsequent versions of the game released as updates. Release Candidate testing is done to make sure a game satisfies all the platform requirements, is free of any critical bugs, implements new content and fixes, and does not introduce new bugs.
For the physical version, a copy of the build is sent to manufacturers to be printed on disks then shipped out to retail stores. For digital versions, a copy of the game is uploaded to digital distribution platforms.
With the advent of digital downloads and patching, games will often ship with major bugs that couldn’t be fixed before the game was sent off to be printed to disk. So development and testing will continue, often all the way up to the release date, so that a patch containing major fixes can be downloaded at launch. For post-launch updates, subsequent Release Candidates are tested to ensure new features and fixes are implemented without introducing new bugs to the title.