Changelog¶
5.1.0 (2024-09-??)¶
更新文件中的各種不正確處,特別是關於子處理程序處理。
變更
fail
檢查內容,以使用涵蓋率配置中設定的精度。現在,執行方式會像coverage report
一樣。
5.0.0 (2024-03-24)¶
4.1.0 (2023-05-24)¶
使用新 Python 和依賴關係更新 CI。
移除 rsyncdir 支援。這讓 pytest-cov 與 xdist 3.0 相容。由 Sorin Sbarnea 貢獻,收錄於 #558。
最佳化摘要產生,若沒有作用中回報(例如:
--cov-report=''
,未與--cov-fail-under
一起使用)時不會執行。由 Jonathan Stewmon 貢獻,收錄於 #589。新增對 JSON 回報的支援。由 Matthew Gamble 貢獻,收錄於 #582。
將程式碼重構為使用 f 字串。由 Mark Mayo 貢獻,收錄於 #572。
修正測試套件中跳過部分舊 xdist 的錯誤。由多人在 #565 中貢獻。
4.0.0 (2022-09-28)¶
請注意,這個版本已取消對多處理的支持。
–cov-fail-under 不再會導致 pytest –collect-only 失敗 由 Zac Hatfield-Dodds 貢獻,收錄於 #511。
取消對多處理的支持(主要因為 issue 82408)。這項功能基本上都有作用,但在某些情況下會損壞,讓測試套件非常不穩定且緩慢。
coverage 中有內建的多處理支援,你可以轉移到它。你只需要在
.coveragerc
中新增以下內容即可:[run] concurrency = multiprocessing parallel = true sigterm = true
在
setup.py
中修正過時內容,方法是在 distutils 之前先嘗試導入 setuptools。由 Ben Greiner 貢獻,收錄於 #545。在報告功能停用時移除顯示不必要的換行字元。由 Delgan 提供,詳見 #540。
新增透過 –cov-report=lcov 支援 LCOV 輸出格式。僅適用於 6.3+ 的覆蓋率。由 Christian Fetzer 提供,詳見 #536。
現代化 pytest 鉤子實作。由 Bruno Oliveira 提供,詳見 #549,以及 Ronny Pfannschmidt 提供,詳見 #550。
3.0.0(2021-10-04)¶
請注意,這個版本不再支援 Python 2.7 和 Python 3.5。
新增支援 Python 3.10,並更新不同測試相依性。由 Hugo van Kemenade 提供,詳見 #500。
從 Travis CI 轉換為 GitHub Actions。由 Hugo van Kemenade 提供,詳見 #494 和 #495。
新增
--cov-reset
CLI 選項。由 Danilo Šegan 提供,詳見 #459。提升
--cov-fail-under
CLI 選項驗證。由…Ronny Pfannschmidt 渴望了解 skark 提供,詳見 #480。移除 Python 2.7 支援。由 Thomas Grainger 提供,詳見 #488。
更新 trove 分類。由 Michał Bielawski 提供,詳見 #481。
還原 toml 需求變更。由 Thomas Grainger 提供,詳見 #477。
2.12.1(2021-06-01)¶
將 toml 需求變更為直接要求(而非透過涵蓋範圍的額外部分來要求)。這修正了 pip-compile 的問題(pip-tools#1300)。由 Sorin Sbarnea 提供,詳見 #472。
文件撰寫
show_contexts
。由 Brian Rutledge 提供,詳見 #473。
2.12.0(2021-05-14)¶
2.11.1(2021-01-20)¶
修正對較新的 setuptools(v42+)的支援。由 Michał Górny 提供,詳見 #451。
2.11.0(2021-01-18)¶
提升涵蓋範圍最小需求至 5.2.1。這可防止發生報告問題。由 Mateus Berardo de Souza Terra 提供,詳見 #433。
精進範例專案(源自 範例 目錄)以支援執行 tox -e pyXY。範例目前設定含有字尾的覆蓋率資料檔,因此不需要清除環境。在 #435 由 Ganden Schaffner 貢獻。
移除空白 console_scripts 入口點讓 Gentoo 建置腳本的困惑降低。我不詢問為何如此地損壞,因為我不希望浪費自己的時間。在 #434 由 Michał Górny 貢獻。
更新文件中的設定區段。在 #429 由 Pamela McA’Nulty 貢獻。
將 CI 遷移至 travis-ci.com(從 .org)。
2.10.1 (2020-08-14)¶
支援
pytest-xdist
2.0,打破 1.22.3(2017 年)之前的pytest-xdist
相容性。在 #412 由 Zac Hatfield-Dodds 貢獻。修正使用內嵌模式中的
pytester
外掛程式時發生的LocalPath has no attribute startswith
失敗。
2.10.0 (2020-06-12)¶
改進
--no-cov
警告。現在僅當在--cov
之前存在--no-cov
時才會顯示。移除過時的 pytest 支援,變更
setup.py
以便需要pytest>=4.6
。
2.9.0 (2020-05-22)¶
在 Pytest 3.10 中使用時修正
RemovedInPytest4Warning
。在 #354 由 Michael Manganiello 貢獻。透過延遲匯入讓 pytest 啟動更快速(當外掛程式未啟用時),在 #339 由 Anders Hovmöller 貢獻。
多項 Python 支援更新(停止 EOL 3.4,測試 3.8 最終版)。在 #336 和 #367 由 Hugo van Kemenade 貢獻。
變更
--cov-append
以持續啟用data_suffix
(覆蓋率設定)。在 #387 由 Harm Geerts 貢獻。變更
--cov-append
以更妥善地處理載入先前資料(修正多種路徑別名問題)。多項其他測試改進、github 問題範本、範例更新。
修正由於測試合更目前工作目錄而造成的內部失敗,方法是確保在呼叫覆蓋率時工作目錄會維持一致。請參閱 #306 和 coveragepy#881
2.8.1 (2019-10-05)¶
已修正 #348 - 當僅使用部分報表(html 或 xml)時發生回歸,則
--cov-fail-under
永遠無法通過。
2.8.0 (2019-10-04)¶
已修正當使用 cleanup_on_signal 或 cleanup_on_sigterm 時可能發生的
RecursionError
。請參閱: #294。pytest-cov 的 2.7.x 版本應視為已中斷,且與上述的清理 API 有關。已新增與未公開一些內部元件的未來 xdist 版本相容性(比照 pytest-xdist master/worker 術語)。由 Thomas Grainger 在 #321 貢獻。
已修正在使用多個報告選項時發生的中斷。由 Thomas Grainger 在 #338 貢獻。
已變更內部元件,以使用一個存根而非
os.devnull
。由 Thomas Grainger 在 #332 貢獻。已新增對 Coverage 5.0 的支援。由 Ned Batchelder 在 #319 貢獻。
已新增對
--cov-fail-under
中浮點數值的支持。由 Martín Gaitán 在 #311 貢獻。各種文件修正。由 Juanjo Bazán、Andrew Murray 和 Albert Tugushev 在 #298、#299 和 #307 貢獻。
各種測試改善。由 Ned Batchelder、Daniel Hahler、Ionel Cristian Mărieș 和 Hugo van Kemenade 在 #313、#314、#315、#316、#325、#326、#334 和 #335 貢獻。
已新增
--cov-context
CLI 選項,可啟用涵蓋率脈絡。僅與 coverage 5.0+ 搭配使用時有效。由 Ned Batchelder 在 #345 貢獻。
2.7.1 (2019-05-03)¶
已修正來源散發清單,使垃圾未包含在 tarball 中。
2.7.0 (2019-05-03)¶
已修正使用
--no-cov
時發生的AttributeError: 'NoneType' object has no attribute 'configure_node'
錯誤。由 Alexander Shadchin 在 #263 貢獻。各種測試和 CI 改善。由 Daniel Hahler 在 #255、#266、#272、#271 和 #269 貢獻。
已改善
pytest_cov.embed.cleanup_on_sigterm
,使其具備重新進入性(執行訊號處理時發出的訊號不會中斷作業)。已新增
pytest_cov.embed.cleanup_on_signal
,供自訂清理使用。改善範例。現在對於常見的專案配置,提供兩個範例,並搭配工作中的覆蓋率配置。這些範例有 CI 測試。由 #267 中的貢獻者負責。
改善 CLI 選項的說明文字。
2.6.1 (2019-01-07)¶
2.6.0 (2018-09-03)¶
不再支援 Python 3 < 3.4、Pytest < 3.5 和 Coverage < 4.4。
修正一些文件格式。由 Jean Jordaan 和 Julian 負責貢獻。
新增一個包含文件中的
addopts
範例。由 Samuel Giffard 在 #195 中負責貢獻。修正某些 xdist 配置中的
TypeError: 'NoneType' object is not iterable
。由 Jeremy Bowman 在 #213 中負責貢獻。新增
no_cover
標記和夾具。修正 #78。修正執行 doctest 時
no_cover
檢查中斷的問題。由 Terence Honles 在 #200 中負責貢獻。修正報表中路徑標準化相關的各種問題(並行模式下合併覆蓋率資料時)。修正 #130。由 Ryan Hiebert 和 Ionel Cristian Mărieș 在 #178 中負責貢獻。
產生報表失敗不會再觸發例外。將會登錄警告。修正 #161。
修正 Windows 上的多處理問題(未傳遞空白環境變數)。修正 #165。
2.5.1 (2017-05-11)¶
2.5.0 (2017-05-09)¶
2.4.0 (2016-10-10)¶
2.3.1 (2016-08-07)¶
2.3.0 (2016-07-05)¶
新增支援,用於指定 html、xml 和註解報告的輸出位置。貢獻者為 Patrick Lannigan,請見 PR#113。
修復當 cov-fail-under 失敗時,會隱藏測試失敗的錯誤。
對於程式碼覆蓋率大於等於 4.0,和 coverage report 的預設行為一致,如果程式碼覆蓋率偵測不到來源,則會產生錯誤,而不是只顯示警告。貢獻者為 David Szotten,請見 PR#116。
修復當使用空
--cov
參數搭配 xdist 時所發生的錯誤。貢獻者為 Michael Elovskikh,請見 PR#120。新增支援
skip_covered
和新增--cov-report=term-skip-covered
命令提示選項。貢獻者為 Saurabh Kumar,請見 PR#115。
2.2.1 (2016-01-30)¶
當使用 xdist 而且程式碼覆蓋率大於等於
4.0
時,修復程式碼覆蓋率資料合併不正確的問題。
2.2.0 (2015-10-04)¶
新增支援,可在測試中變更工作目錄。先前變更工作目錄會在子處理序停用程式碼覆蓋率測量。
修復處理
--cov-report=annotate
時發生問題。
2.1.0 (2015-08-23)¶
新增支援 coverage 4.0b2。
新增
--cov-append
命令提示選項。貢獻者為 Christian Ledermann,請見 PR#80。
2.0.0 (2015-07-28)¶
新增 `--cov-fail-under`,類似 `cite{coverage-4.0}` 中新的 `fail_under` 選項(只要 `[report] fail_under = ...` 出現在 `.coveragerc` 中就會自動啟動)。
將
--cov-report=term
變更為自動升級至--cov-report=term-missing
,只要[run] show_missing = True
出現在.coveragerc
中。已更改
--cov
,因此可在沒有路徑引數的情況下使用(在此情況下,會使用.coveragerc
中的來源設定)。已修正 .pth 安裝,如此一來適用於所有情況(安裝、easy_install、輪盤、開發等)。
已修正 .pth 安裝解除,如此一來適用於輪盤安裝。
支援涵蓋範圍 4.0。
資料檔字尾已變更,以使用 coverage 的
data_suffix=True
選項(而不是自訂字尾)。避免顯示有關缺少涵蓋範圍資料的警告訊息(就像
coverage.control.process_startup
)。修正與 xdist 一起執行時的競爭狀態(所有工作人員都嘗試結合檔案)。此問題可能不存在於 pytest-cov 1.8.X 中。
1.8.2 (2014-11-06)¶
不適用