Regression tests
are an optional but recommended step. The regression tests help verify that
PostgreSQL will run as expected after you have compiled the source. The tests check tasks such as standard SQL operations,
as well as extended capabilities of PostgreSQL. The regression tests can point out possible (but not necessarily probable)
problems which may arise when running PostgreSQL.
If you decide you would like to run the regression tests, do so by using the following command:
gmake check
,
as shown in Example 2-8.
Example 2-8. Making regression tests
[postgres@host postgresql-7.1.3]#
gmake check
gmake -C doc all
gmake[1]: Entering directory /usr/local/src/postgresql-7.1.3/doc'
gmake[1]: Nothing to be done for all'.
gmake[1]: Leaving directory /usr/local/src/postgresql-7.1.3/doc'
[...]
The
gmake check
command will build a test installation of PostgreSQL within the source tree, and
display a list of all the checks it is running. As each test completes, the success or failure will be reported. Items
that fail the check will have a failed message printed, rather than the successful
ok message. If any checks fail,
gmake check
will display output
similar to that found in Example 2-9, though the number of tests failed may be higher on your
system than the number in the example.
Example 2-9. Regression check output
=======================
1 of 76 tests failed.
=======================
The differences that caused some tests to fail can be viewed in the
file ./regression.diffs'. A copy of the test summary that you see
above is saved in the file ./regression.out'.
The files referenced in Example 2-9 (
regression.diffs
and
regression.out
) are placed within the source tree at
src/test/regress
. If the
source tree is located in
/usr/local/src
, the full path to the directory files would be
/usr/local/src/postgresql-[version]/src/test/regress
.
The regression tests will not always pick up every possible error. This can be due to inconsistencies in
locale settings (such as time zone support), or hardware-specific issues (such as floating-point results). As with any
application, be sure to perform your own requirements testing while developing with PostgreSQL.
Warning
|
You cannot run the regression tests as the
root
user. Be sure to run
gmake check
as the
postgres
user.
|