簡體   English   中英

Nosetest覆蓋范圍未顯示以Test開頭的類

[英]Nosetest coverage not showing classes starting with Test

我使用以下命令使用鼻子測試生成覆蓋報告:

nosetests --exe --with-coverage --cover-html --cover-package=Mypackage Tests/

在我的測試中,Im使用了一些類,幾乎找到了所有類,除了那些稱為:

TestCasesFilter

經過一番嘗試,我發現當我將該類重命名為其他名稱時,例如OneTestCasesFilter,該類將添加到覆蓋率報告中。 我們的命名約定要求我們在寫入的datbase表之后命名該類,在這種情況下為TestCases。 是否可以在不重命名課程的情況下將課程添加到覆蓋率報告?

我正在使用:

python 2.7.14
coverage 4.4.1
nose 1.3.7

背景

我的設置與您的設置有些不同,但是我遇到了類似的問題。 我的python包的根目錄中有一個setup.cfg文件,看起來像這樣:

[nosetests] with-coverage=1 cover-xml=1 cover-xml-file=coverage.xml cover-package=companyname

有了這個setup.cfg文件,我沒有看到鼻子測試最后出現的覆蓋率報告中出現了companyname / test_base.py。 但是,我在運行coverage report時看到了它,因此我知道正在收集數據。

我的修復

在查看文檔時,我看到了幾個可能要修復的選項。 通過將cover-tests=1添加到setup.cfg文件中,我能夠解決此問題。 文檔將該選項描述為

--cover-tests Include test modules in coverage report

看起來任何算法鼻子使用什么來確定什么是“測試”都不是很聰明,並且可能僅查看類名

您的修復

由於您使用命令行來傳遞選項,因此我認為您在調用鼻子測試時需要添加--cover-tests

暫無
暫無

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

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