Game Development Reference
Each element in the test design represents one of the Defect Triggers. Using one or
more test design technique will not by itself guarantee that all of the Defect Triggers
will be sufficiently represented in your tests. It takes an explicit effort to identify
appropriate triggers and incorporate them into whatever type of test designs you produce.
All of the Defect Triggers should be included either in a single test design or a set of
test designs related to a specific game feature, function, or capability. If you have data
from previous projects, see which triggers have been effective at finding defects and
include those in your designs as well as any others you can think of.
The effectiveness of each trigger can be measured in terms of defects per test. You can
also think of this as the sensitivity of the game code to each trigger. A large defects/test
number relative to other triggers tells you how to find bugs economically and may also
hint at an underlying flaw in the game platform design or implementation. If you only
have time or resources to run a given number of tests, running the tests for the most
effective triggers will yield more defects than the trigger that produces the fewest
defects per test (usually the Normal trigger). As you continue to create and run more
tests for the most effective triggers, you will saturate them and no longer be able to
find new bugs. Repeat this process to establish saturation for all of the triggers.
Combinatorial Design Trigger Examples
Let's go back to the HALO Advanced Controls combinatorial design, shown in
Chapter 10 in Figure 10.26, to see if any triggers need to be added. Look Sensitivity is
tested for its default, minimum, and maximum values. The minimum and maximum
values could be considered Stress values since the game is supposed to respond
(“process�?) as slowly or as quickly as it can to the movement of the joystick. The
remaining parameters have values that determine whether a capability is either on or
off. None of these address a particular configuration or a situation that would apply
to Startup, Restart, Exception, or Stress conditions. As a result, the majority of test values
represent Normal behavior. For this test to be more effective, incorporate the missing
triggers as well as any other possible Stress values.
Start by identifying Configuration resources related to the Advanced Controls options.
All of these parameters affect the use of the game controller. There are different types
of game controllers, such as those with or without vibration and those that are wire-
less or wired. The controller can be inserted into any of the slots provided on the game
console. It is also possible to remove the controller during the process of selecting the
options, and subsequently re-insert it in the same position or a different one. These
possibilities create new parameters and values to add to the combinatorial table.