Approving Results

Approved File

Chain of responsibility (pattern)

Code Coverage

Combination Testing

Sometimes referred to as Combinatorial testing.

See Testing Combinations.


See Custom Comparators.

Continuous Integration

Convention over Configuration

Wikipedia Entry

Instead of asking the user to specify everything, we make assumptions based on common patterns, so code usually just works “out of the box”. This tends to dramatically reduce the amount of clutter, makes things easier, and reduces the amount of surprises.

Custom Asserts

Diff Tool

Disposable Objects

Objects that implement the RAII pattern.

See Disposable Objects.

Edge Case

Happy Path



Mutation Testing


Principle of Least Surprise

RAII (Resource acquisition is initialization)

This is a pattern where your object constructor opens a resource, such as memory, and your object destructor closes the resource.

This is also known as “Scope based resource management”.

Wikipedia Entry

Received File


See Reporters.

See Using sub-directories for approved files

See Features - whose sections need to be moved around


See Scrubbers.


See String conversions.

System Under Test

The area of the production code that you are testing. See System Under Test.

Test Framework

test && commit || revert (TCR)


Yak Shaving


  • The tests test the code, and the code tests the tests

  • Test until bored