Locate slow tests in your django project.
Project description
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 | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for django_bench_runner-0.1.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1cf8417bc343e7951a37b48f408f10ab21c4c896ab2a8bfebe4b86a3f43bc34 |
|
MD5 | a6efa6c358cdaad8baca116cf8617802 |
|
BLAKE2b-256 | 90f22bb2b42c90b778306a3a09f08826a91542c818f86991ba202b8bda843add |
Hashes for django_bench_runner-0.1.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 17692abd4fb26f94f84318b6cf759028be0a425fdab6023d3eeb7df0b0f996d0 |
|
MD5 | f4903acb5c4e5dd90789469a99b4dacc |
|
BLAKE2b-256 | 0a0fcb3208df5091d8efeccc04b4d6c8ec287956c03fd386ca305ac7c9ae7ace |