Guru Checks Changes

A variation on GuruWritesAutomatedTest, with a different set of tradeoffs.

The usual setting is an operation with a long, complicated output. Rather than testing for correctness, the focus here is to test that behavior is preserved. When an automated scan of the current output discovers a mismatch with the standard, diffs are displayed for the Guru to examine. If the changed result is correct, the latest output is stored as the new standard.

If code changes are made in small steps, the Guru will only have a small alteration to approve at any given time, reducing the likelihood of errors [hmm, that feels true; are there any studies to back up the claim?].

In cases where the output does change from one run to the next (time stamps, unique keys, etc.), the output is run through a masking filter before the comparison.


java %1 > %1.actual
call :compare %1.expected %1.actual
goto :EOF

:compare for /F %%i in ('fc %1 %2 ^| find /c "FC: no"') do if 0==%%i start c:\visualstudio\common\tools\windiff %1 %2


EditText of this page (last edited June 25, 2002) or FindPage with title or text search