यूनिट परीक्षण सबक्लास के लिए सबसे अच्छा तरीका क्या है? आइए मान लीजिए कि एक बेस क्लास है जिसके लिए मैंने पहले ही परीक्षण लिखे हैं और कुछ उप-वर्ग हैं जो कुछ माता-पिता के व्यवहार को सार्वजनिक और/या संरक्षित तरीकों से ओवरराइड करते हैं।यूनिट परीक्षण सबक्लास
क्या मेरे उप-वर्गों के लिए टेस्ट क्लास मेरे बेस क्लास के लिए टेस्ट क्लास (जहां उचित हो वहां परीक्षण विधियों को ओवरराइड कर सकता है) ताकि सभी बेस क्लास परीक्षण लागू किए जाएं? अन्यथा, मैं परीक्षण कोड दोहराया जाएगा।
लिस्कोव सबस्टेशन सिद्धांत लागू करने के तरीके के बारे में आपका दावा गलत है। एक सबक्लास की विधि को सभी बेस के यूनिट परीक्षणों को पारित करने की आवश्यकता नहीं होती है, अन्यथा वे व्यवहारिक रूप से समान होंगे। किस मामले में आधार विधियों को ओवरराइड करने का मुद्दा क्या है? –
मूल पोस्टिंग Liskov सिद्धांत सही है। उपclass superclass, * और अधिक * के लिए सभी यूनिट परीक्षण पास करना चाहिए। अतिरिक्त परीक्षण उपclass की अतिरिक्त कार्यक्षमता को दर्शाता है। बेशक आप लिस्कोव का उल्लंघन करने के लिए इस तरह से एक विधि को ओवरराइड कर सकते हैं, और इस मामले में प्रासंगिक यूनिट परीक्षण विफल हो जाएंगे। – ComDubh