[Testing] Automated testing, OLPC, code+screencasts.

Titus Brown titus at caltech.edu
Wed Mar 26 03:31:16 EDT 2008

Hi all,

I'm delurking with a vengeance here, I think :).

A few months ago I was invited to take an interest in the OLPC with
specific regard to testing; I've been involved with Python and testing
for a while, and someone asked Grig Gheorghiu and me to take a look at
the OLPC work to see if we could help out with the QA process.

For a variety of reasons (GHOP, and a baby, etc.) I didn't do much for a
while, but I had submitted a talk proposal about my (fictitious) OLPC
automated testing work to PyCon '08 and had to make good on the talk.
So I finally put into action a bit of the stuff I'd been thinking about.

If you want to skip the ranting and opinions you can go directly to my
last blog post, here,


where I show some screencasts of some simple Sugar GUI automation as
well as instrumentation of the Sugar GUI with code coverage analysis
using my 'figleaf' Python code coverage tool and 'peekaboo', a dynamic
code tracing tool.

The GUI automation was done with a simple twill-based domain specific
language wrapping xmacro, and it's very fragile.  But it does work.

You're welcome to all of this code, although it needs some serious

Note that I'm working with a student (Zach Riggle) to submit a "testing
tools" GSoC application to the Python Software Foundation, with the aim
of making robust GUI driving and trace recording tools for the OLPC (and
other apps).

Other than that, I'm interested in figuring out how to encourage the
OLPC project to build some automated tests without doing it all myself
:).  Thoughts welcome.

Basically I think it's incredibly important for the OLPC to invest in
automated tests.


OK, now for the ranting and opinions, which are less polite, I offer up
the following posts (with one line summaries).

The OLPC is crazy and needs to test; and its community interactions
with Python are broken:

My talk materials:

Why I think automated testing is important, inspired by my OLPC

And the above screencasts etc.:

As you can guess from the "death spiral" post, I'm not terribly
interested in *debating* the usefulness of automated tests, and I don't
buy into the notion that GUI automation is impossible, either.  I would
very much like to try to introduce systematic and robust GUI testing
into the OLPC and I will be working towards that end as time and
resources permit.  Constructive comments and genuine interest are


Dr. C. Titus Brown, ctb at msu.edu
Asst Prof., Michigan State U.

More information about the Testing mailing list