A streamlined fork of django-jenkins designed to work with the default test command and the discover runner
Find a file
Camilo Nova 5a8531f82f
Merge pull request #31 from jazzband/jazzband/sync/default
Jazzband: Synced file(s) with jazzband/.github
2021-10-21 14:26:15 -05:00
discover_jenkins Add support for coverage 4.0. 2016-07-21 15:05:08 -04:00
docs Improve documentation 2015-01-22 16:03:55 -05:00
tests Added isort to CI. 2016-01-08 23:29:22 -05:00
.gitignore Add the docs _build directory to gitignore 2013-08-08 00:38:46 -05:00
.travis.yml Rename Django's dev branch to main. 2021-03-09 13:33:38 +01:00
AUTHORS.md Improve documentation 2015-01-22 16:03:55 -05:00
CODE_OF_CONDUCT.md Jazzband: Created local 'CODE_OF_CONDUCT.md' from remote 'CODE_OF_CONDUCT.md' 2021-10-21 14:34:50 +00:00
CONTRIBUTING.md Create CONTRIBUTING.md 2016-01-07 16:35:42 -05:00
DEVEL.md Improved release docs 2016-01-07 08:16:39 -05:00
LICENSE Boilerplate 2013-07-30 20:09:34 -05:00
MANIFEST.in Add the pylint.rc to the MANIFEST.in 2013-11-22 09:59:52 -06:00
README.md Convert readthedocs links for their .org -> .io migration for hosted projects 2016-06-11 10:58:46 +01:00
setup.cfg Added isort to CI. 2016-01-08 23:29:22 -05:00
setup.py Updated the package classifiers. 2016-01-08 23:52:06 -05:00
tox.ini Rename Django's dev branch to main. 2021-03-09 13:33:38 +01:00

django-discover-jenkins

Build Status Jazzband

A streamlined fork of django-jenkins designed to work with the default test command and the discover runner.

Read the Docs

Why?

The overall goal is to run tests on Jenkins the same way you do on your local machine. This project is designed to take advantage of https://github.com/jezdez/django-discover-runner/, which is the default test runner in Django 1.6. Instead of using a setting to list which apps should be tested, or accepting Django-specific test labels, it uses the official test discovery feature of the new unittest2.

Also, the original https://github.com/kmmbvnr/django-jenkins project doesn't take advantage of improvements to testing introduced in Django 1.4. Special management commands are no longer needed, as test runners themselves can add options that are handled by the built-in test command.

What's Changed?

  • It doesn't override the suite construction. Use the included test runner based on the django-discover-runner, or use the included mixin to add Jenkins functionality to your own runner. Your test suite will be built the same way on Jenkins as it is on your local machine.
  • No management commands are provided. Since Django 1.4, the built in 'test' command has allowed the test runner to define additional options that the management command will accept.
  • It doesn't use signals. Instead of using the event/callback style of signals and using inspect.getmembers to connect everything, the test runner simply checks for key methods on each task the same way Django's request handler checks for methods on middleware.
  • Not everything works yet. Only a subset of the django-jenkins tasks have been ported at this point. I'd love to accept your pull requests to add more of them.