[ << Programming work ] | [Top][Contents] | [ Release work >> ] |
[ < Verify successful build ] | [ Up : Adding or modifying features ] | [ Post patch for comments > ] |
10.9.8 Verify regression tests
In order to avoid breaking LilyPond, it is important to verify that the regression tests succeed, and that no unwanted changes are introduced into the output. This process is described in Regtest comparison.
Typical developer’s edit/compile/test cycle
-
Initial test:
make clean ## when needed (see below) make [-jX CPU_COUNT=X] test-baseline
-
Edit/compile/test cycle:
## edit source files, then... make clean ## when needed (see below) make [-jX] ## when needed (see below) make [-jX CPU_COUNT=X] check ## retest cases differing from baseline
-
Reset:
make test-clean
If you have modified LilyPond source files that have to be compiled (such as ‘.cc’ or ‘.hh’ files in ‘flower/’ or ‘lily/’), the regression-test targets automatically rebuild LilyPond before running the tests.
If you have modified any font definitions in the ‘mf/’
directory, then you must run make clean
before
running regression tests. This works around incomplete makefile
dependencies. The subsequent regression-test target rebuilds all
of LilyPond and the fonts before running the tests.
Regression-test targets do not necessarily rebuild everything that
a simple make
builds. You may omit make
from
the debugging cycle to save time, but it is still important to run
make
before committing.
Running make check
leaves an HTML page
‘out/test-results/index.html’. This page shows all the
important differences that your change introduced, whether in the
layout, MIDI, performance or error reporting.
You only need to use make test-clean
to retest all
cases. To retest mismatching cases only, all that is needed is to
repeat make check
.
[ << Programming work ] | [Top][Contents] | [ Release work >> ] |
[ < Verify successful build ] | [ Up : Adding or modifying features ] | [ Post patch for comments > ] |