Skip to main content

Automatic test execution on file changes

Project description

Why

Because unit testing is even more fun

  • when you don’t have to switch out of your editor to get feedback from unit tests.

  • the shorter the feedback period is till you get feedback from your tests.

I’ve seen the usefullness toying with rubys autotest command, so I pestered Felix to build something like this, and after using it for about a two years, I finally got around to packaging it. :-)

In addition to that it’s brain dead simple, has no dependencies and is _really_ small.

Usage

% watching_testrunner --help
Usage: watching_testrunner [options] [--] command [arguments...]

Options:
  -h, --help            show this help message and exit
  -b BASEPATH, --basepath=BASEPATH
                        base path to watch for changes
  -p WATCH_WILDCARD, --pattern=WATCH_WILDCARD
                        glob-style pattern for file names to watch

Examples

$ watching_testrunner nosetests

This will run nosetests whenever any python file below the current directory changes

$ watching_testrunner -- nosetests $NOSETESTS_ARGUMENTS

Will run nosetests all the same, but will not try to parse any of the nosetests arguments.

$ watching_testrunner --basepath foo/bar --pattern="*" nosetests $NOSETESTS_ARGUMENTS

This will run nosetests whenever any file below ./foo/bar changes.

$ watching_testrunner --basepath path/to/js_tests --pattern="*.js" jasmine --console

This will run jasmine –console whenever any js file below ./path/to/js_tests changes (i.e. you can use the watching testrunner to get auto test execution using any tool for any language)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

watching_testrunner-1.1.0.tar.gz (3.4 kB view details)

Uploaded Source

File details

Details for the file watching_testrunner-1.1.0.tar.gz.

File metadata

File hashes

Hashes for watching_testrunner-1.1.0.tar.gz
Algorithm Hash digest
SHA256 91460e782e096c5a1819e67e22fb6f7f7a0e631efa3790f9902e5d4cb97b504c
MD5 6e83888abd87730329f300df0d898d23
BLAKE2b-256 5f938cae0c0f9012851a1a6a416dc8626fb584b7466b5936180ced11cea46f2d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page