Your way out of The Lack of Testing Death Spiral

What is Pythoscope?

Pythoscope is a unit test generator for programs written in Python. It's open source, licensed under the MIT license.

See the FAQ for commonly asked questions about Pythoscope.

To get started with Pythoscope read the installation instructions and then dive into the tutorial.

version

Current stable version of Pythoscope is 0.4.3, released on February 28th 2010.

Python doctor

Example

Take your code… …and admire your new test suite.
old_python.py:
class OldPython(object):
    def __init__(self, age):
        self.age = age
 
    def hiss(self):
        return "sss... *cough* *cough*"
… run Pythoscope on it…

$ pythoscope old_python.py

tests/test_old_python.py:
import unittest
 
class TestOldPython(unittest.TestCase):
    def test___init__(self):
        # old_python = OldPython(age)
        assert False  # TODO: implement your test here
 
    def test_hiss(self):
        # old_python = OldPython(age)
        # self.assertEqual(expected, old_python.hiss())
        assert False  # TODO: implement your test here
 
if __name__ == '__main__':
    unittest.main()

More examples...

News

{"module":"feed\/FeedModule","params":{"src":"http:\/\/feeds.launchpad.net\/pythoscope\/announcements.atom","module_body":"* %%linked_title%%"}}

More news...

Development

Architecture

Research Materials

Blueprints

Those are specifications which were wikified, for a full list see blueprints on Launchpad.

Events

Credits

Idea for this project came from Paul Hildebrandt and Titus Brown. Most of the code so far has been written by Michal Kwiatkowski.

About this page

This is a wiki (see What is a Wiki Site?), so if you want to edit pages, you have to register. If you're new to wikis learn how to edit pages first. You may also want to check out a list of site members.

You may also want to check out the recent changes or list all pages.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License