NEWS revision 1.1 1 Automated Testing Framework (atf)
2 The NetBSD Foundation, Inc.
3 ---------------------------------------------------------------------------
4
5
6 Version 0.6
7 ===========
8
9 Release date: January 18th, 2009
10 Status: Experimental
11
12 * Make atf-exec be able to kill its child process after a certain period of
13 time; this is controlled through the new -t option.
14
15 * Change atf-sh to use atf-exec's -t option to control the test case's
16 timeouts, instead of doing it internally. Same behavior as before, but
17 noticeably faster.
18
19 * atf-exec's -g option and atf-killpg are gone due to the previous change.
20
21 * Added the atf-check(1) tool, a program that executes a given command and
22 checks its exit code against a known value and allows the management of
23 stdout and stderr in multiple ways. This replaces the previous atf_check
24 function in the atf-sh library and exposes this functionality to both
25 atf-c and atf-c++.
26
27 * Added the ATF_REQUIRE family of macros to the C interface. These help
28 in checking for fatal test conditions. The old ATF_CHECK macros now
29 perform non-fatal checks only. I.e. by using ATF_CHECK, the test case
30 can now continue its execution and the failures will not be reported
31 until the end of the whole run.
32
33 * Extended the amount of ATF_CHECK_* C macros with new ones to provide more
34 features to the developer. These also have their corresponding
35 counterparts in the ATF_REQUIRE_* family. The new macros (listing the
36 suffixes only) are: _EQ (replaces _EQUAL), _EQ_MSG, _STREQ and
37 _STREQ_MSG.
38
39
40 Version 0.5
41 ===========
42
43 Release date: May 1st, 2008
44 Status: Experimental
45
46 * Clauses 3 and 4 of the BSD license used by the project were dropped.
47 All the code is now under a 2-clause BSD license compatible with the
48 GNU General Public License (GPL).
49
50 * Added a C-only binding so that binary test programs do not need to be
51 tied to C++ at all. This binding is now known as the atf-c library.
52
53 * Renamed the C++ binding to atf-c++ for consistency with the new atf-c.
54
55 * Renamed the POSIX shell binding to atf-sh for consistency with the new
56 atf-c and atf-c++.
57
58 * Added a -w flag to test programs through which it is possible to specify
59 the work directory to be used. This was possible in prior releases by
60 defining the workdir configuration variable (-v workdir=...), but was a
61 conceptually incorrect mechanism.
62
63 * Test programs now preserve the execution order of test cases when they
64 are given in the command line. Even those mentioned more than once are
65 executed multiple times to comply with the user's requests.
66
67
68 Version 0.4
69 ===========
70
71 Release date: February 4th, 2008
72 Status: Experimental
73
74 Changes:
75
76 * Added two new manual pages, atf-c++-api and atf-sh-api, describing the
77 C++ and POSIX shell interfaces used to write test programs.
78
79 * Added a pkg-config file, useful to get the flags to build against the
80 C++ library or to easily detect the presence of ATF.
81
82 * Added a way for test cases to require a specific architecture and/or
83 machine type through the new 'require.arch' and 'require.machine'
84 meta-data properties, respectively.
85
86 * Added the 'timeout' property to test cases, useful to set an upper-bound
87 limit for the test's run time and thus prevent global test program stalls
88 due to the test case's misbehavior.
89
90 * Added the atf-exec(1) internal utility, used to execute a command after
91 changing the process group it belongs to.
92
93 * Added the atf-killpg(1) internal utility, used to kill process groups.
94
95 * Multiple portability fixes. Of special interest, full support for SunOS
96 (Solaris Express Developer Edition 2007/09) using the Sun Studio 12 C++
97 compiler.
98
99 * Fixed a serious bug that prevented atf-run(1) from working at all under
100 Fedora 8 x86_64. Due to the nature of the bug, other platforms were
101 likely affected too.
102
103
104 Version 0.3
105 ===========
106
107 Release date: November 11th, 2007
108 Status: Experimental
109
110 Changes:
111
112 * Added XML output support to atf-report. This is accompanied by a DTD for
113 the format's structure and sample XSLT/CSS files to post-process this
114 output and convert it to a plain HTML report.
115
116 * Changed atf-run to add system information to the report it generates.
117 This is currently used by atf-report's XML output only, and is later
118 printed in the HTML reports in a nice and useful summary table. The user
119 and system administrator are allowed to tune this feature by means of
120 hooks.
121
122 * Removed the test cases' 'isolated' property. This was intended to avoid
123 touching the file system at all when running the related test case, but
124 this has not been true for a long while: some control files are
125 unconditionally required for several purposes, and we cannot easily get
126 rid of them. This way we remove several critical and delicate pieces of
127 code.
128
129 * Improved atf-report's CSV output format to include information about
130 test programs too.
131
132 * Fixed the tests that used atf-compile to not require this tool as a
133 helper. Avoids systems without build-time utilities to skip many tests
134 that could otherwise be run. (E.g. NetBSD without the comp.tgz set
135 installed.)
136
137 * Many general cleanups: Fixed many pieces of code marked as ugly and/or
138 incomplete.
139
140
141 Version 0.2
142 ===========
143
144 Release date: September 20th, 2007
145 Status: Experimental
146
147 Changes:
148
149 * Test cases now get a known umask on entry.
150
151 * atf-run now detects many unexpected failures caused by test programs
152 and reports them as bogus tests. atf-report is able to handle these
153 new errors and nicely reports them to the user.
154
155 * All the data formats read and written by the tools have been documented
156 and cleaned up. These include those grammars that define how the
157 different components communicate with each other as well as the format
158 of files written by the developers and users: the Atffiles and the
159 configuration files.
160
161 * Added the atf-version tool, a utility that displays information about the
162 currently installed version of ATF.
163
164 * Test cases can now define an optional cleanup routine to undo their
165 actions regardless of their exit status.
166
167 * atf-report now summarizes the list of failed (bogus) test programs when
168 using the ticker output format.
169
170 * Test programs now capture some termination signals and clean up any
171 temporary files before exiting the program.
172
173 * Multiple bug fixes and improvements all around.
174
175
176 Version 0.1
177 ===========
178
179 Release date: August 20th, 2007
180 Status: Experimental
181
182 Changes:
183
184 * First public version. This was released coinciding with the end of the
185 Google Summer of Code 2007 program.
186
187
188 ---------------------------------------------------------------------------
189 End of document
190