ATF —
introduction to the Automated Testing
Framework
The Automated Testing Framework (
ATF) is a
collection of libraries to implement test
programs in a variety of languages. These libraries all offer similar
functionality and any test program written with them exposes a consistent user
interface.
Test programs using the
ATF libraries rely on a
separate runtime engine to execute them in a deterministic fashion. The
runtime engine isolates the test programs from the rest of the system and
ensures some common side-effects are cleaned up. The runtime engine is also
responsible for gathering the results of all tests and composing reports. The
current runtime of choice is Kyua, described in
kyua(1).
If your operating systems distributes
ATF, it
should also provide an introductory
tests(7)
manual page. You are encouraged to read it now.
The rest of this manual page serves as a cross-reference to all the other
documentation shipped with
ATF.
- atf-c(3)
- C programming interface.
- atf-c++(3)
- C++ programming interface.
- atf-sh(3)
-
sh(1) programming
interface.
- atf-test-case(4)
- Generic description of test cases, independent of the
language they are implemented in.
- atf-test-program(1)
- Common interface provided by the test programs written
using the ATF libraries.
kyua(1),
tests(7)
ATF started as a Google Summer of Code 2007 project
mentored by The NetBSD Foundation. Its original goal was to provide a testing
framework for the
NetBSD operating system, but it grew
as an independent project because the framework itself did not need to be tied
to a specific operating system.
Originally,
ATF shipped the collection of libraries
described in this manual page as well as a runtime engine. The runtime engine
has since been replaced by Kyua and the old tools were removed in
0.20, which shipped in early 2014.
As of late 2014, both
FreeBSD and
NetBSD ship
ATF in their
base systems and provide extensive test suites based on it.
For more details on historical changes, refer to:
For more details on the people that made
ATF
possible, refer to:
/usr/share/doc/atf/AUTHORS