ATF(7)
π ATF β introduction to the Automated Testing Framework π
okay bestie, sit down, hydrate, because we're talking about ATF: the Automated Testing Framework. this is the ATF(7) page, it lives in the Miscellaneous Information Manual, and it's basically the group chat invite to the whole ATF universe. π¦
β¨ DESCRIPTION β¨
so. the Automated Testing Framework (ATF) is a whole collection of libraries that let you write test programs in a bunch of different languages. π and the way these libraries work? they all offer similar functionality, which means any test program you write with them exposes a consistent user interface. no cap. one vibe, every language. π
test programs that use the ATF libraries don't just run themselves, though β they rely on a separate runtime engine to execute them in a deterministic fashion. yes, deterministic, because chaos is not the vibe. β¨ this runtime engine:
- isolates the test programs from the rest of the system π«Ά
- makes sure some common side-effects get cleaned up π§Ή
- gathers the results of all the tests and composes reports π
the current runtime of choice is Kyua, and it's described in kyua(1). iconic behavior, honestly.
if your operating system distributes ATF, it should also hand you an introductory tests(7) manual page. and likeβ¦ you're encouraged to read it. now. right now bestie. go. πββοΈ
the rest of this manual page? it's a cross-reference to all the other documentation shipped with ATF. a whole reading list. we love a syllabus. π
π Language bindings
atf-c(3)β the C programming interface. yes, C. we're doing it. πatf-c++(3)β the C++ programming interface. the sequel. π₯atf-sh(3)β thesh(1)programming interface. shell girlies rise. π
π Miscellaneous pages
atf-test-case(4)β the generic description of test cases, independent of the language they're implemented in. language-agnostic queen. πatf-test-program(1)β the common interface that test programs written using the ATF libraries all provide. the shared fit. β¨
π SEE ALSO π
go read them. i'll wait. π
πΈ HISTORY πΈ
gather round, we're doing lore. π
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 into an independent project, because honestly? the framework itself did not need to be tied to a specific operating system. main character energy from day one. π
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. rip old tools, you served. π«‘
as of late 2014, both FreeBSD and NetBSD ship ATF in their base systems and provide extensive test suites based on it. periodt. π
for more details on historical changes, refer to:
/usr/share/doc/atf/NEWS
π AUTHORS π
for more details on the people that made ATF possible, refer to:
/usr/share/doc/atf/AUTHORS
ok that's the whole page bestie, you ate that. now go write some tests. π
this little love letter came to you from Debian, dated September 14, 2014 β and it's the ATF(7) page, forever and always. π
β¨π¦
π¦ where this page comes from
- alpine 3.22: atf-doc 0.23-r0 Β· BSD-2-Clause AND BSD-3-Clause
- alpine 3.23: atf-doc 0.23-r0 Β· BSD-2-Clause AND BSD-3-Clause
- alpine 3.24: atf-doc 0.23-r0 Β· BSD-2-Clause AND BSD-3-Clause
- debian bookworm: libatf-dev 0.21-6 Β· BSD-2-Clause
- epel 10: atf-tests 0.21-6.el10_0 Β· LicenseRef-Callaway-BSD
- epel 9: atf-tests 0.21-2.el9 Β· BSD
- fedora 43: atf-tests 0.23-2.fc43 Β· LicenseRef-Callaway-BSD
- fedora 44: atf-tests 0.23-4.fc44 Β· LicenseRef-Callaway-BSD
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- ubuntu jammy: libatf-dev 0.21-6 Β· BSD-2-Clause
- ubuntu noble: libatf-dev 0.21-6build4 Β· BSD-2-Clause
- Copyright (c) 2007 The NetBSD Foundation, Inc
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms