py.test - क्लाउड में ऑनलाइन

यह कमांड py.test है जिसे हमारे कई मुफ्त ऑनलाइन वर्कस्टेशन जैसे कि उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर का उपयोग करके ऑनवर्क्स फ्री होस्टिंग प्रदाता में चलाया जा सकता है।

कार्यक्रम:

नाम


पाइटेस्ट - पाइटेस्ट उपयोग

कॉलिंग पीवाई.टेस्ट के माध्यम से अजगर -M पीवाई.टेस्ट


संस्करण 2.0 में नया।

यदि आप Python-2.5 या बाद के संस्करण का उपयोग करते हैं तो आप Python दुभाषिया के माध्यम से परीक्षण शुरू कर सकते हैं
कमांड लाइन:

पायथन -एम पाइटेस्ट [...]

यह कमांड लाइन स्क्रिप्ट को लागू करने के बराबर है py.परीक्षण [...] सीधे.

मिल रहा मदद ON संस्करण, विकल्प नाम, वातावरण चर


py.test --version # दिखाता है कि pytest कहाँ से आयात किया गया था
py.test --fixtures # उपलब्ध अंतर्निहित फ़ंक्शन तर्क दिखाएं
py.test -h | --help # कमांड लाइन और कॉन्फिग फ़ाइल विकल्पों पर सहायता दिखाएं

रोक बाद THE प्रथम (या N) विफलताएं


पहली (एन) विफलताओं के बाद परीक्षण प्रक्रिया को रोकने के लिए:

py.test -x # पहली विफलता के बाद रुकें
py.test --maxfail=2 # दो विफलताओं के बाद रुकें

निर्दिष्ट करना परीक्षण / का चयन परीक्षण


कई परीक्षण चलाने के विकल्प:

py.test test_mod.py # मॉड्यूल में परीक्षण चलाएँ
py.test somepath # somepath के नीचे सभी परीक्षण चलाएँ
py.test -k stringexpr # केवल उन नामों के साथ परीक्षण चलाएं जो मेल खाते हों
# "स्ट्रिंग अभिव्यक्ति", उदाहरण के लिए "MyClass और विधि नहीं"
# TestMyClass.test_something का चयन करेगा
# लेकिन TestMyClass.test_method_simple नहीं
py.test test_mod.py::test_func # केवल वही परीक्षण चलाएं जो "नोड आईडी" से मेल खाते हों,
# उदाहरण के लिए "test_mod.py::test_func" का चयन करेंगे
# test_mod.py में केवल test_func
py.test test_mod.py::TestClass::test_method # एकल विधि चलाएँ
#एकल वर्ग

'pkg' आयात करें और परीक्षण ढूंढने और चलाने के लिए इसके फ़ाइल सिस्टम स्थान का उपयोग करें:

py.test --pyargs pkg # pypkg की निर्देशिका के नीचे पाए गए सभी परीक्षण चलाएँ

संशोधित करने अजगर वापस ट्रेस करें मुद्रण


ट्रेसबैक प्रिंटिंग को संशोधित करने के उदाहरण:

py.test --showlocals # ट्रेसबैक में स्थानीय चर दिखाएं
py.test -l # स्थानीय चर दिखाएं (शॉर्टकट)

py.test --tb=long # डिफ़ॉल्ट सूचनात्मक ट्रेसबैक स्वरूपण
py.test --tb=native # पायथन मानक लाइब्रेरी स्वरूपण
py.test --tb=short # एक छोटा ट्रेसबैक प्रारूप
py.test --tb=line # प्रति विफलता केवल एक पंक्ति

छोड़ने सेवा मेरे पी डी बी (पायथन डिबगर) ON विफलताएं


पायथन एक बिल्ट-इन पायथन डिबगर के साथ आता है जिसे कहा जाता है पी डी बी. पाइटेस्ट किसी को भी इसमें उतरने की अनुमति देता है
la पी डी बी कमांड लाइन विकल्प के माध्यम से संकेत दें:

py.test --pdb

यह प्रत्येक विफलता पर पायथन डिबगर को लागू करेगा। अक्सर आप केवल यही करना चाहते होंगे
किसी निश्चित विफलता की स्थिति को समझने के लिए यह पहला असफल परीक्षण है:

