Questions involving Characterization Testing/Golden Master Testing.

Characterization Testing (aka Golden Master Testing) is a means to characterize the behavior of the test object to protect it against unintended changes, regardless of its correctness. In order to do so, the results of a previous (typically stable) version—the golden master—serve as the oracle for the tests (also known as consistency oracle since it compares the consistency between two versions).

The term was coined by Michael Feathers. He suggests to use the paradigm for changing legacy code, which is, according to Feathers, simply code without tests. Moreover, he points out that in "[…] nearly every legacy system, what the system does is more important than what it is supposed to do." Characterization Testing helps to preserve this behavior.

history | excerpt history