2011-01-23 11 views
13

की तुलना करें मेरे पास एक एप्लिकेशन/उत्पाद है जो .NET प्रौद्योगिकियों का उपयोग करके बनाया गया है। इस उत्पाद में एक जीयूआई है, जो एक वेब एपीआई (एक एप्लीकेशन सर्वर पर SOAP) का उपयोग कर डीबी से जुड़ता है। अधिकांश परीक्षण डीबी में मूल्यों के लिए निष्पादित किए जाते हैं, जबकि अन्य उपयोगिता, प्रदर्शन इत्यादि में पड़ सकते हैं। ऐसे में, 60-70% परीक्षण निष्पादित किए जाने हैं, यह सत्यापित करने के लिए कि डीबी में मान सही तरीके से दिखाए गए हैं या नहीं जीयूआई पर, जबकि अन्य परीक्षण करते हैं कि जीयूआई आवश्यकता विनिर्देशों में वांछित के रूप में काम कर रहा है।क्यूटीपी बनाम सेलेनियम -

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

उत्पाद यूआई अतिरिक्त ड्रॉपडाउन मेनू आइटम के रूप में नई सुविधाओं को जोड़ने और इन मेनू आइटम्स के लिए अतिरिक्त पृष्ठों को जोड़ने के अलावा, अधिक नहीं बदलता है।

उपरोक्त को ध्यान में रखते हुए, कौन सा ढांचा अधिक उपयुक्त होगा? क्यूटीपी या सेलेनियम या कुछ अन्य वाणिज्यिक/ओपन सोर्स टूल?

(मूल्य एक प्रमुख चिंता का विषय नहीं है, और न ब्राउज़र संगतता या ओएस है। प्रणाली एक विंडोज सर्वर पर स्थापित है, और डीबी संगत है।)

उत्तर

14

हम एक स्वीकृति 'रूपरेखा' के लिए सेलेनियम के आसपास बनाया गया परीक्षण किया है हमारे ऐप का परीक्षण करें जिसमें एक फ्लेक्स यूआई है जो जावा + डीबी बैक-एंड से बात करता है।

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

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

जब से मैं अपने सटीक स्थिति पता नहीं है मैं केवल आप निम्नलिखित पर विचार करने के सुझाव देते हैं कर सकते हैं:

  • कौन लेखन और परीक्षण को बनाए रखने की जाती है?
  • क्या सूट एक बड़े बुनियादी ढांचे का हिस्सा बनने जा रहे हैं?

सेलेनियम अगर एक उत्कृष्ट पसंद है ...

  • आप डेवलपर्स लेखन के लिए जिम्मेदार है और परीक्षण को बनाए रखने
  • आप एक बड़ा बुनियादी ढांचे
  • के हिस्से के रूप इन परीक्षणों की आवश्यकता है
  • आपको यकीन है कि आपको ब्राउज़र के बाहर बहुत अधिक परीक्षण करने की आवश्यकता नहीं है
  • आपको लगता है कि आप अन्य ब्राउज़रों का परीक्षण करना चाहेंगे विंडोज
  • अलावा घ अन्य प्लेटफार्मों आप कुछ मुक्त
  • एक अच्छा विकल्प

QTP हो सकता है अगर चाहते हैं ...

  • आप कम कोड-savy लोगों लेखन और बनाए रखने के परीक्षण
  • यदि आप ब्राउज़र के बाहर महत्वपूर्ण परीक्षण की जरूरत है (हालांकि मुझे यकीन है कि अगर सेलेनियम आईडीई गैर कोडर के लिए सीखने के लिए बहुत मुश्किल है नहीं कर रहा हूँ) है

यह article आपकी मदद भी कर सकता है।

मुझे लगता है कि यह स्पष्ट है कि मैं कौन सा पसंद करता हूं, लेकिन आपको यह तय करने की आवश्यकता है कि आपकी स्थिति के लिए सबसे अच्छा क्या काम करता है।

+1

