"... && отчет о покрытии" не работает после перехода на pytest-django

Я использовал unittest в Django для написания тестов и запускал тесты с помощью этой команды:

coverage run --omit='src/manage.py,src/config/*,*/.venv/*,*/*__init__.py,*/tests.py,*/admin.py' src/manage.py test src && coverage report

Он запустит тесты, а затем отобразит .coverage, сгенерированный coverage run ... после выполнения.

После установки pytest-django и настройки pytest.ini я обновил свою команду следующим образом:

coverage run --omit='src/manage.py,src/config/*,*/.venv/*,*/*__init__.py,*/tests.py,*/admin.py' -m pytest && coverage report

Заметьте, я пока не использую pytest-cov.

По какой-то причине, которую я не могу понять, coverage report не отображается после выполнения тестов.

Я могу выполнять каждую команду отдельно:

  • Программа coverage run ... запускает тесты и создает отчет.
  • coverage report отображает отчет.

Я просто не могу заставить отчет отображаться, делая ... && coverage report после переключения на pytest-django.

Есть причины для этого?

Версии:

coverage = "^6.2"
pytest-django = "^4.7.0"

В соответствии с комментариями, в итоге я просто сделал это двумя отдельными командами.

В моем Dockerfile:

...
RUN coverage run --omit='src/manage.py,src/config/*,*/.venv/*,*/*__init__.py,*/tests.py,*/admin.py,*/migrations/*,*/apps.py' -m pytest -m=ut
RUN coverage report -m
...

И запускается в контейнерах с devspace:

...
      onUpload:
        exec:
          - command: |
              coverage run --omit='src/manage.py,src/config/*,*/.venv/*,*/*__init__.py,*/tests.py,*/admin.py,*/migrations/*,*/apps.py' -m pytest -m=ut
              coverage report -m
...
Вернуться на верх