9560baf659
Including the C module after the headers required for testing meant that if headers were missing from the C module they were not caught while directly testing the C module. The missing headers were caught in general testing, but it is frustrating to get an error in a module that has already passed while testing another module or running CI. Move the C module include to the very top so missing headers cause immediate failures. |
||
---|---|---|
.. | ||
certificate | ||
code-count | ||
data | ||
docker | ||
expect | ||
lib/pgBackRestTest | ||
lint | ||
package | ||
src | ||
.gitignore | ||
container.yaml | ||
define.yaml | ||
README.md | ||
test.pl | ||
travis.pl | ||
Vagrantfile |
pgBackRest
Regression, Unit, & Integration Testing
Introduction
pgBackRest uses Docker to run tests and generate documentation. Docker's light-weight virualization provides the a good balance between proper OS emulation and performance (especially startup)
A Vagrantfile
is provided that contains the complete configuration required to run pgBackRest tests and build documentation. If Vagrant is not suitable then the Vagrantfile
still contains the configuration steps required to build a test system.
NOTE: this is not required for normal operation of pgBackRest.
Testing
The easiest way to start testing pgBackRest is with the included Vagrantfile
.
Build Vagrant and Logon:
cd test
vagrant up
vagrant ssh
The vagrant up
command may take some time as a number of Docker containers must also be built. The vagrant ssh
command automatically logs onto the VM.
Run All Tests:
/backrest/test/test.pl
Run Tests for a Specific OS:
/backrest/test/test.pl --vm=co6
Run Tests for a Specific OS and Module:
/backrest/test/test.pl --vm=co6 --module=backup
Run Tests for a Specific OS, Module, and Test:
/backrest/test/test.pl --vm=co6 --module=backup --test=full
Run Tests for a Specific OS, Module, Test, and Run:
/backrest/test/test.pl --vm=co6 --module=backup --test=full --run=1
Run Tests for a Specific OS, Module, Test, and Process Max:
/backrest/test/test.pl --vm=co6 --module=backup --test=full --process-max=4
NOTE: process-max is only applicable to the
synthetic
andfull
tests in thebackup
module.
Run Tests for a Specific OS, Module, Test, Process Max, and Database Version:
/backrest/test/test.pl --vm=co6 --module=backup --test=full --process-max=4 --pg-version=9.4
NOTE: pg-version is only applicable to the
full
test in thebackup
module.
Iterate All Possible Test Combinations:
/backrest/test/test.pl --dry-run