यह एक अच्छा लेख है। हालांकि सेलेनियम 2 (वेबड्राइवर) के पास उस आलेख में पहले आइटम के लिए उत्तर YES होगा - यह वास्तविक उपयोगकर्ता इंटरैक्शन को अनुकरण करता है और इस विशिष्ट कार्य के लिए डिज़ाइन किया गया है। आपके उत्तर के अतिरिक्त, मैं सेलेनियम 2 का उपयोग करने की सलाह दूंगा यदि परीक्षण के तहत आवेदन एक वेब एप्लिकेशन है, और डेस्कटॉप एप्लिकेशन के लिए तर्कसंगत कार्यात्मक परीक्षक पर नज़र डालें। –

+1

आप सेलेनियम के सामने के अंत के रूप में रोबोट फ्रेमवर्क जैसे कुछ का उपयोग करने पर भी विचार कर सकते हैं - यह सेलेनियम लाइब्रेरी के अलावा पुस्तकालयों की एक विस्तृत श्रृंखला का समर्थन करता है, उदाहरण के लिए टेलनेट, एसएसएच, उसी मशीन पर चल रही प्रक्रियाएं। http://code.google.com/p/robotframework/ – testerab

+0

सेलेनियम को अपने फ्लेक्स यूआई के साथ काम करने के लिए आप क्या उपयोग कर रहे हैं? –

2

। क्या आप कहते हैं?

यदि आप वीएस -2010 का उपयोग कर रहे हैं, तो कोडित यूआई वास्तव में अच्छा है, लंबे समय तक क्यूटीपी उपयोगकर्ता (निश्चित रूप से अधिक तकनीकी पक्ष पर) कोडित यूआई एक सपना था, यहां तक ​​कि अस्तित्व के शुरुआती चरण में भी यह इतना शक्तिशाली है और विजुअल स्टूडियो इको सिस्टम में कसकर एकीकृत करता है कि यदि आप इसका उपयोग कर सकते हैं तो मैं इसे अत्यधिक अनुशंसा करता हूं। आप here

एक और टूल जो मेरा अनुभव अधिक सीमित है, लेकिन मैंने अच्छी चीजें सुनाई है (specflow) जो कि एक समझदार तरीके से परीक्षण बनाने और व्यवस्थित करने के लिए कोडित यूआई के साथ अच्छी तरह से काम कर सकती है।

किसी भी तरह से सोचने के लिए आपको कुछ दे सकता है!

3

मुझे लगता है कि आपकी सबसे अच्छी पसंद जीयूआई और गैर जीयूआई परीक्षण के लिए एचपी नया समाधान होगा। नया समाधान 2 उत्पादों के साथ एक नया एकीकरण है - क्यूटीपी & सर्विसटेस्ट।

  1. क्यूटीपी उन्नत क्षमताओं के साथ एक ज्ञात जीयूआई स्वचालन समाधान है जो संगठनों को जीयूआई परत में अपने आवेदन को स्वचालित करने में मदद करता है।
  2. सर्विसटेस्ट काफी नया समाधान है जो वेब सेवाओं को स्वचालित कर सकता है & अन्य गैर जीयूआई इंटरफेस।

उन 2 के बीच एकीकरण उपयोगकर्ताओं को क्रॉस परत अनुप्रयोगों को स्वचालित करने के साथ-साथ विभिन्न अनुप्रयोगों के बीच एकीकरण परीक्षण को एक समाधान प्रदान करता है।

आप एचपी साइट पर अधिक जानकारी प्राप्त कर सकते हैं।

2

प्रोग्रामिंग पुस्तकालयों (जावा, आदि) के एक विशाल सरणी (कोई इरादा नहीं) तक पहुंच के साथ मेरा वोट सेलेनियम-आरसी का उपयोग करना होगा। लेकिन पहले पोस्टर को जिम्मेदार ठहराते हुए, इसके लिए अतिरिक्त सीखने और रखरखाव वक्र की आवश्यकता होती है। लेकिन एक बार सेटअप करने के बाद, एप्लिकेशन केवल आपकी कल्पना (और प्रोग्रामिंग कौशल :)) से बंधे होंगे। सेलेनियम-आरसी (जावा में) का उपयोग कर डीबी एकीकरण एक सिंच था। हम सर्वर प्रतिक्रियाओं को मापने में सेलेनियम का व्यापक रूप से उपयोग करने में भी सक्षम थे। मुझे यकीन है कि क्यूटीपी में ऐसा करने के लिए हैक हैं, लेकिन एचपी समर्थन के साथ, यह हाल ही में क्या है, आपके बेटों को ओपन सोर्स समुदाय (और स्टैक ओवरफ्लो:) के साथ झूठ बोलना चाहिए) ...

