89 lines
2.9 KiB
Plaintext
89 lines
2.9 KiB
Plaintext
|
|
------------------------------
|
|
strongSwan Integration Tests
|
|
------------------------------
|
|
|
|
|
|
Contents
|
|
--------
|
|
|
|
1. Building the testing environment
|
|
2. Starting up the testing environment
|
|
3. Running the automated tests
|
|
4. Manual testing
|
|
|
|
|
|
1. Building the testing environment
|
|
--------------------------------
|
|
|
|
The testing environment can be built with the "make-testing" script after
|
|
adjusting the variables in the testing.conf file. By default everything is
|
|
built when executing the script. Setting any of the ENABLE_BUILD_* variables
|
|
in the configuration file to "no" will not build those parts.
|
|
|
|
|
|
2. Starting up the testing environment
|
|
-----------------------------------
|
|
|
|
When the strongSwan testing environment has been put into place by running
|
|
the "make-testing" script you are ready to start up the KVM instances by
|
|
executing the "start-testing" script.
|
|
|
|
|
|
3. Running the automated tests
|
|
---------------------------
|
|
|
|
The script
|
|
|
|
./do-tests <testnames>
|
|
|
|
runs the automated tests. If the <testnames> argument is omitted all tests
|
|
are executed, otherwise only the tests listed will be run as shown in the
|
|
example below:
|
|
|
|
./do-tests ikev2/net2net-psk ikev2/net2net-cert
|
|
|
|
Each test is divided into the following phases:
|
|
|
|
* Load the test-specific guest configuration if any is provided.
|
|
|
|
* Next the "pretest.dat" script found in each test directory is executed.
|
|
Among other commands, strongSwan is started on the IPsec hosts.
|
|
|
|
* The "evaltest.dat" script evaluates if the test has been successful.
|
|
|
|
* The "posttest.dat" script terminates the test e.g. by stopping
|
|
strongSwan on the IPsec hosts. It is also responsible to cleaning up
|
|
things (e.g. firewall rules) set up in "pretest.dat".
|
|
|
|
* Restore the default configuration on every host (new files have to be
|
|
deleted manually in "posttest.dat").
|
|
|
|
The test results and configuration files for all tests are stored in a
|
|
folder labeled with the current date and time in the $TESTRESULTSDIR directory.
|
|
|
|
The same results are also automatically transferred to the Apache server
|
|
running on guest "winnetou" and can be accessed via the URL
|
|
|
|
http://192.168.0.150/testresults/
|
|
|
|
|
|
4. Manual testing
|
|
--------------
|
|
|
|
Instead of running tests automatically with "do-tests" it is possible to
|
|
preload a test scenario with the script:
|
|
|
|
scripts/load-testconfig <testname>
|
|
|
|
Individual configuration files can be changed and any command can be executed by
|
|
logging into a guest host directly (via SSH or a console window). No password
|
|
is required to login as root. The sources for every software built during
|
|
"make-testing" are mounted at /root/shared/, which allows you to change and
|
|
recompile these components.
|
|
|
|
After you have finished testing, the default configuration can be restored
|
|
with the following command (newly created files have to be deleted manually)
|
|
|
|
scripts/restore-defaults
|