Methodology > Comprehensive Test Output
Home | Methodology | Résumé |
Make-It-Good Strategy |
Iterative Prototyping |
Greenfield TDD |
Brownfield TDD |
Comprehensive Test Output |
Requirements Citation |
Test programs are notoriously buggy because they are written in relative haste. We test our programs because we know that we will make mistakes and want to catch them as soon as possible, but our test code cannot receive that same treatment. If test programs are based on binary pass-fail gates then they very often obscure problems within the test cases themselves. For example:
Black-box and unit tests should produce text that describes inputs and calculated intermediate values. They should describe expected output values, complain when output values do not match expectations, and capture output messages produced by library code when things go wrong. Displaying intermediate values and printing floating point values at an accuracy greater than required by the pass-fail gates also helps to diagnose calculation problems without looking at the code, or can at least indicate where to look for those problems. |
Existing test programs can easily be modified to include new textual outputs. The outputs do not interfere with the pass-fail gate evaluations used by frameworks like GoogleTest. These new outputs should be used further inform test case evaluation:
|
Home | Methodology | Résumé |
Copyright © 2021-2024 Spalted Software LLC