निजी तरीकों के लिए परीक्षण लिखना अच्छा अभ्यास है?क्या मुझे आरएसपीईसी का उपयोग करके निजी तरीकों का परीक्षण करना चाहिए?
class Group
has_many :members
private
def release_members
members.each { |member| member.update_attributes group_id: nil }
end
end
यह RSpec में release_members विधि के लिए एक परीक्षण लिखने के लिए अच्छा अभ्यास होगा:
निम्नलिखित सरल उदाहरण पर विचार करें? मेरा मानना है कि आपको विधि भेजने के साथ विधि को कॉल करना होगा। group.send(:release_members)
जो कभी-कभी फहरा हुआ होता है।
ऐसा प्रतीत होता है कि रूबी रोग्स में सैंडी मेटज़ द्वारा पॉडकास्ट है जो इस विषय के बारे में बात करता है http://rubyrogues.com/087-rr-book-clubpractical-object-oriented-design-in-ruby-with-sandi- मेट्ज़ /। तर्क यह है कि यदि आप चाहें तो निजी विधि का परीक्षण कर सकते हैं (अंततः परीक्षण भी हटाएं) लेकिन सबसे महत्वपूर्ण बात यह है कि निजी इंटरफेस जिसे सार्वजनिक विधि कहा जाता है। –