2011-06-15 13 views
5

लिखने के लिए कुछ विचारों की आवश्यकता है मैं सेलेनियम और सी # का उपयोग कर वीएस 2010 में कुछ यूनिट परीक्षण लिख रहा हूं। मेरे पास कुछ टेस्ट केस हैं। उदाहरण के लिए, अपने परीक्षण मामलों में से कुछ हैं:स्वचालित परीक्षण

  1. लॉन्च वेबसाइट: http://localhost:8080। साइन ऑन पेज मौजूद है सत्यापित करें। उपयोगकर्ता नाम और पासवर्ड दर्ज करें, और लॉग इन करें।

  2. यह देखने के लिए जांचें कि खोज टैब मौजूद है या नहीं। खोज टैब पर क्लिक करें। टैब की पुष्टि करें पुस्तकें, खोज छवियां, और खोज वेब मौजूद हैं।

  3. खोज पुस्तकें पर क्लिक करें। "डमीज़ के लिए सी-शार्प" टाइप करें। खोज पर क्लिक करें। सत्यापित करें कि उचित परिणाम लौटाए गए हैं।

अब, मेरे सवाल है: क्या यह एक बेहतर विचार ऊपर परीक्षण मामलों के लिए अलग-अलग कक्षाएं बनाने के लिए या यह बेहतर उन्हें एक वर्ग के लिए गठबंधन करने के लिए, और सिर्फ अलग तरीकों है?

सभी तीन परीक्षण मामले एक दूसरे से संबंधित हैं। इसका मतलब है कि, # 2 को निष्पादित करने के लिए पहले # 1 पूर्ण होना आवश्यक है, और # 3 को पहले पूर्ण करने के लिए # 2 की आवश्यकता है। अगर मैं अलग-अलग कक्षाएं बनाता हूं, तो मेरा मानना ​​है कि मुझे कक्षा # 2 में # 1 में विधि को कॉल करने और कक्षा # 3 में # 1 और # 2 में कॉल विधियों को कॉल करने की आवश्यकता होगी।

मुझे यकीन नहीं है कि इसके लिए एक अच्छा विचार क्या होगा। अग्रिम में धन्यवाद।

+5

बस उनको नाइटपिक करने के लिए एकीकरण परीक्षण होंगे, यूनिट परीक्षण नहीं – Davy8

उत्तर

1

यदि आप अपने सेलेनियम परीक्षण को नियंत्रित करने के लिए NUnit जैसे कुछ का उपयोग करते हैं तो बिंदु 1 SetUp के अंदर हो सकता है क्योंकि हम मान सकते हैं कि आपके सभी परीक्षणों में से कुछ (या अधिक) लॉग इन करने की आवश्यकता होगी। चूंकि यह विफल होने पर आपके सभी परीक्षण विफल हो जाएंगे, इसलिए इसे वास्तव में स्वतंत्र परीक्षण की आवश्यकता नहीं है।

यदि आप बिंदु 2 और 3 के बीच बातचीत को देखते हैं तो कुछ पार हो जाता है और कुछ स्वतंत्र परीक्षण होता है।

यदि आप क्रॉसओवर परीक्षण (खोज पुस्तक लिंक पर क्लिक करना) पर विचार करते हैं तो बिंदु 3 रन 2 पर निर्भर करता है, इसे चलाने से पहले चलाने के लिए, इस प्रकार दो अलग-अलग परीक्षण होते हैं, यदि परीक्षण 2 विफल रहता है तो परीक्षण 3 हमेशा असफल हो जाएगा ।

बिंदु 2 में आप परीक्षण कर रहे हैं कि तीन लिंक दिखाई देते हैं, लेकिन परीक्षण 3 में आप केवल उनमें से एक पर क्लिक कर रहे हैं, इस प्रकार बिंदु 2 असफल हो सकता है लेकिन 3 सफल हो सकता है, इस प्रकार उन्हें अलग-अलग परीक्षण होना चाहिए। हालांकि, बिंदु 3 निर्भर नहीं है पूरी तरह से बिंदु 2.

व्यक्तिगत रूप से आपके पास दो विकल्प हैं, यदि आप "छवियां खोजें" और "खोज वेब" का परीक्षण करने जा रहे हैं तो आपको बिंदु 2 नहीं होना चाहिए। लिंक की दृश्यता और लिंक पर क्लिक करने का दावा सभी को बिंदु 3 में मिलाया जाना चाहिए।

यदि आप "छवियां खोजें" और "खोज वेब" का परीक्षण नहीं करेंगे तो यह बिंदु 2 होना ठीक है हालांकि परीक्षण 3 को बिंदु 2 की विधि को कॉल नहीं करना चाहिए क्योंकि यह अतिरिक्त कार्यक्षमता का परीक्षण करता है जो 3 बिंदुओं पर ध्यान नहीं देता है। यह मानना ​​चाहिए कि "खोज पुस्तकें" लिंक वहां है और इसे पॉइंट 2 से स्वतंत्र रूप से क्लिक करें।

+0

आपके विचार साझा करने के लिए धन्यवाद, और इस तरह के अच्छे विवरण में अपना बिंदु समझाएं। मुझे लगता है कि मैं # 2 और # 3 गठबंधन करूंगा। – Maya

1

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

आप सेलेनियम के विकल्प के रूप में WatiN को भी आजमा सकते हैं।

संबंधित मुद्दे