[TIP] Functional Testing of Desktop Applications

Atul Varma varmaa at gmail.com
Sun Mar 4 08:33:23 PST 2007


At Humanized, for the functional tests of our Enso products (
www.humanized.com), we use a modified version of unittest for our test
framework and use various automation tools to perform the actual testing.

One of the useful architectural modifications we've made to unittest's
standard framework is the notion of a "test environment", which allows us to
run the same tests in different kinds of contexts.  Running a test in an
unfrozen Python environment, for instance, allows us to get an idea of
whether a functional test works in general, without having to go through our
time-consuming py2exe'd build process to generate a frozen version of the
product, but the test environment architecture allows us to run the same
test using a frozen version on our continuous integration machines.

In general, as much criticism as unittest has received for its complexity,
we've found it to be pretty useful for functional testing; in fact, all of
our tests--unit tests, functional tests, and manual tests--use the unittest
framework, which makes collecting the test results easier for us.

As for the automation tools, currently I believe we use Mayukh Bose's
IEController [1] and pyAA [2].  The latter is particularly useful to
automate interactions with apps that don't use Microsoft's standard widgets,
such as Firefox (which draws its own menus and other controls).

- Atul

[1] http://www.mayukhbose.com/python/IEC
[2] http://www.cs.unc.edu/~parente/tech/tr09.shtml

On 3/4/07, Michael Foord <fuzzyman at voidspace.org.uk> wrote:
>
> Lawrence Oluyede wrote:
> >> Do others on this list do functional testing for desktop applications,
> >> and what frameworks do you use ?
> >
> > It's not exactly a test framework but an automation tool and I never
> > used by myself but I was nicely impressed when I attended the talk
> > about pywinauto held by Mark McMahon in last year's EuroPython.
> >
> > Maybe it can help you guys automate the testing of user interfaces:
> > http://pywinauto.pbwiki.com/
>
> Thanks Lawrence.
>
> For our IronPython project we have built our own test framework (for
> both unit and functional tests) on top of unittest.
>
> I'm looking to create a desktop application of my own (in a few months
> once this book is finally done with) and will *probably* use wxPython.
>
> I'm interested in what other Python programmers are using to
> functionally test desktop applications - particularly wxPython apps
> (although QT is pretty nice and worth considering).
>
> Pywinauto looks very interesting - hmmm... Their demo on the homepage
> looks good.
>
> Thanks
>
> Fuzzyman
> http://www.voidspace.org.uk/python/articles.shtml
>
> >
> > HTH
> >
>
>
> _______________________________________________
> testing-in-python mailing list
> testing-in-python at lists.idyll.org
> http://lists.idyll.org/listinfo/testing-in-python
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.idyll.org/pipermail/testing-in-python/attachments/20070304/09d04390/attachment.htm 


More information about the testing-in-python mailing list