ATF: Automated Testing Framework

News archive

This page contains the complete list of all news items for this project. They are all kept for historical reference.

To keep informed of new news about ATF, subscribe to the RSS feed from your preferred feed reader.


ATF 0.15 released

Posted by jmmv on Mon, 16 Jan 2012 19:30:00 GMT | Permanent link

The release 0.15 of ATF is now available for public consumption!

This new release comes with a few performance improvements, some bug fixes, new M4 macros for easier integration of ATF into other projects and new features in atf-run. Remember that atf-run and atf-report are maintenance mode in favor of Kyua.

Check out the 0.15 release page for the download links and a list of the major changes that went into this release.


ATF 0.14 released

Posted by jmmv on Tue, 14 Jun 2011 14:30:00 GMT | Permanent link

The release 0.14 of ATF is now available for public consumption!

This new release comes with some feature additions, particularly in atf-sh, and improves the test case isolation in a couple of areas. Remember that atf-run and atf-report are now in maintenance mode in favor of Kyua.

Check out the 0.14 release page for the download links and a list of the major changes that went into this release.


ATF 0.13 released

Posted by jmmv on Wed, 31 Mar 2011 17:15:00 GMT | Permanent link

The release 0.13 of ATF is now available for public consumption!

This new release comes with important bug fixes, a few feature additions for atf-c++ and atf-run and officially declares atf-run and atf-report as being in maintenance mode in favor of Kyua.

Check out the 0.13 release page for the download links and a list of the major changes that went into this release.


Bug tracker decommissioned

Posted by jmmv on Tue, 30 Nov 2010 17:30:00 GMT | Permanent link

Maintaining a custom Trac instance has proven to be more a hassle than else: the machine it was running on was very slow, there have been constant problems with spam, I can't promise the availability of the installation for much longer and I'm trying to get more time for coding the new codebase.

Therefore, the ad-hoc bug tracker is gone for good. In its place, bugs will be located in the NetBSD Gnats and to-do items will be recorded in the TODO file along the source tree... just as things used to be in the past.

For details, please see the discussion on the mailing list.


Introducing Kyua (think of it as ATF 2.0)

Posted by jmmv on Sat, 13 Nov 2010 11:50:00 GMT | Permanent link

Kyua is a project that aims to reimplement ATF in a progressive manner. The rewrite will focus first on the most pain points (aka atf-run) and will continue with the bindings. Compatibility will be maintained along the way to make the transition painless.

Another, very important point of Kyua is to make the project more accessible to users and developers by dropping niche development tools and using widespread project hosting (Google Code) and tools (Subversion).

For details, please see the announcement to the mailing list.


ATF 0.12 released

Posted by jmmv on Wed, 07 Nov 2010 13:30:00 GMT | Permanent link

The release 0.12 of ATF is now available for public consumption!

This new release comes with several little improvements on the atf-c++ and atf-c interfaces, eases the execution of unprivileged tests when running as root and deprecates the use.fs property.

Check out the 0.12 release page for the download links and a list of the major changes that went into this release.


ATF 0.11 released

Posted by jmmv on Wed, 20 Oct 2010 09:00:00 GMT | Permanent link

After a long quiet period, the release 0.11 of ATF is now available for public consumption!

This new release comes with more internal reorganizations of the code to remove private implementation details from the public API and provides some polishments to the tools and libraries. I expect that future releases will avoid such big rototills as the ones that were part of this and previous releases, which will simplify the release process quite a bit.

Check out the 0.11 release page for the download links and a list of the major changes that went into this release.


ATF 0.10 released

Posted by jmmv on Thu, 02 Jul 2010 16:07:00 GMT | Permanent link

It is my pleasure to announce that the 0.10 release of ATF is now available!

This new version comes with several new features and lots of code simplifications to make the distribution more lightweight and easier to manage. Of special interest is the addition of expected failures, a feature required by the NetBSD test suite to get clean passes.

Check out the 0.10 release page for the download links and a list of the major changes that went into this release.


ATF 0.9 released

Posted by jmmv on Thu, 03 Jun 2010 16:35:00 GMT | Permanent link

Ladies and gentlemen, I am happy to announce the availability of the 0.9 formal release of ATF!

