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

विषय - सूची:

Anonim

इस जावास्क्रिप्ट यूनिट परीक्षण ट्यूटोरियल में, हम सीखेंगे:

जावास्क्रिप्ट क्या है?

  • जावास्क्रिप्ट एक प्रोग्रामिंग भाषा है जिसे HTML वेब अनुप्रयोगों के साथ उच्च स्तर, गतिशील और व्याख्या की गई भाषा के रूप में परिभाषित किया गया है
  • जावास्क्रिप्ट का उपयोग वेब दस्तावेज़ों जैसे पीडीएफ और डेस्कटॉप विजेट के अलावा अन्य के लिए भी किया जाता है और सर्वर-साइड वेब एप्लिकेशन के लिए लोकप्रिय हो जाता है
  • जावास्क्रिप्ट ऑब्जेक्ट-आधारित स्क्रिप्ट है और प्रोटोटाइप का अनुसरण करता है

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

जावास्क्रिप्ट यूनिट टेस्टिंग एक परीक्षण विधि है जिसमें एक वेब पेज या वेब एप्लिकेशन मॉड्यूल के लिए लिखे गए जावास्क्रिप्ट टेस्ट कोड को HTML के साथ एक इनलाइन इवेंट हैंडलर के रूप में संयोजित किया जाता है और यह देखने के लिए ब्राउज़र में निष्पादित किया जाता है कि क्या सभी कार्यक्षमताएँ ठीक हैं। इन इकाई परीक्षणों का परीक्षण सूट में आयोजित किया जाता है।

प्रत्येक और प्रत्येक सुइट में एक अलग मॉड्यूल के लिए निष्पादित किए जाने वाले कई परीक्षण शामिल हैं। सबसे महत्वपूर्ण बात यह है कि वे किसी भी अन्य मॉड्यूल के साथ संघर्ष नहीं करते हैं और एक दूसरे पर कम निर्भरता के साथ चलते हैं (कुछ महत्वपूर्ण स्थितियों पर निर्भरता हो सकती है)।

जावास्क्रिप्ट यूनिट परीक्षण में चुनौतियां

कुछ समस्याएं हैं जो जावास्क्रिप्ट में यूनिट परीक्षण करते समय मिल सकती हैं जैसे कि;

  1. कई अन्य भाषाएँ ब्राउज़र में यूनिट टेस्टिंग का समर्थन करती हैं, स्थिर के साथ-साथ रनटाइम वातावरण में भी लेकिन जावास्क्रिप्ट नहीं कर सकती हैं
  2. आप अन्य भाषाओं के साथ कुछ सिस्टम क्रियाओं को समझ सकते हैं, लेकिन जावास्क्रिप्ट के साथ ऐसा नहीं है
  3. कुछ जावास्क्रिप्ट एक वेब अनुप्रयोग के लिए लिखे गए हैं कई निर्भरता हो सकती है
  4. जावास्क्रिप्ट वेब पर के बजाय HTML और सीएसएस के साथ संयोजन में उपयोग करने के लिए अच्छा है
  5. पेज रेंडरिंग और DOM मैनिपुलेशन की दिक्कतें
  6. कभी-कभी आपको अपनी स्क्रीन पर त्रुटि संदेश मिलता है, जैसे 'उदाहरण के लिए लोड करने में असमर्थ। जेएस' या संस्करण नियंत्रण के बारे में किसी अन्य जावास्क्रिप्ट त्रुटि के कारण, ये कमजोरियां यूनिट टेस्टिंग जावास्क्रिप्ट के अंतर्गत आती हैं।

इस तरह के मुद्दों से बचने के लिए आप क्या कर सकते हैं;

  1. वैश्विक चर का उपयोग न करें
  2. पूर्वनिर्धारित वस्तुओं में हेरफेर न करें
  3. पुस्तकालय के आधार पर डिजाइन कोर कार्यक्षमताओं
  4. कम निर्भरता के साथ कार्यात्मकताओं के छोटे टुकड़े बनाने की कोशिश करें

बेस्ट जावास्क्रिप्ट यूनिट टेस्टिंग फ्रेमवर्क

