diff options
| author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2015-03-02 19:04:49 +0000 |
|---|---|---|
| committer | <> | 2015-05-08 15:30:59 +0000 |
| commit | f800382616186a5d30e28d8b2c51e97a9a8360f2 (patch) | |
| tree | 0d5270190548a37223d14b54383ce8a3d3af5302 /tests/HOWTO-unit-test | |
| download | isc-dhcp-tarball-master.tar.gz | |
Imported from /home/lorry/working-area/delta_isc-dhcp-tarball/dhcp-4.2.8.tar.gz.HEADdhcp-4.2.8master
Diffstat (limited to 'tests/HOWTO-unit-test')
| -rw-r--r-- | tests/HOWTO-unit-test | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/tests/HOWTO-unit-test b/tests/HOWTO-unit-test new file mode 100644 index 0000000..e00b7d5 --- /dev/null +++ b/tests/HOWTO-unit-test @@ -0,0 +1,89 @@ +Introduction +------------ + +That is only a brief overview of tests in ISC DHCP. For more thorough +description, see ISC DHCP Developer's Guide. You can generate it, by +having Doxygen installed and doing: + + cd doc + make devel + +and then opening doc/html/index.html + +Tests Overview +-------------- + +In DHCP, a unit test exercises a particular piece of code in +isolation. There is a separate unit test per module or API. Each unit +test lives in a directory beneath the code it is designed to exercise. +So, we (will eventually) have: + + server/tests/ + client/tests/ + common/tests/ + dhcpctl/tests/ + +And so on. + +We are using ATF (Automated Test Framework) as a framework to run our +unit tests. See ISC DHCP Developer's Guide for much more thorough +description of unit-test and ATF framework in general. + +Installing ATF +-------------- +ATF sources can be downloaded from https://github.com/jmmv/kyua. ATF +must be configured, compiled and then installed to be available during +the DHCP configure procedure. Please follow INSTALL file supplied with +ATF sources (it's essentially the typical ./configure && make && +make install procedure). + +Beginning with ATF version 0.16, it is necessary to include the following +options --enable-tools and --disable-shared when configuring ATF: + + configure --prefix=<prefix> --enable-tools --disable-shared + +ISC DHCP unittests will run with ATF releases upto 0.19. Beginning with +ATF 0.20, the tools, atf-run and atf-report required by ISC DHCP, were +deprecated and are no longer included with ATF. + +Running Unit Tests +------------------ + +In order to run the unit tests for DHCP, enable ATF support during configure: + +$ ./configure --with-atf{=<atf-path>} + + where <atf-path> is the path into which ATF was installed. This would + be same value used for --prefix when ATF was configured (default is + /usr/local). + +And then build ISC_DHCP with: + +$ make + +Finally build and run unit tests with: + +$ make check + +This will traverse the source tree running the unit tests in each unit test +subdirectory. Note that if one or more tests in a unit test subdirectory fail +the make process will stop. To run all of the tests regardless of outcome, +use: + +$ make -k check + +You can run a single test by going to the appropriate test directory +and invoking the test directly: + +$ cd server/tests +$ make check + +Adding a New Unit Test +---------------------- + +See ISC DHCP Developer's Guide. + +Adding a New Unit Test Program +------------------------------ + +See ISC DHCP Developer's Guide. |