It has only been a month since the last release, and releasing again now feels premature given the past frequency of releases. However, I would really like to reach a point of frequent releases as that adds dynamism to the project. Also, it looks like the Trac installation and the milestone planning in it do help in getting releases out of the door in a more agile manner.

That said, the list of changes is not impressive but comes with some simplifications and isolation improvements:

The SHA1 checksum for atf-0.9.tar.gz is: 10a3dee3543ee9e8b5d2b67bcd3f4b2a8921f21f

And, as the previous news entry mentions, what has kept me busy the most during the past month has been the new web site.


Web site revamped

Posted by jmmv on Thu, 03 Jun 2010 16:35:00 GMT | Permanent link

Coinciding with the release of ATF 0.9, the project is inaugurating a completely revamped web site! The new look is intended to feel more modern, the new layout is aimed at simplifying the navigation experience and the new build files will simplify maintenance.

Along this reorganization, new contents have been added too. For example, there is now more information on how to fill/query bugs, a shiny-new FAQ and more direct access to the download of the latest release.

Bear with us if you find any breakage and do not hesitate to report it! Also, please do send us any suggestions you may have!


New atf-log mailing list

Posted by jmmv on Thu, 13 May 2010 17:20:00 GMT | Permanent link

Following the configuration of a new bug tracker for ATF, I (well, the NetBSD administrators) have set up a new mailing list called atf-log. This mailing list will receive a notification on every change to the source tree and on every change to the tickets in the bug tracker.

Disclaimer: I am not completely convinced that the email submissions are bulletproof. On the one hand, the monotone mail notification scripts are quite delicate; on the other, my setup is not completely correct so there may be false positives in some spam filters. However, as the recent activity shows, things seems to work.

Visit the mailing lists page for more details.


New bug tracker available

Posted by jmmv on Fri, 9 May 2010 19:30:00 GMT | Permanent link

After a full day of work, I have been able to set up an experimental Trac server to provide a decent bug/task tracking system for ATF.

