Golden Master
The Golden Master technique is very useful when a clear input and output is easy to obtain on the system level. There are some cases where the Golden Master technique can be applied only with difficulty or where it cannot be applied at all. For all the given situations, we need to consider whether the system tests generated with the Golden Master are enough, or whether we need to add other types of tests such as unit tests, component tests, integration tests, and so on.
In the following subsections, we provide guidelines to create a Golden Master for a system.
Feasibility
- Does the system have clear inputs and outputs? Examples may include the console, filesystem, network, and so on.
- Does the system generate the same output for the same input? If not, can we use a test double to make it so? Isolate the side effects.
- Can we capture the effect of the system on our tests without changing the behavior of the system? The options are to either redirect...