2010-09-24 24 views
22

हर बार जब मैं PHPUnit में एकल इकाई परीक्षण चलाता हूं, तो एक कोड कवरेज रिपोर्ट भी उत्पन्न होती है। मेरे पास काम पर एक पुराना कंप्यूटर है, और अगर मुझे इसकी आवश्यकता नहीं होने पर कोड कवरेज अक्षम कर सकता है, तो यह मेरे सीपीयू पर कम तनाव डाल देगा।क्या एक परीक्षण के लिए PHPUnit में कोड कवरेज को अक्षम करने का कोई तरीका है?

क्या प्रति-परीक्षण आधार पर कोड कवरेज को अक्षम करने का कोई तरीका है? मुझे कोई कमांड लाइन स्विच नहीं मिला जो यह करेगा।

+0

क्या आपने इसे XML कॉन्फ़िगरेशन में करने का प्रयास किया है? –

उत्तर

22

कैसे अपने phpunit.xml की एक प्रति है, जिससे इसे से <logging> छंद को हटाने, तो करने के बारे में:

phpunit --configuration new.xml 
+0

वाह, मुझे नहीं पता था कि यह इतना आसान था। मुझे लगता है कि जब मैं एक पूरा टेस्ट बना रहा हूं तो मैं एक अलग कॉन्फ़िगरेशन फ़ाइल का उपयोग कर सकता हूं। जब मैं पूरा सूट चला रहा हूं। –

+3

मैंने अपनी एक्सएमएल फ़ाइल को केवल पर पैरा करना समाप्त कर दिया ... अब यह बिजली तेज करता है। इच्छा है कि मैं इसे जल्द ही जानूंगा! –

+0

मुझे एक शेल स्क्रिप्ट मिली है जो 'phpunit-FAST.xml' कॉन्फ़िगरेशन के साथ PHPunit चलाती है - यह कोड कवरेज नहीं करती है, और स्रोत में '@groupname' के साथ चिह्नित कुछ बड़े परीक्षणों को भी बहिष्कृत करती है। यह मेरे अधिकांश परीक्षण 2 सेकंड में चलाता है। कवरेज और अन्य सभी परीक्षणों के साथ-साथ, 2.5minutes। –

30

इस के बाद से गूगल शीर्ष परिणामों में से एक है, मुझे लगता है कि यह समझ में आता है कि बाहर बात करने के लिए चूंकि संस्करण 4.8 PHPUnit अब आपको xml कॉन्फ़िगरेशन को ओवरराइड करने के लिए --no-coverage विकल्प का समर्थन करता है।

https://github.com/sebastianbergmann/phpunit/blob/master/ChangeLog-4.8.md

+1

यह स्वीकार्य उत्तर – OnIIcE

+0

नहीं होना चाहिए, यह स्वीकार्य उत्तर नहीं होना चाहिए। प्रश्न "एक परीक्षण के लिए PHPUnit में कोड कवरेज को अक्षम करने का एक तरीका" था और सभी परीक्षणों के एक रन के लिए कोड कवरेज को अक्षम करने के लिए नहीं था। –

+1

@ सेबेस्टियनबर्गम सवाल यह भ्रमित कर रहा है, क्योंकि यह कहता है कि वह एक परीक्षण के लिए कोड कवरेज को अक्षम करना चाहता है, जब उसे पुराने कंप्यूटर के बाद इसकी आवश्यकता नहीं होती है। एक कमांड लाइन का भी उल्लेख किया गया है। मैं स्पष्ट नहीं था लेकिन विचार एक एकल परीक्षण चलाते समय '--no-cover' का उपयोग करना है (जिसे मैंने मान लिया था कि उपयोगकर्ता कर रहा था) –

1

आप @coversNothing के साथ एक परीक्षण वर्ग या परीक्षा पद्धति टिप्पणी कर सकते हैं। परीक्षा तब कोड कवरेज रिपोर्ट में योगदान नहीं देती है। हालांकि, कोड कवरेज डेटा अभी भी एकत्रित किया जाएगा (निष्पादन धीमा कर देगा)। मैं भविष्य में इसे अनुकूलित करने की योजना बना रहा हूं।

संबंधित मुद्दे