Test Suite

From Libreswan
Revision as of 17:47, 5 October 2021 by Andrew Cagney (talk | contribs) (add out-of-date diagram)
Jump to navigation Jump to search

Running tests

The libreswan tests, in testing/pluto, can be run using several different mechanisms:

Test Frameworks
Framework Speed Host Guest Modifies / Notes
Namespaces fast linux linux yes results are host dependent (for instance the host's kernel version)
requires all dependencies, including libreswan, to be installed on /
KVM slower generic? Fedora, OpenBSD no in theory it can be run on any system supporting libvirt/KVM (but only Linux has ever been used)
Docker linux Linux centric using host kernel.
Ideal for build tests.
Can build using various Linux Distributions : CentOS 6, 7, 8, Fedora 28 - rawhide, Debian, Ubuntu.
Also for run tests using systemd.

Test directory

testing/baseconfigs/
configuration files installed on guest machines
testing/docker/
testing/dockerfiles/
docker stuff
testing/guestbin/
shell scripts used by tests, and run on the guest
testing/libvirt/
files for building KVM guests
testing/linux-system-roles.vpn/
???
testing/packaging/
???
testing/pluto/TESTLIST
list of tests, and their expected outcome
testing/pluto/*/
individual test directories
testing/programs/
executables used by tests, and run on the guest
testing/sanitizers/
filters for cleaning up the test output
testing/utils/
test drivers and other host tools
testing/web/
publishing test results on the web
testing/x509/
certificates, scripts are run on a guest

Network Diagram (out-of-date)

Testnet.png

Travis continuous integration

Coverity static analysis - manually updated