Game Testing All in One (Game Development Series)
Amplifying Problems
Normally the word "amplify" makes you think of something getting bigger or louder. In this case, "amplifying" your defect will narrow it down for the developers, make it more likely the defect will be fixed right the first time, and reduce the overall time and cost spent on the problem.
If you found a way to crash the game by performing basic operations, there's not much else you need to do to draw attention to your defect to get it fixed. If the way to cause the crash is obscure, or you find it late in the project, or if it seems difficult to pinpoint and repair, your defect will likely take a back seat to other ones. In both cases, there are some specific ways that you can amplify the defects to maximize their "fixability."
Early Bird
Find defects early by testing the following items as soon as they become available. If you don't know how to get the information you need, ask the development team or build engineer if you can get some kind of report of the changes in each build.
-
New levels, characters , items, cut scenes, and so on as soon as they are introduced
-
New animations, lighting, physics, particle effects, and so on
-
New code that adds functionality or fixes defects
-
New subsystems, middleware, engines, drivers, and so on
-
New dialog, text, translations, and so on
-
New music, sound effects, voice-overs, audio accessories, and so on
Places Everyone
You may have found a defect in some deep, dark corner of the game, but that might not be the only place it shows up. If you stop looking there and hurry to log your bug and move on to the next test, you may have overlooked a more common place or scenario in the game where the same bug shows up. It would be nice if all game bugs were fixed before the product shipped, but there are reasons why that's not done. A defect that only happens in an obscure place might get left in the game that ends up on the store shelves .
Find defects in more places within the game by looking for the following:
-
All of the places in the game where the same faulty behavior can be activated
-
All of the places in the code that call the defective class, function, or subroutine
-
All of the game functions that use the same defective item, scene, and so on
-
All of the items, levels, characters, and so on that have a shared attribute with the faulty one (for example, character race, weapon type, levels with snow, and so on)
And then, use this two-step process to increase the frequency of the defect:
-
Eliminate unnecessary steps to get the defect to appear.
-
Find more frequent and/or more common scenarios that could include the remaining essential steps.