Pythoscope, the unit test generator

News and announcements

Pythoscope 0.4.3 released

Written for Pythoscope by Michal Kwiatkowski on 2010-02-28

This is a bug fix release, covering all loose ends of 0.4.2. Installation package is now complete and should install without problems on systems without setuptools. I also fixed a serious bug that could cause a test file to be overwritten. Last but not least, some of the internals has been refactored to accommodate future changes.

Big thanks to Pieter Van Dyck for bug reports and fix suggestions.

To install/update get the source package from http://pythoscope.org/local--files/download/pythoscope-0.4.3.tar.gz and run:

  $ python setup.py install

or simply use setuptools:

  $ easy_install pythoscope==0.4.3

Full summary of changes:
* Pythoscope now ignores application and test modules it could not inspect (https://bugs.launchpad.net/bugs/487138 and https://bugs.launchpad.net/bugs/462849).
* Improved generation of assertions for functions with varargs and kwargs (https://bugs.launchpad.net/bugs/475414 and https://bugs.launchpad.net/bugs/475409).
* Pythoscope will no longer generate two test cases with the same name (https://bugs.launchpad.net/bugs/475504).
* Installation package now contains all essential files (https://bugs.launchpad.net/bugs/481238).
* Pythoscope now properly handles string exceptions thrown inside entry points (https://bugs.launchpad.net/bugs/522364).
* Entry points are now run with the current directory being the project root (https://bugs.launchpad.net/bugs/524352).

Pythoscope 0.4.2 released

Written for Pythoscope by Michal Kwiatkowski on 2009-11-05

The goal of this release was to make Pythoscope compatible with different Python versions and different environments. Pythoscope now supports Pythons 2.3 through 2.6 and the interpreter is the only thing needed to install and use the tool. We have a test suite that will help us make sure we retain compatibility in future releases.

Apart from the compatibility improvements we also fixed a few bugs along the way. There are still some know issues, and those were moved to the 0.4.3 milestone, which will be released before the end of this year (and rather sooner than later, I hope). Check out https://launchpad.net/pythoscope/+milestone/0.4.3 for details.

It's also worth mentioning that Pythoscope has been successfully tested on Python's standard library, so it looks like static inspection is quite reliable. Big thanks go to Ryan Freckleton for the idea and bug reports.

To install/update get the source package from http://pythoscope.org/local--files/download/pythoscope-0.4.2.tar.gz and run:

  $ python setup.py install

or simply use setuptools:

  $ easy_install pythoscope==0.4.2

Full summary of changes:
* Removed dependency on fixture module (https://blueprints.launchpad.net/pythoscope/+spec/stop-using-fixture).
* Fixed test generation bug related to function definitions with varargs (https://bugs.launchpad.net/bugs/440773).
* Dynamic inspector can now handle all types of exceptions, including string exceptions (https://blueprints.launchpad.net/pythoscope/+spec/better-exception-handling).
* Frequently Asked Questions document has been created, also available online (http://pythoscope.org/faq).
* Added support for Pythons 2.3 through 2.6.
* New imports added by Pythoscope are now placed after existing ones, so they don't cause a syntax error when __future__ imports were used (https://bugs.launchpad.net/bugs/373978).
* Fixed inspection bug related to classes deriving from namedtuple instances (https://bugs.launchpad.net/pythoscope/+bug/460715).
* Setuptools is no longer required for installation.

Pythoscope 0.4.1 released

Written for Pythoscope by Michal Kwiatkowski on 2009-04-23

This is mostly a bugfix release, trying to polish a few rough edges. Pythoscope is now faster, handles bigger projects without hassle and doesn't cause problems on Windows anymore.

To install/update get the source package from http://pythoscope.org/local--files/download/pythoscope-0.4.1.tar.gz and run:

  $ python setup.py install

or simply use setuptools:

  $ easy_install pythoscope==0.4.1

Full summary of changes:
 * Greatly improved information storage performance (https://blueprints.launchpad.net/pythoscope/+spec/improve-information-storage-performance).
 * Added Pythoscope module for Emacs to the misc/ directory in the source tree.
 * Unittests can now be used as points of entry (https://bugs.launchpad.net/bugs/275059).
 * Pythoscope now ignores source control files (https://bugs.launchpad.net/bugs/284568).
 * Static inspection happens on --init, as it should be (https://bugs.launchpad.net/bugs/325928).
 * Ported itertive pattern matcher for lib2to3 from Python trunk (https://bugs.launchpad.net/bugs/304541).
 * Fixed test generation bug related to nested function arguments (https://bugs.launchpad.net/bugs/344220).
 * Fixed point of entry cleanup bug (https://bugs.launchpad.net/bugs/324522).
 * Fixed some more Windows-specific bugs (https://bugs.launchpad.net/bugs/348136).

Pythoscope 0.4 released

Written for Pythoscope by Michal Kwiatkowski on 2009-01-29

Although a lot of time has passed since the last release I hope improvements implemented in this one are worth the wait. You will notice the changes regardless of how you use the tool. Test stubs are more helpful now, and the revamped dynamic analysis and serialization mechanism make generated test cases both more reliable and readable.

To install/update get the source package from http://pythoscope.org/local--files/download/pythoscope-0.4.tar.gz and run:

  $ python setup.py install

or simply use setuptools:

  $ easy_install pythoscope==0.4

Full summary of changes:
 * Stopped using pickle for object serialization (https://blueprints.launchpad.net/pythoscope/+spec/dont-use-pickle-for-object-serialization) and implemented our own mechanism that carefully captures changing state of objects during dynamic inspection.
 * Implemented "preserve objects identity" blueprint (https://blueprints.launchpad.net/pythoscope/+spec/preserve-objects-identity).
 * Fixed bug related to multiple generator calls (https://bugs.launchpad.net/pythoscope/+bug/295340).
 * Made handling of special method names (like __init__ or __eq__) consistent with handling of normal method names.
 * Made test stubs more useful (https://blueprints.launchpad.net/pythoscope/+spec/better-test-stubs).

Pythoscope 0.3.2 released

Written for Pythoscope by Michal Kwiatkowski on 2008-10-19

Just as promised, after a week of work, Pythoscope 0.3.2 is ready. This is the second bugfix release in the 0.3 series. The most important improvement is making Pythoscope more verbose. It should be much more clear now what Pythoscope does during test generation. Big thanks to Paul Hildebrandt for implementing this feature!

To install/update get the source package from http://pythoscope.org/local--files/download/pythoscope-0.3.2.tar.gz and run:

  $ python setup.py install

or simply use setuptools:

  $ easy_install pythoscope==0.3.2

Full summary of changes:
* Made Pythoscope more verbose (https://blueprints.launchpad.net/pythoscope/+spec/more-verbose-output).
* Added support for user-defined exceptions (https://blueprints.launchpad.net/pythoscope/+spec/user-defined-exceptions).
* Fixed unicode handling bug (https://bugs.launchpad.net/bugs/284585>).
* Improved performance of the internal information storage.

Updated on 2008-10-19.

15 of 13 results

Announcements