2014-04-06 16 views
8

के साथ परीक्षण कवरेज निर्धारित करना py.test + gevent का उपयोग करते समय कोई सटीक परीक्षण कवरेज रिपोर्ट कैसे प्राप्त कर सकता है?py.test + gevent

प्लगइन py.test के लिए प्लगइन का उपयोग करके मैंने पहले ही स्पष्ट चीज़ की कोशिश की है, लेकिन यह generates inaccurate reports when gevent is in use है।

+0

+1 मेरे पास एक ही समस्या है ... मैंने गिट + https: //github.com/newbrough/coverage.git का उपयोग करने की कोशिश की और वास्तव में बहुत अच्छा काम किया लेकिन हाल ही में सबसे पुरानी शिकायत कर रही है कि संस्करण बहुत पुराना है और विफल रहता है। –

उत्तर

5

gevent coverage issue हाल ही में coveragepy में तय किया गया था।

हालांकि, pytest-covcoverage>=4 के साथ चलाने में विफल रहता है।

एक संभावित फिक्स py.testcoverage.py के बाद के संस्करणों के साथ pytest-cov प्लगइन का उपयोग किए बिना चलाने के लिए है।

पहले, coverage >= 4 स्थापित करने और pytest-cov प्लगइन की स्थापना रद्द करें:

pip install --pre --upgrade coverage 
pip uninstall pytest-cov 

जोड़े .coveragerc में निम्नलिखित सेटिंग:

coverage run -m py.test 

(के बजाय:

[run] 
concurrency = gevent 

फिर से चलाने के नियमित py.test रन)

+0

यह मेरे लिए बिल्कुल शानदार काम करता है। –