2013-06-18 6 views
14

में पाइथन unittest परिणाम प्रदर्शित करें मैं एक पायथनिक उपकरण लिख रहा हूं जो एक निश्चित प्रणाली की शुद्धता को मान्य करता है। प्रत्येक मान्यता एक अजगर unittest रूप में लिखा है, और रिपोर्ट लगता है:, गैर Pythonists के लिए विशेष रूप सेअच्छा, टैब्यूलर फॉर्म

test_exclude_list_not_empty (__main__.TestRepoLists) 
Assert the the exclude list is not empty ... ok 
test_include_list_not_empty (__main__.TestRepoLists) 
Assert the the include list is not empty ... ok 
test_repo_list_not_empty (__main__.TestRepoLists) 
Assert the the repo list is not empty ... ok 

मेरी राय में, इस प्रारूप को पढ़ने के लिए कठिन है। वहाँ किसी भी रिपोर्ट जनरेटर है कि एक अच्छा, सारणी के रूप में रिपोर्ट जेनरेट कर सकते, उदा .:

+----------------------------------------------------------------+-----------+ 
| Test               | Status | 
+----------------------------------------------------------------+-----------+ 
| Assert the the exclude list is not empty      | OK  | 
| Assert the the include list is not empty      | OK  | 
| Assert the the repo list is not empty       | OK  | 
| All the items in the include list should be in the repo list | OK  | 
+----------------------------------------------------------------+-----------+ 

स्पष्टीकरण टेस्ट स्वीट एक दूरस्थ टर्मिनल पर चलता है, इसलिए मैं कमांड लाइन रिपोर्टिंग उपकरण पसंद करते हैं।

उत्तर

22

यह ठीक नहीं है कि तुम क्या कह रहे हैं, लेकिन वहाँ वहाँ एक पठनीय परीक्षण उत्पादन होने के लिए कई विकल्प हैं:

  • HTMLTestRunner एक सारणी के रूप में एचटीएमएल परीक्षण रिपोर्ट का उपयोग करने के लिए आसान उत्पन्न करता है। Here एक नमूना रिपोर्ट है।
  • nose-html-output प्लगइन nose परीक्षण धावक
  • unittest-xml-reporting के लिए - एक्सएमएल तरह JUnit साथ PyUnit आधारित परीक्षण धावक रिपोर्टिंग
  • --with-xunit विकल्प JUnit एक्सएमएल शैली रिपोर्ट को पढ़ने और परिवर्तित करने के लिए इतना आसान नहीं है का उत्पादन करेगा के साथ नाक

यह भी देखें:

आप कंसोल में एक सारणी के रूप में परीक्षण के परिणाम को देखने के लिए वैसे भी चाहते हैं (उत्पादन रंग परिणाम भी पठनीय बना सकते हैं), मुझे लगता है कि एक अच्छा विचार है अपने own nose plugin लिखने के लिए होगा या unittest.TestProgram पर आधारित परीक्षण धावक के रूप में यह HTMLTestRunner में किया गया था।

उम्मीद है कि मदद करता है।

+0

+1 धन्यवाद। इनमें से कोई टर्मिनल खोल के लिए प्रासंगिक है? –

+1

अच्छी तरह से, आप सर्वर-साइड पर इनमें से किसी भी XML/html उत्पादन उपकरण को इंस्टॉल कर सकते हैं और दूरस्थ टर्मिनल खोल पर उपयोग कर सकते हैं। लेकिन, इस मामले में आपको ब्राउज़र में उन्हें देखने के लिए पहले रिपोर्ट डाउनलोड करने की आवश्यकता होगी। या, वैकल्पिक रूप से, आप कंसोल में सही रिपोर्ट देखने के लिए [lynx] ​​(http://lynx.browser.org/) जैसे टेक्स्ट-आधारित वेब ब्राउज़र का उपयोग कर सकते हैं। – alecxe

+0

इससे मामलों को खत्म हो जाएगा। मुझे लगता है कि खोल के भीतर एक सरल सारणी करेगा। –

4

Twisted's Trial पर एक नज़र डालें।

Trial's reporting

यह निम्न है:

डिफ़ॉल्ट रूप से, यह TreeReporter परीक्षण धावक है, जो लगता है कि का उपयोग करता है

  • यह एक कमांड लाइन रिपोर्ट है, बस चलाने:

    trial test_name.py

  • रंगीन आउटपुट: विफलता के लिए लाल, सफलता के लिए हरा

  • रिपोर्ट संरचना जैसे पेड़ का उपयोग करती है। यह उन टेस्टकेस के तहत परीक्षण प्रदर्शित करता है, जो आपको एक विशिष्ट परीक्षण खोजने के लिए परिणामों को जल्दी से पार करने की इजाजत देता है।(हालांकि यह कुछ और reports प्रदान करता है)।

  • इसमें पाइथन के unittest.TestCase से प्राप्त एक परीक्षण लाइब्रेरी भी शामिल है। आप twisted.trial.unittest.TestCase उपclassing द्वारा इस पुस्तकालय का उपयोग कर सकते हैं। यह कुछ और assertion methods प्रदान करता है।

  • इसमें आपके परीक्षणों के लिए कथन कवरेज उत्पन्न करने का विकल्प शामिल है।

6

मैं अपनी जानकारी एलेक्स के उत्तर में टिप्पणी के रूप में जोड़ना चाहता हूं, लेकिन मेरे पास पर्याप्त प्रतिष्ठा नहीं है।

किसी को अभी भी एक उत्तर की तलाश में, मैंने HTMLTestRunner को एक साधारण टेस्टरुनर में फंसाया, जिसमें एक सारणीबद्ध, रंगीन, टर्मिनल-अनुकूल आउटपुट है।

मैं या तो छवियों पोस्ट करने के लिए पर्याप्त प्रतिष्ठा नहीं है, इसलिए, यहाँ एक कड़ी है: यह इसके उत्पादन का एक नमूना है https://gist.github.com/viniciusd/73e6eccd39dea5e714b1464e3c47e067

पर http://i.stack.imgur.com/upSC0.png

स्रोत कोड है मैं फिर से लिखने करेगा यह जल्द ही खरोंच से लेकिन आउटपुट प्रारूप को बनाए रखने से।

+0

स्रोत कोड लिंक अब काम नहीं करता है। क्या आपके पास साझा करने के लिए एक अद्यतन लिंक है? – Deep

+0

कृपया लिंक अपडेट करें :( –

+0

ठीक है, मैं इसे गस्ट पर होस्ट कर रहा हूं, जबकि मैं गिथब पर एक अच्छा भंडार सेट नहीं करता –

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