2009-08-18 8 views
7

मैंने एसओ की खोज की, नकारात्मक परीक्षण के बारे में छोटी सी चीज खोजना, जो कि काम के दौरान डेवलपर्स को ध्यान में रखना बहुत महत्वपूर्ण बात है। नकारात्मक परीक्षण डेवलपर के लिए शीर्ष 10 टेस्ट केस की सूची बनाने के बारे में क्या ध्यान में रखना चाहिए?शीर्ष 10 नकारात्मक परीक्षण सूची

धन्यवाद!

नकारात्मक परीक्षण की परिभाषा:

सॉफ्टवेयर परीक्षण, एक परीक्षण क्या परिभाषित किया गया है के बाहर प्रणाली की प्रतिक्रिया का निर्धारण करने के लिए बनाया है। यह निर्धारित करने के लिए डिज़ाइन किया गया है कि सिस्टम अप्रत्याशित इनपुट के साथ क्रैश नहीं होता है या नहीं।

+0

एक दिलचस्प सवाल की तरह लगता है, लेकिन वास्तव में नकारात्मक परीक्षण क्या है? क्या यह असामान्य लेकिन संभावित उपयोगकर्ता इनपुट के लिए यूनिट परीक्षण की तरह है? या कुछ पूरी तरह से अलग है? –

उत्तर

5

नकारात्मक परीक्षण

एक परीक्षण

एक शीर्ष दस की सूची में से एक उदाहरण के लिए http://www.pragmaticsw.com/Newsletters/newsletter_2007_09_SP.htm देखने के लिए अमान्य डेटा गुजर सीमाओं का परीक्षण करते हुए एट अल अच्छा है, TDD में इसे करने के लिए बेहतर होगा

इसलिए यादृच्छिक रूप से अपेक्षित अपवाद स्थितियों के लिए स्पष्ट रूप से अपेक्षित अपवाद स्थितियों के लिए परीक्षण करें, इसलिए शीर्ष दस सूची या तो बहुत सामान्य होगी, धारणाओं का एक समूह बनायेगी, या टी नहीं होगी ओओ सामान्य रूप से उपयोगी होने के लिए विशिष्ट ;-)

+0

ठीक है, ठीक है मुझे खुशी है कि किसी को पता था कि यह क्या था। :) –

+0

@ [रॉबर्ट हार्वे]: गूगल जानता है! –

+1

निश्चित रूप से, लेकिन मैंने देखा कि Google में किए गए मैचों में, हम आधिकारिक से कम कहेंगे। मैं अनुमान लगाने वाला नहीं था, और मैंने कभी भी इस शब्द को आम उपयोग में कभी नहीं सुना होगा, हालांकि स्कॉट हंसेलमैन ने "आर्ट ऑफ़ यूनिट टेस्टिंग" पॉडकास्ट में एक बार शब्द का उपयोग किया था। –

0

हां, वह परीक्षण लिखने के बारे में बात कर रहा है जैसे कि आप सुनिश्चित करते हैं कि कोड न केवल ऐसा करने का मतलब करता है, बल्कि अधिक नहीं करता है।

तो एक फ़ाइल को हटाया गया है या नहीं, यह जांचने के लिए एक परीक्षण की कल्पना करें; आप पूरे फ़ोल्डर को हटा सकते हैं और यह सच हो जाएगा।

परीक्षण का यह रूप तर्कसंगत रूप से दिलचस्प है, लेकिन संभावित रूप से संदिग्ध मूल्य है।

उदाहरण के लिए यदि आप यह सुनिश्चित करना चाहते हैं कि 'अपडेट' कथन आपकी दी गई पंक्ति को प्रभावित कर रहा है, तो आपको पहले यह भी पुष्टि करनी चाहिए कि यह केवल एक पंक्ति को प्रभावित करता है।

मुझे लगता है कि मेरा उबाऊ झुकाव क्या सुझाव दे रहा है, यह है कि यह शायद आपके सामान्य परीक्षणों में शामिल होना चाहिए। शायद।

वैसे भी सोचने के लिए दिलचस्प है।

3

स्कॉट हंसेलमैन के पॉडकास्ट में, "रॉय ओशरोव के साथ यूनिट परीक्षण की कला", स्कॉट का कहना है कि जब वह टीडीडी का उपयोग कर आवेदन बना रहा है तो वह सकारात्मक परीक्षण लिखता है, और कोड कवरेज में सुधार के लिए कोड लिखा जाने के बाद नकारात्मक परीक्षण ।

रॉय ओशरोव कहते हैं कि शुरुआत में नकारात्मक परीक्षण मूल्य नहीं जोड़ते हैं; आप अपने मालिक के पास नहीं जा सकते और कह सकते हैं, "अरे देखो, यह सब कुछ है जो कोड नहीं करेगा!"

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

3

Pex जैसे उपकरण यहां उपयोगी हो सकते हैं; यह उन मूल्यों/परिदृश्यों को खोजने का प्रयास करने के लिए डिज़ाइन किया गया है जो कोड को क्रैश करते हैं (प्रत्येक कोड शाखा का उपयोग करके और संभावित त्रुटि-केस जैसे div-by-zero/overflow/etc), जो इसके द्वारा किए गए स्थिर विश्लेषण के आधार पर किया जाता है। इसने .NET "resx" पाठक जैसे कोड में कुछ किनारे-मामलों को सफलतापूर्वक पाया है।

+0

आह, हाँ, अगर 'fuzzers' के लिए इस खोज की तरह टूल्स की तलाश है। –

+0

ने अभी पेक्स की कोशिश की। और यह कमाल है। –

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