Restored multiprocessing concurrency on coverage.py settings

* Revert "Reverted "Fixed #33213 -- Doc'd testing code coverage in parallel and used it.""

This reverts commit 78da5ca0c1.

* Restored coverage multiprocess concurrency with threads

Investigating https://github.com/nedbat/coveragepy/issues/1585 revealed
that thread tracing gets disabled when passing
`concurrency = multiprocessing`. Adding `thread` restores it, and
ensures that the `auser()` is reported as covered since the test suite
uses `AsyncToSync` to execute this middleware (which spawns threads).
This commit is contained in:
Marc Gibbons 2023-04-27 14:02:55 -06:00 committed by GitHub
parent 5c456a8793
commit 070cbac0db
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 12 additions and 5 deletions

2
.gitignore vendored
View File

@ -13,6 +13,6 @@ docs/_build/
docs/locale/
node_modules/
tests/coverage_html/
tests/.coverage
tests/.coverage*
build/
tests/report/

View File

@ -337,14 +337,19 @@ Contributors are encouraged to run coverage on the test suite to identify areas
that need additional tests. The coverage tool installation and use is described
in :ref:`testing code coverage<topics-testing-code-coverage>`.
Coverage should be run in a single process to obtain accurate statistics. To
run coverage on the Django test suite using the standard test settings:
To run coverage on the Django test suite using the standard test settings:
.. console::
$ coverage run ./runtests.py --settings=test_sqlite --parallel=1
$ coverage run ./runtests.py --settings=test_sqlite
After running coverage, generate the html report by running:
After running coverage, combine all coverage statistics by running:
.. console::
$ coverage combine
After that generate the html report by running:
.. console::

View File

@ -1,5 +1,7 @@
[run]
branch = True
concurrency = multiprocessing,thread
data_file = .coverages/.coverage
omit =
*/django/utils/autoreload.py
source = django