![](/img/trans.png)
[英]code coverage of a file using coverage.py using a python script
[英]code coverage in python using coverage.py
我正在嘗試了解python腳本的運行范圍。 我無法理解我嘗試為具有無限循環的簡單腳本運行覆蓋率的情況:
#!/usr/bin/python
print "The only statement!!!"
while True:
pass
在調用此腳本的覆蓋范圍后,由於這是一個無限循環,因此我將終止此過程,如果我嘗試獲得結果,我將得到:
Name Stmts Miss Cover Missing -------------------------------------
我沒有任何覆蓋率報告。 我在做一些根本上是錯誤的事情嗎?
coverage
需要能夠在程序結束時將其數據寫出,並且如果它不能處理退出信號,那么它將不會生成報告。
因此,這取決於您如何終止進程以及coverage
如何處理信號-使用Ctrl + C(即發送SIGINT)來中斷sample.py
時,對我來說效果很好
$ coverage run sample.py
The only statement!!!
Traceback (most recent call last):
File "sample.py", line 5, in <module>
while True:
KeyboardInterrupt
$ coverage report -m
Name Stmts Miss Cover Missing
--------------------------------------
sample 3 0 100%
如果使用不帶任何選項的kill
實用程序,則默認情況下將發送SIGTERM,請嘗試使用kill -INT <pid>
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.