Before we select any tools, I think we should first enumerate some
general requirements of the automated test. Here are a few things that
occur to me.
I think it should be pretty simple from the standpoint of features;
* Execute a sequence of test cases, broken out as test stops.
* It must supports some kind of test scripting language.
* It must support some kinds of "plug-ins" or libraries that we
could use for custom board interfaces to reset and load code and to
get console output.
* That should be some extensible extensible interfaces to that we
can add more "plug-ins" in the future .. and somehow bound into the
test scripting language.
* Some way to generate test reports and identify regressions.
What else? Python seems to be the most common scripting language for
this kind of application.