Skip to main content

Locate slow tests in your django project.

Project description

Build Status Downloads

Django Bench Runner is a drop-in enhancement of the default django test runner that times how long it takes to run individual tests. It helps detect tests that might need optimization.

Installation

pip install django-bench-runner

In settings.py, add:

TEST_RUNNER = 'django_bench_runner.runner.BenchRunner'

Usage

Add the -b (or --benchmark) flag when running your tests.

Colorization

Tests that run under .5 seconds are colored green. The resulting tests are divvied into 3 groups. The fastest third (yellow), the middle third (magenta), and the slowest third (red). Red tests do not mean the tests are necessarily bad or in critical need of a speedup. It is just a graphical way to identify the various times of the tests.

Example Output

$ ./manage.py test core.tests.test_transfer_money -b --keepdb
Using existing test database for alias 'default'...
..

Test                                                              Runtime    Percent
--------------------------------------------------------------  ---------  ---------

core.tests.test_transfer_money.TestReleaseAmounts
: test_wells_fargo                                                8.25052     47.81%
: test_wells_fargo_exempt_from_prefunding                         9.00663     52.19%
---------------------------                                       -------    -------
TestReleaseAmounts                                               17.25715    100.00%

----------------------------------------------------------------------
Ran 2 tests in 17.262s

OK

Django compatibility

Tested and working in Django 1.8 and 1.9.

Credits

Special thanks Sergey Astanin for `tabulate <https://pypi.python.org/pypi/tabulate>`__

Project details


Release history Release notifications

This version
History Node

0.1.1

History Node

0.1

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
django_bench_runner-0.1.1-py2.py3-none-any.whl (14.2 kB) Copy SHA256 hash SHA256 Wheel 2.7 Jan 8, 2016
django_bench_runner-0.1.1.tar.gz (13.1 kB) Copy SHA256 hash SHA256 Source None Jan 8, 2016

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page