निम्नलिखित लोकप्रिय जावास्क्रिप्ट यूनिट टेस्टिंग फ्रेमवर्क और टूल्स की एक क्यूरेटेड सूची है, जिनका व्यापक रूप से उपयोग किया जाता है:

1. Unit.js: इसे ब्राउज़र और Node.js. पर चलने वाले एक ओपन सोर्स एस्क्रीशन लाइब्रेरी के रूप में जाना जाता है। यह अन्य जावास्क्रिप्ट यूनिट टेस्टिंग फ्रेमवर्क जैसे मोचा, कर्मा, जैस्मीन, क्वनीट, प्रोट्रैक्टर, आदि के साथ बेहद अनुकूल है, यह पूर्णतया डॉक्यूमेंटेड एपीआई ऑफ एश्योरेंस सूची प्रदान करता है।

2. QUnit: इसका उपयोग क्लाइंट-साइड और सर्वर-साइड जावास्क्रिप्ट यूनिट टेस्टिंग दोनों के लिए किया जाता है। यह नि: शुल्क जावास्क्रिप्ट परीक्षण रूपरेखा jQuery परियोजनाओं के लिए प्रयोग किया जाता है। यह जावास्क्रिप्ट में यूनिट परीक्षण के लिए सामान्य जेएस इकाई परीक्षण विशिष्टता का अनुसरण करता है। यह Node दीर्घकालिक समर्थन अनुसूची का समर्थन करता है।

3. जैस्मीन: जैस्मीन यूनिट टेस्ट जावास्क्रिप्ट के लिए व्यवहार चालित विकास ढांचा है। इसका उपयोग सिंक्रोनस और एसिंक्रोनस जावास्क्रिप्ट कोड दोनों के परीक्षण के लिए किया जाता है। इसके लिए DOM की आवश्यकता नहीं होती है और यह आसान सिंटैक्स के साथ आता है जिसे किसी भी परीक्षा के लिए लिखा जा सकता है।

4. कर्म: कर्म एक खुला स्रोत उत्पादक परीक्षण वातावरण है। आसान वर्कफ़्लो कंट्रोल कमांड लाइन पर चल रहा है। जैस्मीन, मोचा और क्विट के साथ परीक्षण लिखने की स्वतंत्रता प्रदान करता है। आप आसान डिबगिंग के साथ वास्तविक उपकरणों पर परीक्षण चला सकते हैं।

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

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

7. एवीए: एवीए सरल जावास्क्रिप्ट यूनिट टेस्टिंग फ्रेमवर्क है। टेस्ट समानांतर और क्रमिक रूप से चलाए जा रहे हैं। समानांतर परीक्षण एक दूसरे को बाधित किए बिना चलते हैं। AVA अतुल्यकालिक परीक्षण के रूप में अच्छी तरह से समर्थन करता है। एवीए यूनिट टेस्ट जावास्क्रिप्ट चलाने के लिए उपप्रोसेस का उपयोग करता है।

सारांश

  • जावास्क्रिप्ट यूनिट परीक्षण कभी-कभी थकाऊ और मुश्किल हो सकता है क्योंकि यह मूल रूप से फ्रंट-एंड के लिए किया जाता है। थोड़ी आसानी जोड़ने के लिए जेएस पुस्तकालयों का उपयोग कर सकते हैं। यह चुनौती और बड़ी हो सकती है क्योंकि Node.js और टाइपस्क्रिप्ट के साथ जावास्क्रिप्ट को शामिल किया जा रहा है।
  • परीक्षण करते समय आपको तीन बातों को ध्यान में रखना चाहिए जैसे; वह विशेषता जिसे परीक्षण करने की आवश्यकता है, अंतिम आउटपुट और अपेक्षित आउटपुट। कुछ उपकरण और जावास्क्रिप्ट परीक्षण ढांचा आपको इस कार्य को करने में मदद कर सकते हैं। उपर्युक्त टूल सूचियों का उल्लेख यूनिट टेस्टिंग जावास्क्रिप्ट के लिए उपयोग किए जाने वाले सबसे लोकप्रिय और उपयोगी रूपरेखाओं के साथ किया गया है।
  • भविष्य में परीक्षण करने में आने वाली चुनौतियों से अधिक, कुछ और शक्तिशाली ढांचे और उपकरण भविष्य में विकसित हो सकते हैं।