+0

+1 क्योंकि यह खुला स्रोत है। –

1

मेरा लेना इस -

सेलेनियम अगर एक उत्कृष्ट पसंद

  • आप स्क्रिप्ट की जरूरत नहीं है गुणवत्ता केंद्र में हो रहा है ...। निरंतर एकीकरण दूसरी ओर आसान तरीका है।
  • सेलेनियम कम कार्यक्षमता यानी चेकपॉइंट्स वाला निम्न स्तर वाला टूल है।एक बड़ा सौदा नहीं है लेकिन स्क्रिप्ट को विकसित और बनाए रखने के लिए इसे और अधिक समय की आवश्यकता है। सेलेनियम 3 आ रहा है, हर बार जब सेलेनियम बाहर निकलता है, एपीआई बदलता है, तो पुराने स्क्रिप्ट को अलविदा कहने के लिए तैयार रहें (जब तक सेलेनियम के विभिन्न संस्करणों के साथ अलग मशीनें न हों)।
  • सेलेनियम एक नि: शुल्क उपकरण है, लेकिन आप खुद को पर सक्षम नहीं कर पाएंगे, केवल कार्यक्षमता अभी तक विकसित नहीं हुई है।
  • नहीं, डेवलपर्स आमतौर पर सेलेनियम, विशेष रूप से वेब स्तरीय (ब्राउज़र स्वचालन) के साथ महान नहीं होते हैं। जावा का ज्ञान एचटीएमएल डोम की पूरी समझ के साथ नहीं आता है। जुनीट से भ्रमित न हों, जिसे वे कभी-कभी उपयोग करते हैं।
  • बड़ी सेलेनियम परियोजनाएं एक्लिप्स में किसी अन्य परियोजना की तरह दिखती हैं। क्यूटीपी इस मामले में बेहतर है, खासकर क्यूसी के साथ।
  • जावा डेटा संरचनाओं के लिए बहुत अच्छा है और वीबीस्क्रिप्ट के विपरीत, एक पूर्ण ओओ भाषा है।

QTP अगर एक अच्छा विकल्प हो सकता है ...

  • आप क्यूसी के साथ एकीकरण की जरूरत है। कोई सरल समर्थन Continiuos एकीकरण।
  • बड़ी घुसपैठ परियोजनाएं QTP के साथ क्लीनर दिखती हैं। क्यूटीपी में वेब स्तरीय डिज़ाइन द्वारा कोड से अलग किए गए विवरण हैं (जीबीआई फाइलें जिसमें एचटीएमएल स्क्रिप्ट द्वारा उपयोग किए जाने वाले तत्वों के लिए विशेषताएं हैं)। सभी लाइब्रेरी फ़ाइलों को क्यूसी और एक्सेल फ़ाइल में संग्रहीत परीक्षण डेटा (सर्वोत्तम अभ्यास द्वारा) में रखा जाता है।
  • विंडोज़ पर वीबीस्क्रिप्ट बहुत अच्छा है: क्यूटीपी एपीआई के साथ आपको विन एपीआई और एचटीएमएल डोम तक सीधी पहुंच मिलती है।
  • क्यूटीपी 5 साल पहले से पुराने कोड का समर्थन करता है, और हाँ उनके पास ग्राहक सहायता है।
  • बाजार के लिए समय सेलेनियम से कम है। आपको फ़ोरम खोजने की आवश्यकता नहीं है, जब आपको xpath या टेक्स्ट द्वारा लिंक पर क्लिक करना होगा ... आप बस क्लिक करें। Chekpoints और अन्य

विभिन्न ब्राउज़रों के खिलाफ स्वचालन परीक्षण स्क्रिप्ट विकसित करने से पहले दो बार सोचें। जीयूआई दोषों की बात आती है जब स्वचालन कम हो जाता है। और लगभग सभी ब्राउज़र-विशिष्ट दोष स्टाइल, लेआउट (जीयूआई) हैं। कार्यात्मक दोष गलत मान प्रदर्शित होते हैं, या गैर-कार्य नियंत्रण कार्यात्मक दोष होते हैं जिन्हें 1 प्लेटफ़ॉर्म पर पहचाना जा सकता है।