strongSwan UML - Running the tests
Contents
1. Starting up the UML testing environment
When the strongSwan UML testing environment has been put into place by running the make-testing script then you are ready to start up the UML instances by callingThis main script first calls the subscript./start-testing <hosts>
that starts the three UML switches umlswitch0, umlswitch1, and umlswitch2 which are connecting the UML instances among each other and also make them accessible from the host system via tun/tapdevices.scripts/start-switches
Then depending on the setting of the UMLSTARTMODE variable defined in testing.conf, the UML instances given on the command line are started up with different terminals:
If you are running the KDE graphical environment then by setting
the scriptUMLSTARTMODE=konsole
is called which starts up each of the UML instances defined by <hosts> in a KDE konsole. Ifscripts/kstart-umls <hosts>
is set thenUMLSTARTMODE=xterm
starts up the UML instances in an xterm each. And with the choicescripts/xstart-umls <hosts>
the instances are started up byUMLSTARTMODE=screen
in the background but the Linux command screen -r <host>" can be used to connect a terminal to the UML instance <host> if desired.scripts/start-umls <hosts>
either executes all the tests defined in the testing/tests directory if the variable SELECTEDTESTSONLY in testing.conf is set to "no" or the selected tests defined by the string in SELELECTEDTESTS if SELECTEDTESTSONLY is set to "yes".if [ $ENABLE_DO_TESTS = "yes" ]
then
do-tests
fi
stops the both the UML switches and the UML instances designated by the <hosts> argument.if [ $ENABLE_STOP_TESTING = "yes" ]
then
stop-testing <hosts>
fi
2. Running the automated tests
The scriptruns the automated tests. With an empty <testnames> argument the tests as defined in testing.conf are executed, otherwise the tests enumerated by the <testnames> argument will be run as shown in the example below../do-tests <testnames>
Each test is divided into the following phases:./do-tests net2net-psk net2net-cert
- scripts/load-testconfig <testname> loads the UML hosts with test specific settings if such are 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.
- scripts/restore-defaults <testname> restores the default settings on the UML hosts.
the same results are also automatically transferred to the Apache server running on UML instance winnetou and can be accessed via the URL~/strongswan-testing/testresults
http://192.168.0.150/testresults/
3. Manual testing
The greates flexibility can be achieved with manual testing. Just setin testing.conf and start the UML instances that you want to experiment with by callingENABLE_DO_TESTS="no"
ENABLE_STOP_TESTING="no"
If you want to preload a test scenario with configurations differing from the default values, e.g. when using Preshared Keys then you can do this with the command./start-testing <hosts>
You can then log onto any UML instance using its konsole, xterm or screen terminal as root with the default passwordscripts/load-testconfig net2net-psk
You can then execute any commands the UML instances, including changing and recompiling the strongSwan source code located in the /root directory. After you have finished testing, the default configuration settings can restored with the commandtuxmux
scripts/restore-defaults net2net-psk
2011-04-11 info@strongswan.org