1.\" Copyright (c) 2007 The NetBSD Foundation, Inc. 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND 14.\" CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, 15.\" INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 16.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 17.\" IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS BE LIABLE FOR ANY 18.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE 20.\" GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 21.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER 22.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 23.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 24.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25.Dd September 14, 2014 26.Dt ATF 7 27.Os 28.Sh NAME 29.Nm ATF 30.Nd introduction to the Automated Testing Framework 31.Sh DESCRIPTION 32The Automated Testing Framework 33.Pf ( Nm ) 34is a 35.Em collection of libraries 36to implement test programs in a variety of languages. 37These libraries all offer similar functionality and any test program 38written with them exposes a consistent user interface. 39.Pp 40Test programs using the 41.Nm 42libraries rely on a separate runtime engine to execute them in a 43deterministic fashion. 44The runtime engine isolates the test programs from the rest of the system 45and ensures some common side-effects are cleaned up. 46The runtime engine is also responsible for gathering the results of all 47tests and composing reports. 48The current runtime of choice is Kyua, described in 49.Xr kyua 1 . 50.Pp 51If your operating systems distributes 52.Nm , 53it should also provide an introductory 54.Xr tests 7 55manual page. 56You are encouraged to read it now. 57.Pp 58The rest of this manual page serves as a cross-reference to all the other 59documentation shipped with 60.Nm . 61.Ss Language bindings 62.Bl -tag -width atfXtestXprogramXXXXX 63.It Xr atf-c 3 64C programming interface. 65.It Xr atf-c++ 3 66C++ programming interface. 67.It Xr atf-sh 3 68.Xr sh 1 69programming interface. 70.El 71.Ss Miscellaneous pages 72.Bl -tag -width atfXtestXprogramXXXXX 73.It Xr atf-test-case 4 74Generic description of test cases, independent of the language they are 75implemented in. 76.It Xr atf-test-program 1 77Common interface provided by the test programs written using the 78.Nm 79libraries. 80.El 81.Sh SEE ALSO 82.Xr kyua 1 , 83.Xr tests 7 84.Sh HISTORY 85.Nm 86started as a Google Summer of Code 2007 project mentored by The NetBSD 87Foundation. 88Its original goal was to provide a testing framework for the 89.Nx 90operating system, but it grew as an independent project because the 91framework itself did not need to be tied to a specific operating system. 92.Pp 93Originally, 94.Nm 95shipped the collection of libraries described in this manual page as well 96as a runtime engine. 97The runtime engine has since been replaced by Kyua and the old tools were 98removed in 99.Nm 0.20 , 100which shipped in early 2014. 101.Pp 102As of late 2014, both 103.Fx 104and 105.Nx 106ship 107.Nm 108in their base systems and provide extensive test suites based on it. 109.Pp 110For more details on historical changes, refer to: 111.Bd -literal -offset indent 112.Pa __DOCDIR__/NEWS 113.Ed 114.Sh AUTHORS 115For more details on the people that made 116.Nm 117possible, refer to: 118.Bd -literal -offset indent 119.Pa __DOCDIR__/AUTHORS 120.Ed 121