簡體   English   中英

Travis上的Python子流程覆蓋

[英]Python sub-process coverage on Travis

我看過幾篇關於這個主題的文章,但似乎沒有一篇對我有用。

案子

一個 Python package 與基於unittest的測試, pytest作為測試運行器和插件,如pytest-cov來支持coverage 在本地一切正常,所有測試都執行並通過,計算所有測試的覆蓋率,包括使用subprocess.check_output的 CLI 測試。

問題

不知何故,在 Travis 方面,沒有為 CLI 測試計算覆蓋率。 無論我做什么,無論我在何處以及多少次包含coverage.pthsitecustomize.py在此處閱讀有關它的更多信息),都不包括CLI 的覆蓋范圍。

顯而易見的問題

我究竟做錯了什么?

作為對解決它所做的工作的回顧(對於可能需要答案的人),問題在於我的tox配置。

之前(雖然測試通過,但效果不佳)

[testenv]
# Some other config above this line
commands =
    pytest

之后(我真正做到了 100% 覆蓋)

[testenv]
# Some other config above this line
commands =
    coverage erase
    pip install -e .
    pytest

pip install -e. 顯然是這里的關鍵。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM