Along with free fiction ebooks, I also do a little free software engineering, in the same spirit.
I’ve recently added two open source projects to github, useful for software testing in python.
One is a general purpose test automation framework, suitable for running any and all tests. I’ve use it for web testing, api testing, serial port/firmware testing, network traffic scanning, tv remote control testing, game testing – all sorts of stuff
You can find it on github as pytaf26
The other is an abstraction layer for Selenium using Python bindings. I’ve found – to my consternation – that some things work better in Selenium RC than they do in WebDriver, and vice versa. In fact, in my current work I’ve had to switch between the two quite frequently. To ease the pain, I wrote an abstraction layer – two classes that use the same method signatures – so that I only have to write the tests once, and pass along a command-line switch to determine which version of Selenium to use. The details of each version lie under the hood of the easy-to-remember api methods.
You can find it on github as py-selenium-layers