Game testing
From Wikipedia, the free encyclopedia
Game testing refers to a form of quality control for interactive entertainment software, that is, computer and video games. The formal process, done by professional game testers and sometimes focus groups, begins well into game development, though informal testing (such as done by artists and programmers) takes place throughout the development process.
Contents |
[edit] Types of testing
[edit] Black box testing
Black box testing involves testing of the game in isolation from its development. Rather than checking the game's code, sample data is passed into the program (or parts thereof) to check that the expected outputs are produced. Several specific testing techniques fall under this category, including equivalence partitioning, boundary value analysis and smoke testing.
[edit] Playtesting
Playtesting is the process by which a game played thoroughly before release, in order to test it for bugs. This process generally benefits from as much gameplay as possible during the testing period, and so is often performed by large teams of beta testers or in public beta programs.
[edit] White box testing
White box testing, like black box testing, is used to test that individual parts of a program produce the expected outputs for given input data. However, it differs from the other technique in that the tester is aware of the code used in the software, and so can make judgements on the specific causes of bugs without the aid of another developer. This type of testing is done etensively by programmers during game development.
[edit] Methodology
There is no "gold standard" method for game testing, and most methodologies are developed in-house, by individual video game developers and publishers. And, methodologies are refined from time to time and may differ for different types of games (for example, the methodology to test a MMORPG will be different from the testing for a casual game). But outlined below is a typical methodology of game testing.
- Identification
- Finding a bug and actually recognizing it is a defect (as opposed to a feature).
- Defect typing
- Assigning a specific type to the bug. For example, missing art, game crash, misspelled text, etc.
- Analysis
- This step of the process involves the party responsible for the bug, such as an artist, programmer or game designer. Often tools are used in helping tracking down the flaw.
- Debugging tools
- The type of debugging tool used depends on the type of defect. Many defects don't require any specialized tools at all, and just require the user to play the game and look for the reported flaw. Some flaws, however, such as those located in the actual code, require the use of specialized tools, such as an IDE, which help find erroneous sections of code. Art errors, for example, may require use of a 3D modeler, Photoshop or an in-house tool.
- Recording tools
- A testing department may use any variety of tools to record discovered defects. Most will employ a database which can be queried, which helps in locating identical bugs and tracking the correction of bugs. There are many software packages that are developed just for this type of work. However, a specialized package is not always necessary, depending on the scale of the game.
- Reporting
- Reporting a bug to the responsible party may be done in person or automatically with tools (mentioned above, software for recording bugs). Sometimes, individual game testers do not report bugs themselves, but hand them off to a lead tester who then determines and informs the responsible parties.
- Tracking
- After a bug is reported, it is tracked, either through an automated system (software) or by a person assigned to the task (such as the reporting tester or the test lead).
- Defect tracking systems
- Verification
- After a defect has been reported as corrected, it must be checked. Often, the original reporter of the defect verifies the fix, but, if it is sufficiently documented, it can be verified by another party.
- Regression testing
-
- As game development progresses, it is necessary to go back and re-check features, art and text (content) that previously was error-free to ensure they still are. Though tedious, this type of testing is extremely importatnt since late and supposedly benign changes to code and other content can have produce disastrous side effects that may make some features inoperable or can destroy the game as a whole.
[edit] Test group organization
The organization of any test group differs from organization to organization, but a typical one may include the individuals below.
- Game producer: responsible for the game as a whole
- Test Manager: responsible for all testing for game, and game testers
- Test Lead: responsible for all testing, sometimes identical to Test Manager
- Test Engineers: often called game testers, the people who carry out the testing
- Test Analyst: analyzes and develops test plans
[edit] See also
[edit] External links
- Sloperama: "Working as a Tester" from game industry veteran, Tom Sloper
- IGDA's Quality Assurance Special Interest Group
|
|||||||
---|---|---|---|---|---|---|---|
Activities | Jobs | Types of video games | Companies | ||||
Game design Game development Game programming Game testing Level design |
Game producer Game designer Game programmer Game artist Game tester Level designer |
Arcade game Computer game Console game Handheld game |
Video game developer Video game publisher List of developers List of publishers |
||||
Lists of video games and computer games List of video game industry people |