What is Pythoscope
Pythoscope is an open source tool that will automatically or semi-automatically generate unit tests for Python code. If you have a system written in Python and value testing, Pythoscope can help you achieve a high test coverage.
Why Unit Test
A basic rule of thumb is that unit testing gives you about a 20% ROI. That is to say that if you are spending more than 20% of your coding time on unit testing you are wasting time. Pythoscope helps reduce the time spent writing tests thus directly effects testing ROI.
Resources talking about unit test benefits are listed here:
Who did Pythoscope
Pythoscope started as internship work at Disney. The original idea came from Paul Hildebrandt and Dr. Titus Brown. The lucky person responsible for implementing it was Michal Kwiatkowski. During his time at Disney we managed to publish 4 releases. Pythoscope was announced on the Testing In Python mail list and demonstrated at the Southern California Python Interest Group. Both times it was warmly received. It's been blogged about multiple times. A small community has build around the project. We believe in openness, so all our code, research materials and specifications are available online at the project's homepage. Python developers are looking with hope at the project's future. While we have a functioning product there is indeed still a lot of work to do.
In the next few months we plan on covering the dark corners of every legacy system - side effects, including things like modifying global variables, writing to a file system, or making database connections. Tests generated by Pythoscope will include mocks that abstract those effects, making tests not only safer, but also much faster. We plan to improve our introspection techniques to cover the code more throughly, for cases that even the original developers didn't foresee. And all of that automated, with only a little help from a developer.
Here are the milestones overviews: https://launchpad.net/pythoscope/+milestones
Petition for Support
To aid in the future plans we need help. The Disney internship is ending and to keep our current pace of development we need funding. If you use Python and believe that Pythoscope may be useful to you, please support the project. Contact us and we'll figure out the details.