how test java applications tips with sample test cases
इस ट्यूटोरियल में, हम जावा एप्लिकेशन में शामिल घटकों और विभिन्न प्रकार के परीक्षण सीखेंगे, जिन्हें उच्च गुणवत्ता, बग-मुक्त एप्लिकेशन सुनिश्चित करने के लिए किया जाना चाहिए।
यह है एक JAVA अनुप्रयोगों के परीक्षण पर तीन-भाग श्रृंखला।
- इस लेख में, हम एक J2EE आवेदन के लिए J2EE घटक और मैनुअल परीक्षण दृष्टिकोण सीखेंगे।
- दूसरे में, हम समीक्षा करेंगे स्वचालित परीक्षण परीक्षण J2EE अनुप्रयोगों के लिए दृष्टिकोण, और
- तीसरे में, हम उन उपकरणों की एक व्यापक सूची की समीक्षा करेंगे जो J2EE अनुप्रयोगों के परीक्षण के लिए उपलब्ध हैं।
आप क्या सीखेंगे:
- J2EE अनुप्रयोगों के अवलोकन के साथ आइए शुरू करते हैं
- परीक्षण जावा / जे 2 ईई आवेदन
- मैनुअल जावा अनुप्रयोग परीक्षण:
- निष्कर्ष
- अनुशंसित पाठ
J2EE अनुप्रयोगों के अवलोकन के साथ आइए शुरू करते हैं
सेवा मेरे जावा वेब एप्लिकेशन में कई घटक होते हैं, जिनमें से प्रत्येक एक महत्वपूर्ण उद्देश्य होता है। MVC , जो मॉडल व्यू कंट्रोलर के लिए खड़ा है, सबसे लोकप्रिय और अक्सर उपयोग किए जाने वाले आर्किटेक्चर डिज़ाइन पैटर्न के रूप में खड़ा है।
परीक्षण करना सीखने से पहले, हमें संक्षेप में जाना चाहिए एक J2EE आवेदन के विभिन्न घटकों।
- क्लाइंट / ब्राउज़र एक URL के साथ एक वेब पते के लिए पूछता है।
- JSP (जावा सर्वर पेज) - जेएसपी एक सर्वर-साइड तकनीक है जिसका उद्देश्य उपयोगकर्ता को डेटा प्रस्तुत करना है। यह JSP टैग्स नामक विशेष टैग की मदद से गतिशील सामग्री के प्रदर्शन का समर्थन करता है, जो HTML पृष्ठों के भीतर जावा कोड डालने में मदद करता है। (स्थिर HTML हमेशा एक ही सामग्री प्रदर्शित करता है)। रनटाइम पर, एक JSP को एक सर्वलेट में बदल दिया जाता है। व्यवसाय तर्क आमतौर पर यहां नहीं लिखा जाता है।
- JSF (जावा सर्वर चेहरे) - JSF उपयोगकर्ता इंटरफ़ेस के प्रभावी डिज़ाइन के लिए एक दृश्य घटक है।
- जावास्क्रिप्ट / Jquery - स्क्रिप्ट / दृश्य / स्क्रीन के क्लाइंट पक्ष सत्यापन के लिए उपयोग की जाने वाली भाषाएं हैं।
- सर्वलेट - एक सर्वलेट इनपुट से प्राप्त डेटा को मान्य करता है, उपयुक्त व्यापार तर्क कोड का चयन करता है, और बीन कोड के मूल्यों पर गुजरता है।
- एंटरप्राइज़ जावा बीन (EJB) - यह वह जगह है जहाँ पूरे व्यापार तर्क आम तौर पर लिखा और संभाला जाता है। बीन तब कोड को या तो पढ़ने, लिखने या डेटाबेस को अपडेट करने के लिए कहता है। एक बार जब डेटाबेस संचालन पूरा हो जाता है, तो प्रतिक्रिया को फिर सर्वलेट में स्थानांतरित कर दिया जाता है, जो परिणामों को प्रदर्शित करने के लिए उपयुक्त JSP का चयन करता है।
- वेब सेवाएं - Webservices एक अनुप्रयोग के घटक हैं जो एक अलग सर्वर पर चलते हैं और HTTP प्रोटोकॉल पर संवाद करते हैं।
- डेटाबेस - एप्लिकेशन के संपूर्ण डेटा को संग्रहीत करता है।
कृपया ध्यान दें कि सभी वेब एप्लिकेशन इसका अनुसरण नहीं करते हैं JSP -> सर्वलेट -> EJB -> डेटाबेस मॉडल । वर्तमान में J2EE के अधिकांश अनुप्रयोग स्ट्रट्स, स्प्रिंग, या हाइबरनेट जैसे ढांचे के साथ लिखे गए हैं। एप्लिकेशन का डिज़ाइन अनुप्रयोग के आकार, लागत, विकास समय, संसाधनों और टीम के आकार के आधार पर प्रत्येक आवश्यकता के लिए भिन्न होता है।
परीक्षण जावा / जे 2 ईई आवेदन
आइए अब हम संपूर्ण J2EE एप्लिकेशन के परीक्षण के लिए आगे बढ़ते हैं। यह कई चरणों में किया जाता है।उदाहरण के लिए, विचार करें कि हमारे पास है तीन स्क्रीन:
- एक लॉगिन स्क्रीन
- एक कर्मचारी डिस्प्ले स्क्रीन, जो संगठन के सभी कर्मचारियों को सूचीबद्ध करती है
- एक कर्मचारी संशोधन / इसके अलावा / हटाने स्क्रीन।
इन तीनों स्क्रीन के लिए यूआई (यूजर इंटरफेस) को JSP / HTML और जावास्क्रिप्ट के माध्यम से किए गए सत्यापन के साथ विकसित किया गया है। क्योंकि यह एक नमूना अनुप्रयोग है, तर्क सर्वलेट और DAO (डेटा एक्सेस ऑब्जेक्ट) में है। डेटाबेस से जुड़ने के लिए DAO एक वर्ग है।
नीचे नमूना स्क्रीन हैं:
मैनुअल जावा अनुप्रयोग परीक्षण:
मैनुअल जेएवीए परीक्षण के दौरान, एक परीक्षक विस्तृत डिजाइन दस्तावेज़ से परीक्षण के मामलों को तैयार करता है और हर परिदृश्य और कोड स्निपेट को कवर करने की कोशिश करता है।
# 1) जावा यूनिट परीक्षण
यूनिट परीक्षण एक प्रकार का परीक्षण है जिसमें उपयोगकर्ता को सटीकता, शुद्धता और आवश्यकताओं को पूरा करने के लिए सबसे छोटे कोड स्निपेट का परीक्षण करने की आवश्यकता होती है।
हमें लेने दोलॉगिन स्क्रीन का उदाहरण। लॉगिन स्क्रीन में दो टेक्स्ट फ़ील्ड हैं: उपयोगकर्ता नाम और पासवर्ड, और दो बटन हैं: सबमिट करें और रद्द करें।
परीक्षण मामलों को सभी छोरों और सशर्त बयानों को कवर करना चाहिए। परीक्षण मामलों में अपेक्षित परिणाम और परीक्षण डेटा प्रदर्शित करना चाहिए। नीचे कुछ सामान्य परीक्षण मामले दिए गए हैं जो उपयोगकर्ता लॉगिन स्क्रीन में मैन्युअल रूप से निष्पादित कर सकता है। परिणाम तब परीक्षण मामले के दस्तावेज में नीचे दिए गए हैं।
नीचे लॉगिन स्क्रीन के लिए एक नमूना परीक्षण मामला प्रारूप है।
क्र.सं. | परीक्षण मामला | अपेक्षित परिणाम | वास्तविक परिणाम | सफल - असफल |
---|---|---|---|---|
४ | उपयोगकर्ता 10 से अधिक वर्णों का उपयोगकर्ता नाम दर्ज करता है | त्रुटि संदेश 'उपयोगकर्ता नाम 10 से अधिक वर्ण नहीं होना चाहिए' प्रदर्शित होना चाहिए | त्रुटि संदेश प्रदर्शित नहीं होता है | असफल |
1 | उपयोगकर्ता लेबल की उपस्थिति की जाँच करता है उपयोगकर्ता नाम, पासवर्ड | लेबल को सही ढंग से वर्तनी और सामान्य आकार के फ़ॉन्ट में प्रदर्शित किया जाना चाहिए | लेबल उपयोगकर्ता नाम और पासवर्ड सही ढंग से प्रदर्शित होते हैं | उत्तीर्ण करना |
दो | उपयोगकर्ता बटन की उपस्थिति की जांच करता है सबमिट करें और रद्द करें | बटन को सही नाम के साथ प्रदर्शित किया जाना चाहिए | बटन सबमिट करें और रद्द करें सही ढंग से प्रदर्शित किए गए हैं | उत्तीर्ण करना |
३ | उपयोगकर्ता स्क्रीन की पृष्ठभूमि का रंग देखता है | लॉगिन फॉर्म एक सफेद तालिका के भीतर होना चाहिए और स्क्रीन पृष्ठभूमि ग्रे की होनी चाहिए | स्क्रीन उपस्थिति आवश्यकताओं से मेल नहीं खाती है। | असफल |
४ | उपयोगकर्ता उपयोगकर्ता टेक्स्ट बॉक्स को खाली छोड़ देता है | त्रुटि संदेश 'उपयोगकर्ता नाम रिक्त नहीं हो सकता' प्रदर्शित किया जाना चाहिए | त्रुटि संदेश 'उपयोगकर्ता नाम रिक्त नहीं हो सकता' प्रदर्शित किया जाता है | उत्तीर्ण करना |
५ | उपयोगकर्ता उपयोगकर्ता नाम टेक्स्टबॉक्स में कुछ मूल्य दर्ज करता है और पासवर्ड टेक्स्टबॉक्स को खाली छोड़ देता है | त्रुटि संदेश 'पासवर्ड खाली नहीं हो सकता' प्रदर्शित किया जाना चाहिए | त्रुटि संदेश 'पासवर्ड खाली नहीं हो सकता' प्रदर्शित किया गया है | उत्तीर्ण करना |
६ | उपयोगकर्ता 'abcd' और पासवर्ड 'xxxx' के रूप में उपयोगकर्ता नाम दर्ज करता है | त्रुटि संदेश 'अवैध उपभोगकर्ता नाम गुप्तलब्ज सयोंजन' प्रदर्शित किया जाना चाहिए | त्रुटि संदेश 'अवैध उपभोगकर्ता नाम गुप्तलब्ज सयोंजन' यह प्रदर्शित है | उत्तीर्ण करना |
५ | उपयोगकर्ता 'testuser' और 'पासवर्ड' के रूप में पासवर्ड के रूप में उपयोगकर्ता नाम दर्ज करता है और सबमिट बटन पर क्लिक करता है | उपयोगकर्ता को 'कर्मचारी विवरण स्क्रीन' देखने में सक्षम होना चाहिए | कर्मचारी विवरण स्क्रीन प्रदर्शित होती है | उत्तीर्ण करना |
जबकि तालिका कुछ परीक्षण मामलों को सूचीबद्ध करती है, नीचे पूरी सूची है:
- NULL पॉइंटर अपवाद सहित किसी भी अपवाद की जाँच करें
- जांचें कि क्या NULLS को उपयोगकर्ता नाम और पासवर्ड की अनुमति नहीं है
- जांचें कि क्या उपयोगकर्ता नाम / पासवर्ड सही प्रारूप में है
- जांचें कि क्या उपयोगकर्ता नाम के लिए संख्या की अनुमति नहीं है
- जांचें कि क्या उपयोगकर्ता नाम में विशेष वर्णों की अनुमति नहीं है
- जांचें कि क्या उपयोगकर्ता नाम और पासवर्ड का सही संयोजन दर्ज किया गया है, तो एप्लिकेशन आपको अगली स्क्रीन पर ले जाता है, यानी कर्मचारी जानकारी स्क्रीन
- जांचें कि उपयोगकर्ता नाम सही लंबाई का है या नहीं
- जांचें कि क्या उपयोगकर्ता नाम पाठ क्षेत्र उस क्षेत्र के लिए निर्दिष्ट अधिकतम वर्णों की अनुमति देता है
- यदि प्रवेश करते समय आवश्यकताओं के रूप में निर्दिष्ट है तो पासवर्ड फ़ील्ड देखें
- जाँच करें कि क्या पासवर्ड केस संवेदी हैं
- जांचें कि क्या उपयोगकर्ता नाम संवेदनशील नहीं है
- अगर लॉगिन पेज यूज़रनेम या पासवर्ड याद नहीं है, तो बाहर निकलने के बाद भी जांचें
- जाँच करें कि क्या सबमिट और रद्द करें बटन आवश्यकता के अनुसार काम करता है
- यदि पहली बार एप्लिकेशन का उपयोग कर रहे हैं, तो जांचें कि उपयोगकर्ता नाम के पास आवेदन दर्ज करने की अनुमति है या नहीं
- डेटाबेस से एक उपयोगकर्ता नाम / पासवर्ड संयोजन हटाएं और जांचें कि क्या संयोजन फिर से लॉगिन करने में सक्षम नहीं है
- उपरोक्त सभी मामलों के लिए, जांचें कि क्या उचित सत्यापन त्रुटि संदेश दिखाए गए हैं
- जांचें कि क्या लेबल और बटन स्क्रीन पर सही जगह पर हैं और वे पाठ को सही ढंग से प्रदर्शित करते हैं
- स्क्रीन दिखावे की आवश्यकताओं के अनुसार कर रहे हैं की जाँच करें
- जांचें कि क्या अपवादों को संभाला जाता है
- जाँच करें कि क्या लॉगिंग आवश्यक क्रियाओं के लिए की गई है
परीक्षण के मामलों से गुजरने के बाद, आप महसूस कर सकते हैं कि आप ज्यादातर किसी विशेष स्क्रीन के क्षेत्र, बटन, कार्यक्षमता और मान्यताओं के परीक्षण से निपट रहे हैं। यह सही है, क्योंकि इकाई परीक्षण बहुत ही छोटे कोड स्निपेट और घटक के परीक्षण से संबंधित है। सभी स्क्रीन के लिए एक ही प्रकार का परीक्षण किया जाना चाहिए।
कृपया ध्यान दें कि उपरोक्त केवल उदाहरण हैं, और परीक्षण के मामले एक परियोजना-विशिष्ट और विस्तृत डिजाइन दस्तावेज़ के आधार पर तैयार किए गए हैं।
यह भी पढ़ें=> परीक्षण मामलों का उपयोग करने के लिए नमूना तैयार तथा परिक्षण परिदृश्य वेब अनुप्रयोग परीक्षण के लिए।
# 2) एकीकरण परीक्षण
एकीकरण परीक्षण में, अलग-अलग मॉड्यूल को एकीकृत किया जाता है और शुद्धता के लिए एक साथ परीक्षण किया जाता है।
कंप्यूटर तापमान की निगरानी के लिए सबसे अच्छा कार्यक्रम
उपरोक्त उदाहरण में तीन में से प्रत्येक स्क्रीन को तीन अलग-अलग टीम के सदस्यों द्वारा विकसित किया गया है। अब जब वे यूनिट परीक्षण के साथ समाप्त हो गए हैं, तो सभी कोड एक साथ लाने और यह जांचने का समय है कि क्या वे एक साथ अच्छी तरह से काम करते हैं। एकीकरण परीक्षण यह सुनिश्चित करने के लिए किया जाता है कि डेटा या नियंत्रण एक स्क्रीन से दूसरी स्क्रीन पर सही ढंग से स्थानांतरित हो।
कर्मचारी आवेदन उदाहरण के लिए कुछ नमूना एकीकरण परीक्षण मामले यहां दिए गए हैं:
- जांचें कि क्या उपयोगकर्ता लॉग इन और सत्र अन्य सभी नई एकीकृत स्क्रीन में समान है
- जाँच करें कि क्या अन्य मॉड्यूल डेटाबेस में बिना रिकॉर्ड के किसी रिकॉर्ड को अद्यतन / हटा / हटा नहीं रहे हैं
- चलो एक कर्मचारी का दर्जा क्षेत्र है, जो कहता है कि on नया ’इसके अलावा, संशोधन पर on अपडेट’ और हटाने पर delet हटा दिया गया ’है। हालांकि दो या तीन स्क्रीन एक ही स्थिति फ़ील्ड का उपयोग कर सकते हैं, यह सुनिश्चित करना महत्वपूर्ण है कि फ़ील्ड गलत तरीके से अपडेट नहीं की जा रही है।
- जांचें कि क्या शीर्ष लेख, पाद लेख, स्क्रीन आकार और उपस्थिति एकीकरण के बाद की आवश्यकताओं को पूरा करते हैं
- जांचें कि सबमिट बटन पर क्लिक करते समय, नियंत्रण अगली स्क्रीन पर स्थानांतरित हो जाता है
- जाँचें कि रद्द करें बटन पर क्लिक करने पर, की गई क्रिया रद्द हो जाती है
इसके अलावा, एक J2EE आवेदन के लिए सामान्य एकीकरण परीक्षण मामले हो सकते हैं:
- डेटा के प्रवाह की जाँच करें, या तो ऑब्जेक्ट, एक्सएमएल या सत्र से अंत तक। शुद्धता के लिए जाँच करें।
- जांचें कि क्या सत्र प्रत्येक मॉड्यूल द्वारा सही ढंग से प्रबंधित किया गया है
- यदि बाहरी एप्लिकेशन (वेब सेवाएं) शामिल हैं, तो जांचें कि क्या आपका एप्लिकेशन कॉल करने और एप्लिकेशन से डेटा वापस प्राप्त करने में सक्षम है
# 3) सिस्टम परीक्षण
सिस्टम परीक्षण में, संपूर्ण एप्लिकेशन को आवश्यकताओं के संबंध में कार्यक्षमता और पूर्णता के लिए परीक्षण किया जाता है। यह पूछना आसान होगा कि हर घटक की यूनिट परीक्षण कब किया जाता है और एकीकरण परीक्षण के दौरान कोड घटकों को भी एक साथ जोड़ा और परीक्षण किया जाता है, सिस्टम परीक्षण में क्या अलग हो सकता है? यह कहना गलत नहीं है कि सिस्टम टेस्टिंग में विचार आवेदन को तोड़ना है :)
परिद्रश्य 1: आप एक रूपरेखा के साथ एक नया कर्मचारी आवेदन विकसित करते हैं;उदाहरण के लिए, स्ट्रट्स। आपके संगठन में विभिन्न सर्वरों पर कई अन्य अनुप्रयोग भी चल रहे हैं। हालाँकि, वे सभी किसी भी व्यक्ति विशेष के लिए पता और फ़ोन नंबर लाने के लिए उसी मौजूदा वेब सेवा को कॉल करते हैं।
एकीकरण परीक्षण के दौरान, आपने परीक्षण किया होगा कि क्या आपका एप्लिकेशन वेब सेवा पर कॉल करने में सक्षम है और यदि आप प्रतिक्रिया प्राप्त करने में सक्षम हैं। लेकिन क्या होगा अगर वेब सेवा में ही कोई समस्या है? या वेब सेवा कुछ दुर्लभ इनपुट का जवाब नहीं देती है? वेब सेवा, हमारे मामले में, केवल एक कर्मचारी संख्या अधिकतम 6 वर्ण ले सकती है। या, वेब सेवा लौटने के दौरान पते के कुछ स्वरूपों के लिए अपवादों को फेंकती है। यह बाहरी है, लेकिन यह सिस्टम परीक्षण का भी हिस्सा है।
परिदृश्य # 2 : आपका कर्मचारी आवेदन पूरा हो गया है। आप एक कर्मचारी जोड़ते हैं, और यह एक कर्मचारी संख्या # 1001 उत्पन्न करता है। आप संशोधित करें, हटाएं, अपडेट करें, जोड़ें, संशोधित करें, हटाएं, जोड़ें, जोड़ें, जोड़ें, संशोधित करें, हटाएं और फिर अंत में एक और जोड़ें। क्या होगा यदि नया कर्मचारी नंबर फिर से # 1001 हो?
परिदृश्य # 3 : मान लें कि दो उपयोगकर्ता एक ही समय में एप्लिकेशन का उपयोग कर रहे हैं। दोनों एक ही कर्मचारी पर काम करना शुरू कर देते हैं, एक हटा देता है। क्या होगा यदि दूसरा उपयोगकर्ता सत्र में संग्रहीत किए गए समान कर्मचारियों के संशोधन के साथ आगे बढ़ने में सक्षम है?
सिस्टम परीक्षण के कुछ महत्वपूर्ण पहलू नीचे दिए गए हैं:
- सुनिश्चित करें कि डेटा का प्रवाह और नियंत्रण सही है शुरू से अंत तक
- लेनदेन डेटा की सुरक्षा सुनिश्चित करें
- सुनिश्चित करें कि आवेदन सभी व्यावसायिक कार्यात्मकताओं का अनुसरण करता है
- जांचें कि क्या एप्लिकेशन एक अंतिम उत्पाद के रूप में अच्छी तरह से काम करता है - टूटे लिंक, सत्र प्रबंधन, कुकीज़, लॉगिंग, त्रुटि से निपटने, अपवाद हैंडलिंग, सत्यापन और लेनदेन प्रवाह की जांच करें।
# 4) प्रदर्शन का परीक्षण
इस प्रकार का परीक्षण तब किया जाता है जब डेटाबेस या एप्लिकेशन या बड़ी मात्रा में डेटा का उपयोग करने वाले उपयोगकर्ताओं की एक बड़ी संख्या होगी, या दोनों। नीचे कुछ मामले दिए गए हैं:
- यदि एक ही समय में कई उपयोगकर्ता लॉग इन करते हैं, तो जांचें कि एप्लिकेशन हैंग / क्रैश नहीं होते हैं
- यदि डेटाबेस में बड़ी मात्रा में डेटा उपलब्ध है - जाँच करें कि खोज स्क्रीन ग्रिड सत्र समाप्ति से पहले प्रश्नों को निष्पादित करने में बहुत लंबा समय नहीं लेता है
- एक बहु-थ्रेडेड वातावरण में, जांचें कि एप्लिकेशन सभी थ्रेड्स को अच्छी तरह से संभालने में सक्षम है
- उन अनुप्रयोगों में जहां बड़ी संख्या में ऑब्जेक्ट बनाए जाते हैं, जांचें कि क्या पर्याप्त मेमोरी आवंटित की गई है, कचरा संग्रह को संभाला जाता है, और यह कि मेमोरी अपवाद नहीं हैं
निष्कर्ष
इस लेख में, हमने एक J2EE एप्लिकेशन के अवलोकन को कवर किया है। हमने यह भी देखा है कि एक उदाहरण के साथ एप्लिकेशन के प्रत्येक घटक के लिए यूनिट, इंटीग्रेशन, फंक्शनल और सिस्टम परीक्षण को मैन्युअल रूप से कैसे करें।
में अगला लेख , हम देखेंगे कि बड़े J2EE अनुप्रयोगों के लिए ऑटोमेशन परीक्षण कैसे फायदेमंद हो सकता है।
लेखक के बारे में: यह पद्मावती एस द्वारा एक अतिथि लेख है। सॉफ्टवेयर परीक्षण के कुल 7+ वर्षों के अनुभव के बाद उसे जावा, जे 2 ईई, एमवीसी और स्ट्रट्स ढांचे का परीक्षण करने में व्यापक अनुभव है।
यदि आप JAVA अनुप्रयोगों के परीक्षण पर काम कर रहे हैं तो हमें बताएं। नीचे दिए गए टिप्पणियों में अपने अनुभव और प्रश्नों को साझा करें।
PREV ट्यूटोरियल | अगले ट्यूटोरियल
अनुशंसित पाठ
- ISTQB परीक्षण प्रमाणन उत्तर के साथ नमूना प्रश्न पत्र
- JAVA / J2EE अनुप्रयोगों के स्वचालन परीक्षण कैसे करें (भाग 2)
- सर्वश्रेष्ठ सॉफ्टवेयर परीक्षण उपकरण 2021 (क्यूए टेस्ट स्वचालन उपकरण)
- टॉप 20 प्रैक्टिकल सॉफ्टवेयर टेस्टिंग टिप्स आपको किसी भी एप्लीकेशन को टेस्ट करने से पहले पढ़ना चाहिए
- स्वास्थ्य देखभाल अनुप्रयोगों का परीक्षण - युक्तियाँ और महत्वपूर्ण परीक्षण परिदृश्य (भाग 2)
- एप्लिकेशन में बग कैसे खोजें? युक्तियाँ और चालें
- डेटाबेस परीक्षण JMeter के साथ
- जावा वर्चुअल मशीन: जावा एप्लीकेशन चलाने में JVM कैसे मदद करता है