संदर्भ के लिए - http://en.wikipedia.org/wiki/Single_responsibility_principle
मेरे पास एक परीक्षण परिदृश्य है जहां आवेदन के एक मॉड्यूल में खाता बही प्रविष्टियां बनाने के लिए जिम्मेदार है। तीन बुनियादी कार्य हैं जिन्हें पूरा किया जा सकता है -
- तालिका स्वरूप में मौजूदा खाता-बही प्रविष्टियाँ देखें।
- Create बटन का उपयोग करके नया लेज़र एंट्री बनाएँ।
- तालिका में एक लेज़र प्रविष्टि पर क्लिक करें (पहले पॉइंटर में उल्लिखित) और अगले पृष्ठ में इसके विवरण देखें। आप इस पृष्ठ में एक लेज़र प्रविष्टि को शून्य कर सकते हैं।
(प्रत्येक पृष्ठ में कुछ और संचालन / मान्यताएँ हैं लेकिन संक्षिप्तता के कारण मैं इसे इन तक सीमित करूँगा)
इसलिए मैंने तीन अलग-अलग कक्षाएं बनाने का फैसला किया -
- LedgerLandingPage
- CreateNewLedgerEntryPage
- ViewLedgerEntryPage
ये वर्ग उन सेवाओं की पेशकश करते हैं जिन्हें उन पृष्ठों में किया जा सकता है और सेलेनियम परीक्षण इन कक्षाओं का उपयोग एक राज्य में आवेदन करने के लिए करता है जहां मैं कुछ दावे कर सकता हूं।
जब मैं अपने सहकर्मी के साथ इसकी समीक्षा कर रहा था, तब वह बहुत निराश था और उसने मुझे सभी के लिए एक एकल वर्ग बनाने के लिए कहा। हालांकि मुझे अभी भी लगता है कि मेरा डिज़ाइन बहुत साफ है, अगर मैं सिंगल रिस्पॉन्सिबिलिटी के सिद्धांत का इस्तेमाल कर रहा हूं तो मुझे संदेह है