py.test -x --pdb # पहली विफलता पर पीडीबी पर छोड़ें, फिर परीक्षण सत्र समाप्त करें
py.test --pdb --maxfail=3 # पहली तीन विफलताओं के लिए PDB पर छोड़ें

ध्यान दें कि किसी भी विफलता पर अपवाद जानकारी संग्रहीत की जाती है sys.last_value,
sys.last_type और sys.last_traceback. इंटरैक्टिव उपयोग में, यह किसी को इसमें शामिल होने की अनुमति देता है
किसी भी डिबग टूल से पोस्टमॉर्टम डिबगिंग। कोई व्यक्ति अपवाद को मैन्युअल रूप से भी एक्सेस कर सकता है
जानकारी, उदाहरण के लिए:

>>>आयात sys
>>> sys.last_traceback.tb_lineno
42
>>> sys.last_value
अभिकथनत्रुटि ('परिणाम पर जोर दें == "ठीक है"',)

स्थापना A ब्रेक पॉइंट / उर्फ SET_TRACE()


यदि आप ब्रेकप्वाइंट सेट करना चाहते हैं और दर्ज करना चाहते हैं pdb.set_trace() आप एक सहायक का उपयोग कर सकते हैं:

पाइटेस्ट आयात करें
डीईएफ़ परीक्षण_फ़ंक्शन():
...
pytest.set_trace() # पीडीबी डिबगर और ट्रेसिंग को लागू करें

पाइटेस्ट संस्करण 2.0.0 से पहले आप केवल प्रवेश कर सकते थे पी डी बी यदि आपने कैप्चरिंग अक्षम कर दी है तो ट्रेस करना
के माध्यम से कमांड लाइन पर py.परीक्षण -s. बाद के संस्करणों में, पाइटेस्ट स्वचालित रूप से इसे अक्षम कर देता है
जब आप प्रवेश करते हैं तो आउटपुट कैप्चर होता है पी डी बी अनुरेखण:

· अन्य परीक्षणों में आउटपुट कैप्चर प्रभावित नहीं होता है।

· कोई भी पूर्व परीक्षण आउटपुट जिसे पहले ही कैप्चर कर लिया गया है और उसे इस प्रकार संसाधित किया जाएगा।

· उसी परीक्षण के भीतर उत्पन्न किसी भी बाद के आउटपुट को कैप्चर नहीं किया जाएगा और इसके बजाय प्राप्त किया जाएगा
सीधे भेजा गया sys.stdout. ध्यान दें कि यह परीक्षण आउटपुट के लिए भी सत्य है
इंटरैक्टिव से बाहर निकलने के बाद पी डी बी ट्रेसिंग सत्र और नियमित परीक्षण जारी रखें
चलाते हैं.

पाइटेस्ट संस्करण 2.4.0 के बाद से आप देशी पायथन का भी उपयोग कर सकते हैं आयात पीडीबी;पीडीबी.सेट_ट्रेस()
प्रवेश करने के लिए कॉल करें पी डी बी का उपयोग किए बिना ट्रेसिंग pytest.set_trace() आवरण या
पाइटेस्ट के आउटपुट कैप्चरिंग को स्पष्ट रूप से अक्षम करें py.परीक्षण -s.

रूपरेखा टेस्ट कार्यान्वयन अवधि में


सबसे धीमी 10 परीक्षण अवधियों की सूची प्राप्त करने के लिए:

py.test--अवधि=10

बनाना JUNITXML FORMAT फ़ाइलें


परिणाम फ़ाइलें बनाने के लिए जिन्हें पढ़ा जा सके हडसन या अन्य सतत एकीकरण
सर्वर, इस आह्वान का उपयोग करें:

py.test --junitxml=पथ

एक XML फ़ाइल बनाने के लिए पथ.

रिकॉर्ड_एक्सएमएल_प्रॉपर्टी
संस्करण 2.8 में नया।

यदि आप किसी परीक्षण के लिए अतिरिक्त जानकारी लॉग करना चाहते हैं, तो आप इसका उपयोग कर सकते हैं रिकॉर्ड_एक्सएमएल_प्रॉपर्टी
स्थिरता:

डीईएफ़ परीक्षण_फ़ंक्शन(रिकॉर्ड_एक्सएमएल_प्रॉपर्टी):
रिकॉर्ड_एक्सएमएल_प्रॉपर्टी("example_key", 1)
दावा 0

