當我運行時pytest src/packages --cov --cov-branch --cov-report term-missing,我會使用 Stmts | 得到一份詳細的報告。小姐 | 分行 | 部分 | 封面 | 如下圖所示缺失:
命令列作業報告
但是,當我pre-commit run pytest-cov-src-packages使用下面顯示的 pre-commit 掛鉤運行(或 git commit)時,我只會得到一個“pytest-cov-src-packages ................... ................................通過”陳述句在命令列中。沒有報告什么的。剛過去。
- id: pytest-cov-src-packages
name: pytest-cov-src-packages
language: system
entry: pytest src/packages --cov --cov-branch --cov-report term-missing
types: [python]
stages: [commit]
pass_filenames: false
always_run: true
是否有任何理由在命令列中運行 pytest 與觸發條目:預提交中的片段會產生不同的結果?我希望在命令列中獲得詳細報告,如圖所示,在預提交程序中作為 git 提交的一部分作業。
謝謝!
uj5u.com熱心網友回復:
是否有任何理由在命令列中運行 pytest 與觸發條目:預提交中的片段會產生不同的結果?
因為pre-commit經常被配置為運行許多測驗,所以它被設計為默認提供摘要輸出。您的條目產生的任何輸出pre-commit都將被丟棄以進行成功的測驗;您只會在發生故障時看到輸出。
如果您總是想查看輸出,可以pre-commit使用-v標志運行。
相比:
$ pre-commit run --all-files
pytest-cov-src-packages..................................................Passed
和:
$ pre-commit run --all-files -v
pytest-cov-src-packages..................................................Passed
- hook id: pytest-cov-src-packages
- duration: 0.21s
============================= test session starts ==============================
platform linux -- Python 3.10.4, pytest-7.1.2, pluggy-1.0.0
rootdir: /home/lars/tmp/python
plugins: cov-3.0.0
collected 1 item
test_foo.py . [100%]
---------- coverage: platform linux, python 3.10.4-final-0 -----------
Name Stmts Miss Branch BrPart Cover Missing
---------------------------------------------------------
test_foo.py 2 0 0 0 100%
---------------------------------------------------------
TOTAL 2 0 0 0 100%
============================== 1 passed in 0.04s ===============================
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/483081.html
