mirror of
https://gitlab.isc.org/isc-projects/dhcp
synced 2025-09-02 07:15:44 +00:00
[rt25901_atf] Developer's Guide updated, make clean target added.
This commit is contained in:
@@ -21,7 +21,7 @@ EXTRA_DIST = RELNOTES LICENSE \
|
||||
util/bindvar.sh \
|
||||
bind/Makefile bind/bind.tar.gz bind/version.tmp
|
||||
|
||||
SUBDIRS = bind includes tests common dst omapip client dhcpctl relay server
|
||||
SUBDIRS = bind includes tests common dst omapip client dhcpctl relay server doc
|
||||
|
||||
nobase_include_HEADERS = dhcpctl/dhcpctl.h
|
||||
|
||||
|
@@ -5,16 +5,18 @@
|
||||
|
||||
@section testsAtf ATF unit-tests
|
||||
|
||||
ATF stands for Automated Test Framework, and is the framework used for
|
||||
unit-tests in ISC DHCP and BIND9. ATF can be downloaded from
|
||||
http://code.google.com/p/kyua/wiki/ATF
|
||||
ATF stands for Automated Test Framework, and is the framework used for unit
|
||||
tests in ISC DHCP and BIND9. ATF sources can be downloaded from
|
||||
http://code.google.com/p/kyua/wiki/ATF . ATF itself 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).
|
||||
|
||||
The ATF successor, called Kyua, is being developed. As of August 2012,
|
||||
the latest available release of Kyua is 0.5. It claims to offer
|
||||
feature parity with ATF. Migration to Kyua may be planned some time in
|
||||
the future. Such upgrade should be done in coordination with BIND. The
|
||||
latest tested version of ATF that DHCP's unittests were run against is
|
||||
0.15.
|
||||
The ATF successor, called Kyua, is being developed. As of August 2012, the
|
||||
latest available release of Kyua is 0.5. It claims to offer feature parity with
|
||||
ATF. Migration to Kyua may be planned some time in the future, but DHCP uses ATF
|
||||
for now. Such an upgrade should be done in coordination with BIND. The latest
|
||||
tested version of ATF that DHCP's unittests were run against is 0.15.
|
||||
|
||||
To build the unit-tests, use the following:
|
||||
|
||||
|
@@ -15,6 +15,10 @@
|
||||
- @subpage testsAtf
|
||||
- @subpage testsAtfAdding
|
||||
- @subpage testsAtfCoding
|
||||
- @subpage qa
|
||||
- @subpage qaTests
|
||||
- @subpage cppcheck
|
||||
- @subpage doxygen
|
||||
- @subpage debug
|
||||
- @subpage omapi
|
||||
- @subpage omapiIntro
|
||||
|
84
doc/devel/qa.dox
Normal file
84
doc/devel/qa.dox
Normal file
@@ -0,0 +1,84 @@
|
||||
/**
|
||||
@page qa Quality Assurance
|
||||
|
||||
There is wide scale effort in progress to improve generic quality of the ISC
|
||||
DHCP implementation. The following section describes major aspects of
|
||||
quality assurance that is being implemented. As this is a work in progress,
|
||||
expect radical changes in that area.
|
||||
|
||||
@section qaTests ATF Unit-tests
|
||||
|
||||
See @ref tests Section for details description of ATF-based unit-tests.
|
||||
|
||||
@section cppcheck cppcheck tool
|
||||
|
||||
<a href="http://cppcheck.sourceforge.net/">cppcheck</a> is a static analysis too
|
||||
for C/C++ code. Unlike C/C++ compilers and many other analysis tools it does not
|
||||
detect syntax errors in the code. Cppcheck primarily detects the types of bugs
|
||||
that the compilers normally do not detect. To generate cppcheck report, you
|
||||
have cppcheck installed in your system. Generation is simple:
|
||||
|
||||
@verbatim
|
||||
cd doc/
|
||||
make cppcheck
|
||||
@endverbatim
|
||||
|
||||
The log files will be stored in doc/html/cppcheck.log and
|
||||
doc/html/cppcheck-error.log. While the former is useful for verifying that all
|
||||
sources were checked, the latter is much more useful. It contains list of
|
||||
problems that were detected by cppcheck. The goal is to solve all problems
|
||||
and make this an empty file.
|
||||
|
||||
In the unlikely event of cppcheck finding false positives it is possible to add
|
||||
special comments formatted to instruct cppcheck to not report what it thinks is
|
||||
an issue. make cppcheck target is configured to make cppcheck print out a
|
||||
specific issue type reported. For example to disable the following error report:
|
||||
|
||||
@verbatim
|
||||
bind/bind-9.8.1/bin/dnssec/dnssec-keygen.c:522: check_fail: Memory leak: algname (error,memleak)
|
||||
@endverbatim
|
||||
|
||||
the following line could be added before line 522 in dnssec-keygen.c:
|
||||
@verbatim
|
||||
// cppcheck-suppress memleak
|
||||
@endverbatim
|
||||
|
||||
Please consult cppcheck manual for details. It is section 6.2 "Inline
|
||||
suppressions" in cppcheck 1.54 manual. Section number may change in later
|
||||
versions.
|
||||
|
||||
@section doxygen Doxygen checks
|
||||
|
||||
ISC DHCP Developer's Guide (the documentation you are reading now) is
|
||||
generated with doxygen. Doxygen is an open source tool for generating
|
||||
source code documentation. It is available from
|
||||
<a href="http://www.doxygen.org">www.doxygen.org</a> website. Once Doxygen
|
||||
is installed, ISC DHCP documentation can be generated with:
|
||||
|
||||
@verbatim
|
||||
cd doc
|
||||
make devel
|
||||
@endverbatim
|
||||
|
||||
Note that cppcheck (see @ref cppcheck Section) reports are linked from
|
||||
Developer's Guide. It is useful to generate both.
|
||||
|
||||
@section systemTests System level tests
|
||||
|
||||
ISC is developing a comprehensive set of system level tests.
|
||||
They are described by a separate document called DHCP Test Plan.
|
||||
|
||||
@section perfdhcp Performance tests using perfdhcp
|
||||
|
||||
ISC is also developing a performance measurement tool, called
|
||||
perfdhcp. Its main purpose is to measure performance of DHCPv4 and
|
||||
DHCPv6 server. It is being developed as part of the BIND10 project.
|
||||
See tests/tools/perfdhcp directory in BIND10 source code.
|
||||
|
||||
@section tahiTests Conformance tests using TAHI
|
||||
|
||||
<a href="http://tahi.org">TAHI project</a> developed extensive suite of <a
|
||||
href="http://tahi.org/logo/dhcpv6/">DHCPv6 conformance tests</a>. ISC plans to
|
||||
deploy and run them periodically in a near future.
|
||||
|
||||
*/
|
Reference in New Issue
Block a user