इससे एक अतिरिक्त संपत्ति जुड़ जाएगी उदाहरण_कुंजी='1' उत्पन्न करने के लिए परीक्षण का मामला टैग:







चेतावनी:
यह एक प्रायोगिक सुविधा है, और इसके इंटरफ़ेस को किसी और चीज़ से बदला जा सकता है
भविष्य के संस्करणों में शक्तिशाली और सामान्य। कार्यक्षमता प्रति-से-रखी जाएगी,
तथापि।

वर्तमान में इसके साथ प्रयोग करने पर यह काम नहीं करता है pytest-xdist प्लगइन.

कृपया यह भी ध्यान दें कि इस सुविधा का उपयोग करने से कोई भी स्कीमा सत्यापन टूट जाएगा। यह
कुछ सीआई सर्वरों के साथ प्रयोग करने पर समस्या हो सकती है।

बनाना परिणामलॉग FORMAT फ़ाइलें


सादा-पाठ मशीन-पठनीय परिणाम फ़ाइलें बनाने के लिए आप जारी कर सकते हैं:

py.test --resultlog=path

और सामग्री को देखें पथ जगह। ऐसी फ़ाइलों का उपयोग उदाहरण के लिए किया जाता है PyPy-परीक्षण
कई संशोधनों पर परीक्षण परिणाम दिखाने के लिए वेब पेज।

भेजना टेस्ट रिपोर्ट सेवा मेरे ऑनलाइन पेस्टेबिन सेवा


बनाना a यूआरएल एसटी से प्रत्येक परीक्षण विफलता:

py.test --pastebin=असफल

यह परीक्षण चलाने की जानकारी को दूरस्थ पेस्ट सेवा में सबमिट करेगा और प्रत्येक के लिए एक यूआरएल प्रदान करेगा
असफलता। आप सामान्य रूप से परीक्षण चुन सकते हैं या उदाहरण के लिए जोड़ सकते हैं -x यदि आप केवल एक भेजना चाहते हैं
विशेष विफलता.

बनाना a यूआरएल एसटी a पूरा का पूरा परीक्षण सत्र लॉग इन:

py.test --pastebin=all

वर्तमान में केवल चिपकाया जा रहा है http://bpaste.net सेवा क्रियान्वित है.

अक्षम करने प्लगइन्स


आह्वान के समय विशिष्ट प्लगइन्स को लोड करने को अक्षम करने के लिए, इसका उपयोग करें -p साथ में विकल्प
उपसर्ग में:.

उदाहरण: प्लगइन लोड करना अक्षम करना सबसे अच्छा, जो सिद्धांत को क्रियान्वित करने के लिए जिम्मेदार है
टेक्स्ट फ़ाइलों से परीक्षण, py.test को इस प्रकार प्रारंभ करें:

py.test -पी संख्या: doctest

कॉलिंग पीवाई.टेस्ट से अजगर कोड


संस्करण 2.0 में नया।

आप आह्वान कर सकते हैं पाइटेस्ट सीधे पायथन कोड से:

pytest.main()

यह ऐसे कार्य करता है मानो आप कमांड लाइन से "py.test" कॉल करेंगे। यह नहीं बढ़ेगा
सिस्टम से बाहर निकलें लेकिन इसके बजाय एग्ज़िटकोड लौटाएँ। आप विकल्प और तर्क दे सकते हैं:

pytest.main(['-x', 'mytestdir'])

या एक स्ट्रिंग में पास करें:

pytest.main("-x mytestdir")

आप अतिरिक्त प्लगइन निर्दिष्ट कर सकते हैं pytest.main:

#myinvoke.py की सामग्री
पाइटेस्ट आयात करें
क्लास मायप्लगइन:
def pytest_sessionfinish(स्वयं):
प्रिंट करें ("*** टेस्ट रन रिपोर्टिंग फिनिशिंग")

pytest.main("-qq", प्लगइन्स=[MyPlugin()])

इसे चलाने से पता चल जायेगा माईप्लगइन जोड़ा गया और उसका हुक लागू किया गया:

$ पायथन myinvoke.py
*** टेस्ट रन रिपोर्टिंग समापन

onworks.net सेवाओं का उपयोग करके py.test का ऑनलाइन उपयोग करें



नवीनतम Linux और Windows ऑनलाइन प्रोग्राम