karma tutorial front end unit testing using karma test runner
यह ट्यूटोरियल बताता है कि कर्म और स्वचालित फ्रंट-एंड यूनिट टेस्टिंग को कर्मा के सेटअप के लिए कैसे किया जाता है, कर्म के लिए बुनियादी विन्यास विकल्प। फ़ाइल, आदि:
यह ट्यूटोरियल कर्मा और उसके कुछ संबद्ध उपकरणों का उपयोग करके सॉफ्टवेयर के फ्रंट-एंड के यूनिट टेस्टिंग को स्वचालित करने की प्रक्रिया को समझाता है।
हम जावास्क्रिप्ट लाइब्रेरी का उपयोग करके विकसित वेब अनुप्रयोगों के साथ शुरू करेंगे: ery जेकरी ’और जावास्क्रिप्ट रनटाइम: J NodeJS’; और बाद में हम कुछ JavaScript फ्रेमवर्क जैसे AngularJS और ReactJS को देखेंगे।
=>नीचे स्क्रॉल करेंकर्म ट्यूटोरियल की पूरी सूची देखने के लिए
आप क्या सीखेंगे:
- कर्म ट्यूटोरियल की सूची
- इस श्रृंखला में कर्म ट्यूटोरियल का अवलोकन
- फ्रंट-एंड यूनिट टेस्टिंग क्या है?
- कर्म परीक्षण धावक क्या है?
- NodeJS क्या है?
- कर्म कैसे स्थापित करें?
- कर्म प्रश्न
- निष्कर्ष
कर्म ट्यूटोरियल की सूची
ट्यूटोरियल # 1: कर्म ट्यूटोरियल: फ्रंट-एंड यूनिट टेस्टिंग कर्मा टेस्ट रनर का उपयोग करना
ट्यूटोरियल # 2: जैस्मीन फ्रेमवर्क ट्यूटोरियल उदाहरण सहित जैस्मीन Jquery
ट्यूटोरियल # 3: KARMA और JASMINE का उपयोग करके फ्रंट-एंड यूनिट परीक्षण पर नमूना परियोजना
इस श्रृंखला में कर्म ट्यूटोरियल का अवलोकन
ट्यूटोरियल # | आप क्या सीखेंगे |
---|---|
ट्यूटोरियल_ # 1: | कर्म ट्यूटोरियल: फ्रंट-एंड यूनिट टेस्टिंग कर्मा टेस्ट रनर का उपयोग करना यह परिचयात्मक ट्यूटोरियल कर्मा को सेटअप करने के लिए और कर्म का उपयोग करके फ्रंट-एंड यूनिट परीक्षण को स्वचालित करने के तरीके के बारे में बताता है, कर्म के लिए बुनियादी विन्यास विकल्प। जेएस फाइल आदि। |
ट्यूटोरियल_ # 2: | जैस्मीन फ्रेमवर्क ट्यूटोरियल उदाहरण सहित जैस्मीन Jquery इस ट्यूटोरियल में जैस्मीन टेस्टिंग फ्रेमवर्क और इसके निर्माण शामिल हैं। जैस्मिन-जेकरी पैकेज के बारे में भी जानें जो जैस्मिन को टेस्ट जेकरी एप्लिकेशन तक बढ़ाता है। |
ट्यूटोरियल_ # 3: | KARMA और JASMINE का उपयोग करके फ्रंट-एंड यूनिट परीक्षण पर नमूना परियोजना यह ट्यूटोरियल दिखाता है कि कर्म और चमेली के उपयोग से एक नमूना परियोजना के लिए परीक्षण चश्मा कैसे लिखें। आप यह भी जल्दी से सीखेंगे कि अन्य उपकरण जैसे कि गल्प, ब्राउजर का उपयोग कैसे करें। |
फ्रंट-एंड यूनिट टेस्टिंग क्या है?
किसी भी सॉफ्टवेयर सिस्टम का फ्रंट-एंड बस एक इंटरफेस है, जहां यूजर सिस्टम द्वारा दी गई सभी फंक्शन्स को एक्सेस करता है। सर्वश्रेष्ठ उपयोगकर्ता अनुभव की गारंटी देने के लिए, यह सुनिश्चित करने की आवश्यकता है कि फ्रंट-एंड डेवलपर्स ने सभी उपयोगकर्ता आवश्यकताओं को ध्यान में रखते हुए फ्रंट-एंड को कोडित किया है।
इसे लागू करने का एकमात्र तरीका डेवलपर के कोड पर परीक्षण लिखना और निष्पादित करना है। सुपुर्दगी को गुणवत्ता के फ्रंट-एंड कोड / सुविधा के रूप में तभी स्वीकार किया जाना चाहिए जब ये सभी परीक्षा परिणाम ’पास’ की स्थिति में हों।
यूनिट टेस्टिंग एक तरह की सॉफ्टवेयर टेस्टिंग विधि है, जिसमें स्रोत कोड के प्रत्येक व्यक्ति और स्वतंत्र भाग का परीक्षण यह निर्धारित करने के लिए किया जाता है कि यह उपयोग के लिए पर्याप्त है।
जब हम सॉफ्टवेयर के फ्रंट-एंड (क्लाइंट-साइड) पर इस यूनिट की टेस्टिंग करें, इसे फ्रंट-एंड यूनिट टेस्टिंग कहा जाता है। फ्रंट-एंड टेस्टिंग के विपरीत बैक-एंड टेस्टिंग (सर्वर-साइड) है।
फ्रंट-एंड यूनिट परीक्षण मैन्युअल या स्वचालित रूप से किया जा सकता है। स्वचालित फ्रंट-एंड यूनिट परीक्षण इन दिनों चलन में है क्योंकि यह अधिक प्रभावी और समय की बचत है। विभिन्न उपकरण हैं जो विभिन्न प्रोग्रामिंग प्लेटफार्मों पर फ्रंट-एंड यूनिट परीक्षण के लिए उपलब्ध हैं।
AngularJS और ReactJS दो लोकप्रिय फ्रंट-एंड जावास्क्रिप्ट फ्रेमवर्क हैं, हालांकि ReactJS काफी नया है।
एक आवेदन पर इकाई परीक्षण करने के लिए, इन फ्रंट-एंड फ्रेमवर्क के साथ निर्मित फ्रंट-एंड या जो फ्रेमवर्क के बिना निर्मित होते हैं, कुछ निश्चित स्वचालन परीक्षण उपकरण जैसे कर्म, मोचा, जैस्मीन, जेस्ट, एंजाइम, आदि का उपयोग किया जाता है।
सबसे पहले, हम सीखेंगे कि कर्मा और जैस्मीन का उपयोग करके फ्रंट-एंड यूनिट परीक्षण कैसे किया जाए और फिर, बाद में, हम अन्य उपकरणों पर भी एक नज़र डाल सकते हैं।
हम फ्रंट-एंड के लिए किसी भी जावास्क्रिप्ट फ्रेमवर्क के बिना निर्मित फ्रंट-एंड के लिए जुड़नार का उपयोग करके फ्रंट-एंड यूनिट परीक्षण चलाने के साथ शुरू करेंगे। कुल मिलाकर, हम इस श्रृंखला में अपनी सीखों को तीन ट्यूटोरियल में विभाजित करेंगे।
इस पहले ट्यूटोरियल में, हम यह समझने की कोशिश करेंगे कि कर्म को कैसे स्थापित किया जा रहा है, दूसरा ट्यूटोरियल जैस्मीन को विस्तार से बताएगा, अंत में, तीसरे ट्यूटोरियल में, हम इसके व्यावहारिक अनुप्रयोग को देखेंगे।
कर्म परीक्षण धावक क्या है?
कर्म एक नोड-आधारित परीक्षण उपकरण है जो आपको कई वास्तविक ब्राउज़रों में अपने जावास्क्रिप्ट कोड का परीक्षण करने की अनुमति देता है। एक नोड-आधारित उपकरण कोई भी उपकरण है जिसे चलाने के लिए Nodejs इंजन की आवश्यकता होती है और नोड पैकेज मैनेजर (npm) के माध्यम से इसे चलाने (स्थापित) तक पहुँचा जा सकता है।
कर्म एक उपकरण है जो हमारे परीक्षण-संचालित विकास को तेज, मजेदार और आसान बनाता है। इसे तकनीकी रूप से टेस्ट-रनर कहा जाता है। यहां यह उल्लेख करना उल्लेखनीय है कि कर्म को अंगुलर टीम द्वारा विकसित किया गया था।
कर्म एक टेस्ट्रनर के रूप में कैसे काम करता है?
एक परीक्षण धावक के रूप में, कर्म तीन महत्वपूर्ण चीजें करते हैं:
- यह एक वेब सर्वर शुरू करता है और आपके जावास्क्रिप्ट स्रोत और उस सर्वर पर फाइलों का परीक्षण करता है।
- सभी स्रोत और परीक्षण फ़ाइलों को सही क्रम में लोड करता है।
- अंत में, यह परीक्षणों को चलाने के लिए ब्राउज़र तक घूमता है।
क्या कर्म कर सकते हैं?
कर्म के उपरोक्त सूचीबद्ध कार्यों के अलावा, कुछ अन्य चीजें भी हैं जिन्हें कर्म करने के लिए कॉन्फ़िगर किया जा सकता है। उदाहरण के लिए, के लिए कोड परीक्षण कवरेज प्रकाशित करने के लिए coveralls.io ; es6 प्रारूप से es5 के लिए एक कोड ट्रांसपाइल, कई फ़ाइलों को एक फ़ाइल में एक साथ बंडल करना और स्रोत मानचित्र उत्पन्न करना।
हमारे बाद के ट्यूटोरियल में, हम देखेंगे कि इनमें से कुछ चीजें कैसे काम करती हैं।
कर्म से आरंभ करने के लिए आवश्यकताएं
कर्म के साथ आरंभ करने के लिए, आपको NodeJS और Node पैकेज प्रबंधक की समझ होनी चाहिए।
NodeJS क्या है?
Nodejs जावास्क्रिप्ट अतुल्यकालिक कॉल की अवरुद्ध प्रकृति को हल करती है यानी जब अतुल्यकालिक फ़ंक्शन जावास्क्रिप्ट में एक्सेस किया जाता है, तो यह कोड के अन्य हिस्सों को अतुल्यकालिक कॉल रिटर्न तक चलने से रोकता है। हालांकि, NodeJS के साथ, अतुल्यकालिक गैर-अवरुद्ध फ़ंक्शन कॉल किया जा सकता है।
तकनीकी शब्दों में, NodeJS को अतुल्यकालिक ईवेंट-चालित जावास्क्रिप्ट रनटाइम कहा जा सकता है जो स्केलेबल नेटवर्क वाले अनुप्रयोगों को आसान और संभव बनाता है।
NodeJS के साथ शुरुआत करना
आपको बस NodeJS ढांचे को स्थापित करने की आवश्यकता है। आपको बस उनकी यात्रा करने की आवश्यकता है वेबसाइट और, आपके OS के आधार पर, आपको इंस्टॉलर डाउनलोड करना होगा और इसकी स्थापना के बारे में उनकी साइट पर दिए गए निर्देशों का पालन करना होगा।
नोड पैकेज मैनेजर (Npm) क्या है?
नोड पैकेज मैनेजर (एनपीएम) एक जावास्क्रिप्ट पैकेज मैनेजर है जो अन्य पूर्व-निर्मित नोड-आधारित अनुप्रयोगों या मॉड्यूल को स्थापित करने के लिए उपयोग किया जाता है जिन्हें आप अपने स्वयं के अनुप्रयोग में फिर से उपयोग करना चाहते हैं।
NpmJS इंस्टॉल करते ही Npm इंस्टॉल हो जाता है, लेकिन npm नोड की तुलना में तेजी से अपडेट हो जाता है। इसलिए आपको किसी बिंदु पर अपने npm को अपडेट करने की आवश्यकता हो सकती है। Npm का नवीनतम संस्करण स्थापित करने के लिए, आपको अपनी कमांड लाइन से इस कमांड को चलाना होगा: npm स्थापित करें npm @ नवीनतम -g
उपरोक्त कमांड इंगित करता है कि आप OS शेल को एप्लिकेशन npm को निष्पादित करने के लिए कह रहे हैं और एप्लिकेशन को पैकेज npm की स्थापना करनी चाहिए। @ लेटेस्ट इंगित करता है कि पैकेज का नवीनतम संस्करण स्थापित किया जाना चाहिए, -g विकल्प इंगित करता है कि पैकेज को विश्व स्तर पर स्थापित किया जाना चाहिए।
Npm के बारे में अधिक जानकारी पाई जा सकती है यहाँ ।
यहां दो महत्वपूर्ण बातें बताई गई हैं, जैसे –save और –save-dev विकल्प के साथ एक पैकेज स्थापित करना।
परीक्षणों के दौरान, किसी भी पैकेज को स्थापित किया जाना चाहिए -save-dev विकल्प का उपयोग करना अर्थात् पैकेज प्रबंधक को एक विकास निर्भरता के रूप में पैकेज को स्थापित करने के लिए निर्देश देना और परियोजना निर्भरता के रूप में नहीं (जब मैं उपयोग करता हूं)।
विकास निर्भरता को चुना जाना चाहिए क्योंकि उत्पादन चरण के दौरान पैकेज की आवश्यकता नहीं होती है, लेकिन केवल गुणवत्ता आश्वासन उद्देश्यों के लिए विकास के चरण के दौरान आवश्यक है।
कर्म कैसे स्थापित करें?
कर्म के साथ आरंभ करने के लिए, आपको उस परियोजना के लिए एक फ़ोल्डर बनाने की आवश्यकता है जिसके लिए आप इकाई परीक्षण लिखने वाले हैं। आप इसे 'बुनियादी' नाम दे सकते हैं। मैं विज़ुअल स्टूडियो कोड को टेक्स्ट एडिटर के रूप में उपयोग कर रहा हूं, इसलिए मैं आपको इसे डाउनलोड और इंस्टॉल करने की सलाह देता हूं। आप इसे पा सकते हैं यहाँ ।
विज़ुअल स्टूडियो कोड इनबिल्ट टर्मिनल विंडो खोलें, ’व्यू मेनू’ पर क्लिक करें और फिर एकीकृत टर्मिनल सब-मेनू का चयन करें।
टर्मिनल विंडो में, 'npminit' टाइप करें जैसा कि नीचे दिए गए चित्र में दिखाया गया है। यह निर्देश आपको guides package.json 'फ़ाइल को स्वचालित रूप से सेट करने के लिए निर्देशित करता है जो प्रत्येक नोड-आधारित एप्लिकेशन के पास होना चाहिए।
Package.json फ़ाइल आपके एप्लिकेशन के बारे में जानकारी संग्रहीत करती है जैसे कि उसका नाम, संस्करण संख्या, लेखक, अनुप्रयोग निर्भरता, विकास निर्भरता, परीक्षण कमांड या स्क्रिप्ट और स्क्रिप्ट शुरू करने के लिए या एप्लिकेशन को एक रननीय रूप में बनाने के लिए।
क्लिक यहाँ 'Package.json' फ़ाइल के बारे में अधिक जानकारी के लिए।
Npminit का उपयोग कर एक package.json फ़ाइल को प्रारंभ करने का स्क्रीनशॉट
जैसा कि ऊपर वर्णित है, कर्म को स्थापित करने के लिए, आपको केवल कमांड चलाने की आवश्यकता है npm कर्मा @ नवीनतम -सेव-देव स्थापित करें । मुझे उम्मीद है कि अब आप व्याख्या कर सकते हैं कि कमांड का क्या अर्थ है।
अब, हमने कर्मा को सफलतापूर्वक स्थापित कर दिया है, अगली बात यह है कि आपको अपने फ्रंट-एंड यूनिट परीक्षण के लिए कर्म का उपयोग करने के लिए क्या करना होगा?
आपको बस इसके लिए कॉन्फ़िगरेशन फ़ाइल लिखना है, और फ़ाइल को आमतौर पर जावास्क्रिप्ट के लिए Karma.conf.js नाम दिया गया है। हालाँकि, यह CoffeeScript के लिए अलग है। क्लिक यहाँ कर्मा कॉन्फ़िगरेशन फ़ाइल के बारे में अधिक जानने के लिए।
Karma.conf.js फ़ाइल कॉन्फ़िगरेशन विकल्पों का अवलोकन
Karma.conf.js कॉन्फ़िगरेशन फ़ाइल में सेटअप निर्देश होना चाहिए जिसमें कर्म को कर्म के तीन महत्वपूर्ण कार्य करने के लिए पालन करना चाहिए।
यह कॉन्फ़िगरेशन फ़ाइल मैन्युअल रूप से या स्वचालित रूप से कमांड: it कर्म इनिट ’का उपयोग करके बनाई जा सकती है, जो आपको जवाब देने के लिए विभिन्न प्रश्नों को प्रदर्शित करना शुरू कर देती है, और कर्म उन उत्तरों का उपयोग करता है जो आप कॉन्फ़िगरेशन फ़ाइल को सेट करने के लिए प्रदान करते हैं।
अब तक आपको पता चल गया होगा कि कमांड चलाना: 'कर्म इनिट', त्रुटि देता है ' 'कर्म' को आंतरिक या बाह्य कमांड संचालन कार्यक्रम या बैच फ़ाइल के रूप में मान्यता नहीं दी जाती है ”।
इसका कारण यह है कि कर्म स्थानीय रूप से स्थापित किया गया था और वैश्विक रूप से उस परियोजना पर नहीं जिसे आप काम कर रहे हैं। यदि आप मैक का उपयोग कर रहे हैं, तो इसलिए, यदि आप विंडोज़ या इन .bash_profile फ़ाइल का उपयोग कर रहे हैं, तो आपके ऑपरेटिंग सिस्टम शेल को अपने पथ पर्यावरण सेटिंग्स में एप्लिकेशन कर्मा नहीं मिल सकता है।
इस त्रुटि को ठीक करने के लिए, हमें विश्व स्तर पर कर्म को स्थापित करने की आवश्यकता है। केवल कर्म नहीं, बल्कि विशेष रूप से कमांड लाइन पर कर्म के उपयोग को सक्षम करने के लिए डिज़ाइन किया गया पैकेज जो कि कर्म-क्ली है। बस कमांड चलाएं, ′ Npm स्थापित -g कर्म-क्ली ' ।
अब कमांड कर्म-इनिट को फिर से चलाएं, और आप नीचे दिए गए चित्र में दिखाए गए प्रश्नों को देख सकते हैं। जब आप प्रत्येक प्रश्न का उत्तर देते हैं और 'ENTER' कुंजी दबाते हैं, तो अगला प्रश्न सामने आएगा।
कमांड लाइन पर कर्मा init कमांड चलाना।
नीचे दी गई तालिका आपको प्रश्नों की एक सूची देगी, उनका अर्थ इस ट्यूटोरियल के संदर्भ में आपका उत्तर क्या होना चाहिए।
कर्म प्रश्न
Q # 1) आप किस परीक्षण ढांचे का उपयोग करना चाहते हैं?
स्पष्टीकरण: एक परीक्षण ढांचा एक पैकेज है जो किसी विशेष भाषा के किसी भी सॉफ्टवेयर उत्पाद के लिए कोडिंग परीक्षणों की प्रक्रिया को स्वचालित करने के लिए आवश्यक फ़ंक्शन और दिनचर्या प्रदान करता है। उदाहरण के लिए, चमेली और मोचा जावास्क्रिप्ट सॉफ्टवेयर पैकेज के लिए फ्रेमवर्क का परीक्षण कर रहे हैं, जूनिट और जेटेस्ट जावा के लिए फ्रेमवर्क का परीक्षण कर रहे हैं, जांच करें इस अधिक जानकारी के लिए।
उत्तर: एक निर्देश आपको नोड-आधारित एप्लिकेशन के लिए उपलब्ध अन्य परीक्षण रूपरेखाओं को देखने के लिए टैब का उपयोग करने के लिए कह रहा है, लेकिन डिफ़ॉल्ट रूप से आप चमेली देखते हैं, इसलिए बस प्रवेश पर क्लिक करें।
Q # 2) क्या आप आवश्यकताएँ का उपयोग करना चाहते हैं।
स्पष्टीकरण: आवश्यकताएँ .js एक जावास्क्रिप्ट फ़ाइल और मॉड्यूल लोडर है। आप सोच रहे होंगे: आपको फ़ाइल या मॉड्यूल लोडर की आवश्यकता क्यों है? पढ़ें इस
उत्तर: कोड में, हम लिख रहे होंगे, मैं आवश्यकता का उपयोग नहीं करूंगा। इसलिए, केवल उत्तर नहीं। वह सवाल करता है कि हम क्या उपयोग करेंगे? बाहरी फ़ाइलों को किसी अन्य फ़ाइल में लाने के लिए आवश्यकता वाले बयानों का उपयोग करने में सक्षम होने के लिए, हमें एक मॉड्यूल लोडर की आवश्यकता होती है, इसलिए हम ब्राउजराइज़ का विकल्प चुनेंगे। आप नीचे अधिक विवरण देखेंगे।
Q # 3) क्या आप किसी भी ब्राउज़र को स्वतः कैप्चर करना चाहते हैं?
स्पष्टीकरण: स्मरण करो कि कर्म एक ऐसा उपकरण है जो आपको विभिन्न ब्राउज़रों में आपके फ्रंट-एंड का परीक्षण करने में मदद करता है, इसलिए, यह प्रश्न आपके लिए उन ब्राउज़रों का चयन करने के लिए है जिन्हें आप कभी भी शुरू करते हैं, जब आप कर्म प्रारंभ के साथ परीक्षण चलाते हैं।
उत्तर: इस पाठ के लिए, क्रोम, फ़ायरफ़ॉक्स और फ़ैंटमज चुनें। अब सवाल यह है कि फैंटमज क्या है? PhantomJS एक हेडलेस वेब ब्राउज़र है जो हेडलेस वेबसाइट टेस्टिंग, स्क्रीन कैप्चरिंग, पेज ऑटोमेशन और नेटवर्क मॉनिटरिंग के लिए है, आप विवरण प्राप्त कर सकते हैं यहाँ ।
एक और सवाल, एक हेडलेस वेब ब्राउज़र क्या है? एक हेडलेस वेब ब्राउज़र एक ग्राफिकल यूजर इंटरफेस के बिना एक ब्राउज़र है, कोड्स को कंसोल जैसे वातावरण में निष्पादित किया जाता है।
Q # 4) आपके स्रोत और परीक्षण फ़ाइलों का स्थान क्या है?
स्पष्टीकरण: यह सवाल उस रास्ते को उजागर करने के लिए है जहां आप सामने के अंत की फाइलों और उन परीक्षण फाइलों को सहेजेंगे जो उन पर यूनिट परीक्षण करेंगे।
उत्तर: इस परियोजना के लिए सार्वजनिक / js / *। Js स्रोत फ़ाइलों के पथ के लिए दर्ज करें और परीक्षण फ़ाइलों के पथ के लिए परीक्षण / * Spec.js। * Spec.js इंगित करता है कि सभी परीक्षण फ़ाइलों को कुछ भी कहा जा सकता है लेकिन इसमें .js फ़ाइल एक्सटेंशन के साथ अंत में Spec होना चाहिए।
Q # 5) क्या पिछले पैटर्न द्वारा शामिल किसी भी फाइल को बाहर रखा जाना चाहिए?
स्पष्टीकरण: कभी-कभी, ऐसी कोई आवश्यकता हो सकती है कि कुछ स्रोत फ़ाइलों और परीक्षण फ़ाइलों को लोड नहीं किया जाना चाहिए, यह प्रश्न आपके लिए ऐसी फ़ाइलों को निर्दिष्ट करने के लिए है, जिन्हें कर्मा द्वारा ब्राउज़र में लोड नहीं किया जाना चाहिए।
उत्तर: बस एंटर दबाकर एक खाली स्ट्रिंग दर्ज करें। क्या आपने स्टेटमेंट देखा ‘आप ग्लोब पैटर्न का उपयोग कर सकते हैं, उदाहरण के लिए, '' / *। Swp '। ' ग्लोब पैटर्न का उपयोग वाइल्डकार्ड वर्ण का उपयोग करके यूनिक्स जैसे वातावरण में फ़ाइलनाम के एक सेट को निर्दिष्ट करने के लिए किया जाता है।
हमारे मामले में, सार्वजनिक / js / *। Js किसी भी फ़ाइल के वर्णों के लिए खड़ा है जिसका नाम (*) द्वारा दर्शाया गया है और फ़ाइल एक्सटेंशन .js है और पथ public / js में रहता है। अधिक पढ़ें यहाँ
Q # 6) क्या आप चाहते हैं कि कर्मा सभी फाइलों को देखें और बदलाव पर परीक्षण चलाएं?
स्पष्टीकरण: जब कोई कार्य / परीक्षण धावक आपकी फ़ाइलों को देखता है, तो इसका सीधा सा मतलब यह है कि जब भी आप विकास / परीक्षण धावक के दौरान फ़ाइलों को संपादित करते हैं, तो फ़ाइल को फिर से लोड करता है या फिर से करता है, यह फ़ाइल पर फिर से कार्य करता है, बिना मैन्युअल रूप से आने के लिए। इसे फिर से करने के लिए।
उत्तर: तो बस हां में जवाब दें।
अन्य karm.conf.js फ़ाइल सामग्री
# 1) बेसपाठ : यह कॉन्फ़िगरेशन किसी भी फ़ोल्डर का नाम बताता है जिसका उपयोग परीक्षण और स्रोत फ़ाइलों के लिए प्रदान की गई पथ जानकारी को हल करने के लिए किया जाना चाहिए।
# 2) प्रीप्रोसेसर : यह प्रोग्राम फ़ाइलों का नाम है, जिन्हें ब्राउज़र में लोड करने से पहले स्रोत को संसाधित करने और फ़ाइलों का परीक्षण करने के लिए उपयोग किया जाना चाहिए।
इसकी आवश्यकता क्यों है?
ES6 कोडिंग शैली के आगमन के साथ जो कि अभी तक ब्राउज़रों द्वारा समझ में नहीं आया है, ES6 प्रारूप से कोड को ES5 में बदलने की आवश्यकता है जिसे ब्राउज़र समझ सकता है, इसलिए, कर्म के लिए बेबल प्रीप्रोसेसर को ट्रांसपाइल करने के लिए उपयोग करने के लिए निर्दिष्ट किया जा सकता है इसे ब्राउज़र में लोड करने से पहले ES6 से ES5 तक कोड।
प्रीप्रोसेसर के अन्य उपयोग हैं, जैसे coveralls.io को कोड परीक्षण कवरेज प्रकाशन, देखें यहाँ अधिक जानकारी के लिए।
# 3) पत्रकारों : यह कॉन्फ़िगरेशन विकल्प पैकेज को परीक्षण के परिणामों की रिपोर्ट करने के लिए उपयोग करने के लिए निर्दिष्ट करता है। कोड परीक्षण कवरेज की रिपोर्टिंग के लिए कई पत्रकार हैं; जैसे कवरेज। लेकिन, डिफ़ॉल्ट रूप से, यह प्रगति पर सेट है। ध्यान दें कि यह एक सरणी है, इसलिए आप अन्य पत्रकारों को भी जोड़ सकते हैं।
# 4) पोर्ट : यह उस पोर्ट को निर्दिष्ट करता है जिस पर ब्राउजर चालू है।
# 5) रंग : निर्दिष्ट करता है कि क्या संवाददाताओं को रिपोर्ट को रंग के साथ उत्पादन करना चाहिए।
# 6) छांटने का स्तर : यह लॉगिंग के स्तर को निर्दिष्ट करता है। डिफ़ॉल्ट रूप से, इसे कॉन्फ़िगर किया जाता है। LOG_INFO जिसका अर्थ है कि केवल जानकारी लॉग की गई है।
# 7) सिंगलरून : यह निर्दिष्ट करता है कि यदि एक बार परीक्षण चलाने के बाद कर्म को बाहर निकलना चाहिए। यदि यह सही है, तो कर्म परीक्षण चलाता है और स्थिति 0 या 1 के साथ बाहर निकल जाती है, इस पर निर्भर करता है कि परीक्षण विफल है या पारित किया गया है, अन्यथा कर्म बंद नहीं होता है।
TravisCI और CircleCI जैसे उपकरणों का उपयोग करके निरंतर एकीकरण परीक्षण उद्देश्यों के लिए यह कॉन्फ़िगरेशन आवश्यक है।
# 8) संगामिति : यह निर्दिष्ट करता है कि कर्मा को एक ही समय में कितने ब्राउज़र शुरू करने चाहिए। डिफ़ॉल्ट रूप से, यह अनंत पर सेट है।
क्लिक यहाँ कर्म विन्यास विकल्पों के बारे में विस्तृत जानकारी के लिए।
यदि आप एक चौकस शिक्षार्थी हैं, तो, आपने इन तीन पंक्तियों को देखा होगा।
23 03 2017 15:47:54.912:WARN (init): Failed to install 'Karma-firefox-launcher' Please install it manually. 23 03 2017 15:47:54.913:WARN (init): Failed to install 'Karma-chrome-launcher' Please install it manually. 23 03 2017 15:47:54.914:WARN (init): Failed to install 'Karma-phantomjs-launcher' Please install it manually.
आइए हम इसे नीचे दिए गए अनुभाग में देखें।
कर्मा ब्राउज़र लॉन्चर्स
कर्मा-फ़ायरफ़ॉक्स-लॉन्चर, कर्मा-क्रोम-लॉन्चर, और कर्मा-फ़ैंटमज-लॉन्चर को आमतौर पर कर्मा के लिए ब्राउज़र लॉन्चर्स कहा जा सकता है।
कर्म को स्वतंत्र होने वाले इन ब्राउज़र अनुप्रयोगों को स्पिन करने की आवश्यकता है, इसलिए शेल कमांड को चलाने के लिए कर्मा को एक इंटरफ़ेस प्रदान करने के लिए एक तृतीय-पक्ष एप्लिकेशन की आवश्यकता होती है जो ब्राउज़र को किसी भी ऑपरेटिंग सिस्टम में स्पिन करता है जिसे कर्मा एक परीक्षण चला रहा है।
इस प्रकार, वे क्रमशः फ़ायरफ़ॉक्स, क्रोम और फैंटमज के लिए कर्मा ब्राउज़र लांचर हैं। कर्म उन आवश्यकताओं को स्थापित करने में असमर्थता के बारे में हमें सूचित करने के लिए उन बयानों को पॉप अप कर रहा है और इसके बाद हमें इसे स्वयं द्वारा स्थापित करने के लिए कह रहा है।
ऐसा करने के लिए, हम नोड पैकेज मैनेजर का उपयोग करेंगे और कमांड लाइन से इन कमांड को चलाएंगे: npm कर्मा-क्रोम-लॉन्चर कर्मा-फ़ायरफ़ॉक्स-लॉन्चर कर्मा-फ़ैंटमज-लॉन्चर-सेवे-देव स्थापित करें
हम सभी के पास क्रोम और फायरफॉक्स ब्राउजर स्थापित होने चाहिए, जिनमें प्रेत स्थापित नहीं हैं। यदि यह सच है, तो आपको इसे स्थापित करने की आवश्यकता है, देखें यहाँ विवरण और क्लिक के लिए यहाँ एक त्वरित शुरुआत गाइड के लिए।
निष्कर्ष
इस ट्यूटोरियल में, हमने यह समझने की कोशिश की कि फ्रंट-एंड यूनिट परीक्षण क्या है। हमने जावास्क्रिप्ट सॉफ्टवेयर के लिए एक प्रमुख फ्रंट-एंड यूनिट टेस्टिंग टूल भी पेश किया, जिसे कर्मा के रूप में जाना जाता है, जो एक नोड-आधारित टूल है। हमने Karma.conf.js फ़ाइल के लिए मूल विन्यास विकल्प भी प्रस्तुत किए हैं और वे सभी का अर्थ है।
Xbox एक के साथ संगत vr हेडसेट
टेकअवे
- यूनिट परीक्षण एक प्रकार की सॉफ्टवेयर परीक्षण विधि है जिसमें स्रोत कोड के प्रत्येक व्यक्ति और स्वतंत्र भाग को यह निर्धारित करने के लिए परीक्षण किया जाता है कि क्या यह उपयोग के लिए पर्याप्त है।
- जब हम सॉफ्टवेयर के फ्रंट-एंड (क्लाइंट-साइड) पर इस यूनिट की टेस्टिंग करते हैं, तो इसे फ्रंट-एंड यूनिट टेस्टिंग के रूप में जाना जाता है।
- कर्म एक नोड-आधारित परीक्षण उपकरण है जो आपको कई वास्तविक ब्राउज़रों में अपने जावास्क्रिप्ट कोड का परीक्षण करने की अनुमति देता है। इसलिए इसे टेस्ट-रनर कहा जाता है।
- Nodejs एक अतुल्यकालिक घटना-चालित रनटाइम जावास्क्रिप्ट है जो बिल्डिंग स्केलेबल नेटवर्क अनुप्रयोगों को आसान और संभव बनाता है।
- नोड पैकेज मैनेजर (एनपीएम) एक जावास्क्रिप्ट पैकेज मैनेजर है जो अन्य पूर्व-निर्मित नोड-आधारित अनुप्रयोगों या मॉड्यूल को स्थापित करने के लिए उपयोग किया जाता है जिन्हें आप अपने स्वयं के अनुप्रयोग में फिर से उपयोग करना चाहते हैं।
कर्म अकेले जावास्क्रिप्ट अनुप्रयोगों के फ्रंट-एंड यूनिट परीक्षण को स्वचालित नहीं कर सकता है, इसे अन्य परीक्षण उपकरणों जैसे परीक्षण ढांचे के साथ काम करने की आवश्यकता है जो हमारे परीक्षण मामलों के लेखन की सुविधा प्रदान करेंगे।
हमारे आगामी ट्यूटोरियल में, हम जैस्मीन और जैस्मीन-जेकरी पैकेज के बारे में पता लगाएंगे, जो जैस्मीन की कार्यक्षमता का विस्तार करते हुए HTML जुड़नार का परीक्षण करने में सक्षम होगा जो जावास्क्रिप्ट लाइब्रेरी का उपयोग करते हैं: Jquery।
अनुशंसित पाठ
- 2021 में 20 सबसे लोकप्रिय इकाई परीक्षण उपकरण
- सफल इकाई परीक्षण की कुंजी - डेवलपर्स कैसे अपने कोड का परीक्षण करते हैं?
- विस्तृत उत्तरों के साथ टॉप 45 जावास्क्रिप्ट साक्षात्कार प्रश्न
- निरपेक्ष शुरुआती के लिए AngularJS ट्यूटोरियल (इंस्टॉलेशन गाइड के साथ)
- कोणीय संस्करणों के बीच अंतर: कोणीय बनाम एंगुलरजेएस
- सॉफ्टवेयर परीक्षण में परीक्षण कवरेज (परीक्षण कवरेज अधिकतम करने के लिए सुझाव)
- 48 शीर्ष कोणीयजेएस साक्षात्कार प्रश्न और उत्तर (2021 सूची)
- Node.js टेस्टिंग फ्रेमवर्क कैसे सेटअप करें: Node.js ट्यूटोरियल