"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > यूनिट टेस्ट फ्रेमवर्क - पायथन में यूनिटटेस्ट

यूनिट टेस्ट फ्रेमवर्क - पायथन में यूनिटटेस्ट

2024-11-08 को प्रकाशित
ब्राउज़ करें:368

Unit test framework - unittest in Python

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

यूनिटटेस्ट फ्रेमवर्क की मुख्य विशेषताएं

  1. टेस्ट केस: यूनिटटेस्ट.टेस्टकेस को उपवर्गित करके एक टेस्ट केस बनाया जाता है। कक्षा में test_ से शुरू होने वाली प्रत्येक विधि को एक परीक्षण माना जाता है।

  2. अभिकथन: यह ढांचा अपेक्षित परिणामों की जांच करने के लिए विभिन्न प्रकार के दावे के तरीके प्रदान करता है, जैसे किassertEqual,assertTrue,assertFalse, आदि।

  3. टेस्ट रनर: फ्रेमवर्क में एक टेस्ट रनर शामिल होता है जो परीक्षण चलाता है और परिणामों की रिपोर्ट करता है।

यूनिट टेस्ट की मूल संरचना

  1. यूनिटेस्ट मॉड्यूल आयात करें: यूनिटटेस्ट लाइब्रेरी आयात करके प्रारंभ करें।

  2. एक टेस्ट केस बनाएं: एक वर्ग को परिभाषित करें जो Unittest.TestCase से प्राप्त होता है।

  3. परीक्षण विधियों को परिभाषित करें: प्रत्येक विधि को test_ से शुरू करना चाहिए और अपेक्षित व्यवहार की जांच करने के लिए दावे शामिल होने चाहिए।

  4. परीक्षण चलाएँ: यदि स्क्रिप्ट सीधे निष्पादित होती है तो परीक्षण चलाने के लिए Unittest.main() का उपयोग करें।

सरल उदाहरण

यहां एक सीधा उदाहरण है जो दर्शाता है कि एक साधारण फ़ंक्शन का परीक्षण करने के लिए यूनिटटेस्ट ढांचे का उपयोग कैसे करें।

परीक्षण किया जाने वाला फ़ंक्शन

सबसे पहले, आइए एक सरल फ़ंक्शन बनाएं जिसका हम परीक्षण करेंगे:

Math_functions.py

def add(a, b):
वापसी ए बी

deftract(a, b):
वापसी ए - बी

फ़ंक्शन के लिए यूनिट टेस्ट

अब, हम जोड़ने और घटाने के कार्यों के लिए एक इकाई परीक्षण बनाएंगे:

test_math_functions.py

आयात यूनिटटेस्ट
गणित_फंक्शन से आयात जोड़ें, घटाएं # परीक्षण किए जाने वाले फ़ंक्शन आयात करें

क्लास टेस्टमैथफंक्शन(unittest.TestCase):

def test_add(self):
    self.assertEqual(add(2, 3), 5)          # Test case: 2   3 = 5
    self.assertEqual(add(-1, 1), 0)         # Test case: -1   1 = 0
    self.assertEqual(add(0, 0), 0)          # Test case: 0   0 = 0

def test_subtract(self):
    self.assertEqual(subtract(5, 3), 2)     # Test case: 5 - 3 = 2
    self.assertEqual(subtract(-1, -1), 0)   # Test case: -1 - (-1) = 0
    self.assertEqual(subtract(0, 5), -5)    # Test case: 0 - 5 = -5

यदि नाम == 'मुख्य':
Unittest.main()

यूनिट टेस्ट का स्पष्टीकरण

  1. आयात विवरण:

आयात यूनिटटेस्ट: यूनिटटेस्ट मॉड्यूल आयात करता है।

math_functions से जोड़ें, घटाएं आयात करें: उन फ़ंक्शनों को आयात करता है जिनका हम परीक्षण करना चाहते हैं।

  1. एक टेस्ट केस बनाना:

class TestMathFunctions(unittest.TestCase): एक टेस्ट केस क्लास को परिभाषित करता है जो Unittest.TestCase से प्राप्त होता है।

  1. परीक्षण विधियों को परिभाषित करना:

test_ से शुरू होने वाली प्रत्येक विधि एक अलग परीक्षण का प्रतिनिधित्व करती है।

प्रत्येक परीक्षण विधि के अंदर, self.assertEqual() जांच करता है कि फ़ंक्शन का आउटपुट अपेक्षित मान से मेल खाता है या नहीं।

  1. परीक्षण चलाना:

if name == 'main': Unittest.main(): यह लाइन स्क्रिप्ट को सीधे निष्पादित होने पर परीक्षण चलाने की अनुमति देती है।

परीक्षण चलाना

परीक्षण चलाने के लिए, बस test_math_functions.py स्क्रिप्ट निष्पादित करें। आप इसे कमांड लाइन से कर सकते हैं:

पायथन test_math_functions.py

आउटपुट

यदि सभी परीक्षण पास हो जाते हैं, तो आपको इसके समान आउटपुट दिखाई देगा:

..

0.001 सेकंड में 2 परीक्षण चलाए

ठीक है

यह इंगित करता है कि test_add और test_subtract दोनों विधियां सफलतापूर्वक पारित हो गईं। यदि कोई दावा विफल हो जाता है, तो यूनिटटेस्ट विफलता की रिपोर्ट करेगा, जिसमें दिखाया जाएगा कि कौन सा परीक्षण विफल हुआ और क्यों।

निष्कर्ष

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

विज्ञप्ति वक्तव्य यह लेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/mrcaption49/crud-functionality-in-django-19n2?1 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.com से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3