Why Trac? Well, first because I am familiar with Python and thus I will be able to better manage it. Second because the Gnats system used by NetBSD is... suboptimal to put it mildly (I don't dare to use it for ATF). Third because, after experimenting with it, I like its feature planning facilities, the bug tracker, and the command line interface. And fourth, because it is available from the NetBSD packaging system.

Bear in mind that this experimental server is running from my home connection, which is quite flaky at the moment. The server is not really fast, and this Python installation overloads it quite a bit. Also, the setup uses a self-signed certificate that you will need to accept.

All that said, I've migrated most of the items from the to-do list previously located in the source code to the new bug tracker and killed the file in the source tree. It was unmanageable and really out of date.

If you are curious what the future will bring, check the tickets planned for the 0.9 release.

Hope you find this new bug tracker as useful as I will!


ATF 0.8 released

Posted by jmmv on Fri, 7 May 2010 15:06:00 GMT | Permanent link

Say hello to the nofork release, ATF 0.8! This new version bundles major changes to move the test case isolation from the test programs to the atf-run utility. The benefits: simpler and faster code, easier to debug tests. The downsides: some backwards-incompatible changes. However, fear this not: the NetBSD test suite runs unmodified after updating the system to this new version.

Here comes the list of major changes:

The SHA1 checksum for atf-0.8.tar.gz is: a86416081f0381eaab2d7f1c129202f282335afd

Go to the downloads page to get it!


Restricting supported platforms

Posted by jmmv on Tue, 4 May 2010 12:00:00 GMT | Permanent link

Up until now, every time I have put out a new release, I have run the code base through a fairly reasonable set of platforms to make sure that the code builds and all tests pass. This set of platforms has been usually composed of several Linux systems (Debian, Ubuntu, Fedora, OpenSuSE), several BSD systems (FreeBSD, NetBSD), Solaris and Mac OS X, both in their 32-bit and 64-bit variants.

While running the release through this testing process is nice and something that all projects should go through, the whole thing is complex and takes lots of effort. Typically, this involves setting up virtual machines for all of the supported platforms, making sure my clunky automation scripts for platform testing still work and, once this is done, using these virtual machines to test a release candidate, discover bugs and fix them. Of course, every time a bug is fixed, a new release candidate has to be rolled out and it needs to go through all the testing from the very beginning. (Note: these release candidates have always been internal snapshots of the source tree, nothing visible.)

The complexity and slowness of this process is one of the major blocker issues to put out a new release. Every time I ponder releasing a new version, I see all this work ahead and just postpone the release indefinitely. Considering the current user base of ATF, this is nonsense.

Knowing that ATF is currently only used by NetBSD and that there are no packages for any other operating system, I am officially dropping all this QA process in an attempt to make the release process more agile. From now on, new ATF releases will go through testing only on the platforms I have easy access to: no more, no less. This will probably mean NetBSD, Mac OS X and some sort of Linux. Portability bugs found by users on other platforms will be gladly fixed, but this will happen a posteriori.

I am sorry to have to do this, but I seriously need to make a better job at publishing new releases. 0.8 is around the corner and I really want to get it out without having to deal with all of this nightmare. I expect this QA process to come back once the project is much more mature though. But for now, it is gone.


nofork branch merged into mainline

Posted by jmmv on Sun, 2 May 2010 15:00:00 GMT | Permanent link

After fixing one of the major regressions introduced by the nofork branch, I have just merged that branch into mainline and deprecated it. This means that the experiment performed in the nofork branch has been successful and will be part of the next release! If you are wondering what that regression was, it was the support to kill test cases that time out and signal them as failed; this now works at the atf-run level.

There is still an important regression left, but I do not consider it a blocker issue. Hitting ctrl+c when running a test suite will now not correctly clean up all temporary files. I may just release a new version soon with this regression in it and just proceed to fix it later on.

Of course, there are also several things to be cleaned such as the interface of test programs, but this can also come later. At the moment, things seem to work pretty well and, after I verify that the current code base works well with the current NetBSD test suite, expect a fresh release soon!


ATF is in Google Summer of Code 2010

Posted by jmmv on Wed, 24 Mar 2010 19:00:00 GMT | Permanent link

Time flies... ATF was a project that I started during the Google Summer of Code 2007 program. It was a successful project that became part of the NetBSD operating system right after the program ended. But, more importantly, the project is still active (albeit with slow development in some periods) and in the need help.

I am pleased to announce that ATF is part of Google Summer of Code 2010! Yes, you read well! ATF is a small project but it has the honor of being managed by The NetBSD Foundation, an organization that has been selected to participate once again, for the 6th year in a row, in the program.

If you would like to contribute to the development of this testing framework, do not hesitate to apply! We have the following two project proposals but, of course, you can also come up with your own ideas:

Take a look at the linked project proposals for details and do not hesitate to contact us for further information.


Introducing the nofork branch

Posted by jmmv on Sat, 06 Mar 2010 19:16:00 GMT | Permanent link

Yesterday, I announced the org.NetBSD.atf.src.nofork branch, an experimental prototype to remove the forking and isolation of test cases from within test programs (don't worry, the isolation is now in atf-run). This feature has been highly requested because the previous design of test programs gets in the way when attempting to debug a failing test case. The new approach makes debugging easier and simplifies, a lot, the internal ATF code.

For more details, please refer to the announcement posted to the atf-devel mailing list. I hope this new code base will be the foundation of the 0.8 release.


ATF 0.7 released

Posted by jmmv on Tue, 22 Dec 2009 12:37:00 GMT | Permanent link

The long-awaited 0.7 release is finally here! It has been a very long time since 0.6 and this release does not carry some of the improvements that were expected. I am publishing this now to give exposure to the new internals and to free me from blocking changes, thus finally being able to work on new features for 0.8.

If you are wondering why it takes so long between releases, here is why: preparing a release is a very time-consuming process and it is hard to convince oneself that it is the moment to do so. If it wasn't for this, trust me, there would be more frequent releases because the mainstream code is rarely broken to the point of being unusable.

Without further ado, the major changes in this release are:

The checksums for atf-0.7.tar.gz are:

Go to the downloads page to get it!


ATF 0.6 released

Posted by jmmv on Sun, 18 Jan 2009 20:20:00 GMT | Permanent link

After a very long quiet period, I am happy to announce the 0.6 release of ATF. The major goal of this release is to integrate the changes made to the source code by Lukasz Strzygowski as part of his Google Summer of Code 2008 project. Integrating these changes into a formal release is a prerequirement for later integration of his NetBSD-specific work on regression tests into the NetBSD source tree.

The major changes in this release are:

The checksums for atf-0.6.tar.gz are:

Go to the downloads page to get it!


ATF 0.5 released

Posted by jmmv on Thu, 01 May 2008 17:00:00 GMT | Permanent link

I am very pleased to announce the availability of ATF's fifth public release, 0.5, which is probably the one with the most code changes so far. The main goal of this release is to provide a C-only binding to write test cases, completely freeing the developers of the use of C++. This new C library weights at around 7000 lines and the C++ library has lost around 1000 due to the fact that it now reuses code in the C library. Another important change of this release is the relicensing of the complete code base under a 2-clause BSD license.

The major changes in this release are:

The checksums for atf-0.5.tar.gz are:

Go to the downloads page to get it!


C-only library for test programs

Posted by jmmv on Mon, 18 Feb 2008 11:15:00 GMT | Permanent link

The branch org.NetBSD.atf.src.c has just hit the public repository. This contains a preliminary implementation of a C-only library for test programs. It will allow developers using ATF in their projects to restrict their test programs to the C language without having to use C++ at all, which is a highly desired feature in, for example, the NetBSD source tree.

The main focus of 0.5 will be the stabilization of this branch and its integration into mainline, assuming there is no important bug fix to roll off before this happens.

See some more details in this atf-devel post. Feel free to raise your comments there.


ATF 0.4 released

Posted by jmmv on Thu, 04 Feb 2008 21:00:00 GMT | Permanent link

I am very pleased to announce the availability of ATF's fourth public release, 0.4. The initial main goal of this release was to provide some developer-specific documentation, but once I attacked the implementation of the features planned in the roadmap, things got more complex. In the end, this release brings several new features and lots of portability fixes.

The major changes in this release are:

The checksums for atf-0.4.tar.gz are:

Go to the downloads page to get it!


ATF imported into NetBSD-current

Posted by jmmv on Thu, 12 Nov 2007 21:20:00 GMT | Permanent link

As I mentioned yesterday, ATF was hopefully ready to be integrated into NetBSD with the release of the 0.3 version. And it was! As there seem to be no serious problems with it, and as some people were adding pressure to get the thing integrated, I merged ATF into the NetBSD-current source tree today. Or, in other words, ATF will be part of NetBSD 5.0!

This marks a big milestone in the project, because ATF is now really put into use by an important and huge project: The NetBSD Operating System. This will hopefully boost interest in ATF and raise external contributions to either the core framework and/or to the NetBSD-specific tests.

For more details please refer to my official announcement at the tech-userlevel mailing list or to the news item at the NetBSD site.


ATF 0.3 released

Posted by jmmv on Thu, 11 Nov 2007 21:45:00 GMT | Permanent link

I am very pleased to announce the availability of ATF's third public release, 0.3. This release marks a big milestone for the ATF project: it is planned to be the first one to be integrated into the NetBSD source tree. Integration into the NetBSD operating system was the original goal of the ATF project as part of a Google Summer of Code 2007 project but, as it was not good enough when the program ended (or at least I considered it was not ready), integration was delayed. It is now polished enough to take make this important step forward!

The major changes in this release are:

The checksums for atf-0.3.tar.gz are:

Go to the downloads page to get it!


ATF 0.2 released

Posted by jmmv on Thu, 20 Sep 2007 23:15:00 GMT | Permanent link

Exactly a month ago, the Google Summer of Code 2007 program concluded and, coinciding with that date, I published ATF 0.1. Development has continued since then and I am now pleased to announce the availability of the ATF 0.2 release, the first release outside of the program; hopefully many more will come. This new version has still many rough edges but given that the goals planned for it have been accomplished, I felt it was time to make it public.

The major changes in this release are:

For a list of supported platforms in this release please see the downloads page. From now on this information will be kept there.

The checksums for atf-0.2.tar.gz are:

Go to the downloads page to get it!


Second preview of NetBSD with ATF

Posted by jmmv on Mon, 20 Aug 2007 21:40:34 GMT | Permanent link

I have just updated the first preview of NetBSD-current release builds with ATF merged in to match the ATF 0.1 release published today. As already stated in the old news item: These will ease testing to the casual user who is interested in this project because he will not need to mess with patches to the NetBSD source tree nor rebuild a full release, which is a delicate and slow process. For the best experience, these releases are meant to be installed from scratch even though you can also do an upgrade of a current installation. They will give you a preview of how a NetBSD installation will look like once ATF is imported into it; we are not sure when that will happen, though.

By the way, ATF 0.1 is also in pkgsrc as devel/atf. This may be an easier way for you to try it, even though you will not get the NetBSD-specific tests.

For more details see my post to the NetBSD's current-users mailing list.


ATF 0.1 released

Posted by jmmv on Mon, 20 Aug 2007 13:01:00 GMT | Permanent link

I am very pleased to announce the first public release of ATF, numbered 0.1 as you may expect. This release is being published to coincide with the end of the Google Summer of Code 2007, a program that sponsored this initial work in the project. Development will continue from now on with the primary goal of integrating ATF into the NetBSD operating system. But, of course, feel free to adopt ATF in your own applications.

This release has been tested under NetBSD-current (4.99.29), NetBSD 4.0_BETA2, Mac OS X 10.4.10 and openSUSE 10.2.

The checksums for atf-0.1.tar.gz are:

Go to the downloads page to get it!


New mailing list: atf-devel

Posted by jmmv on Sat, 18 Aug 2007 16:32:12 GMT | Permanent link

In preparation for the first public release of ATF, which will be released on the 20th, the project has got its first mailing list addressed at covering development-related topics and, at the moment, user-specific questions too. Its name is atf-devel, and you can find more details about it in the mailing lists page.

The description for the list reads:

atf-devel is the mailing list to discuss development issues related to the Automated Testing Framework (ATF) and is not tied to any specific project using ATF. Given that ATF is still very young and that the list is low-traffic, this is also the appropriate place to ask user-related questions. Inquiries related to the integration of ATF into NetBSD should be directed to tech-kern or tech-userlevel instead.

Many thanks to S.P.Zeidler from the NetBSD administration team for setting this up so quickly.


First preview of NetBSD with ATF

Posted by jmmv on Wed, 8 Aug 2007 01:52:12 GMT | Permanent link

I have just uploaded some NetBSD-current release builds with ATF merged in. These will ease testing to the casual user who is interested in this project because he will not need to mess with patches to the NetBSD source tree nor rebuild a full release, which is a delicate and slow process. For the best experience, these releases are meant to be installed from scratch even though you can also do an upgrade of a current installation. They will give you a preview of how a NetBSD installation will look like once ATF 0.1 is made public, which should happen later this month.

For more details see my post to the NetBSD's current-users mailing list.


Web site launched

Posted by jmmv on Sun, 16 Jul 2007 08:00:00 GMT | Permanent link

The official web site for ATF was launched. The old page will live until the Google Summer of Code 2007 program is over. If you ever visited the web site of the now-dead Buildtool project, this page will look very familiar. I did not want to rewrite everything from scratch, so I just copied several files from there, modified them a bit and liked the results.

Oh, and by the way, ATF has also got a logo! See it in the top-left corner of the page. It is pretty simple and may be replaced if somebody else comes up with a better one. But it is cool-enough for now :-)


Code made public

Posted by jmmv on Tue, 10 Jul 2007 17:00:00 GMT | Permanent link

ATF's code has been made public just in time for the Summer of Code 2007 midterm evaluation. You can find more information on how to access these sources (in early stages of development) at the repository page.


ATF selected as a Google Summer of Code 2007 project

Posted by jmmv on Thu, 12 Apr 2007 10:00:00 GMT | Permanent link

NetBSD was in the need of a testing framework to replace its current home-grown tests. ATF was presented as a project proposal to resolve these needs, and Julio M. Merino Vidal (the one writing these lines :-) was selected to work on it. Stay tuned for further news.