मैं Fixture Replacement 2 के लिए वकालत करूंगा। आपका डिफ़ॉल्ट (परवाह नहीं है) मॉडल विशेषताओं को एक ही स्थान पर संग्रहीत किया जाता है, डीबी/example_data.rb, और त्वरित मान्य ऑब्जेक्ट प्रदान करते हैं। निर्माण पर निर्दिष्ट कोई भी विशेषता डिफ़ॉल्ट विशेषताओं को ओवरराइड करती है - जिसका अर्थ है कि देखभालपरीक्षण में और कुछ और नहीं है।
आपका उदाहरण डेटा अन्य डिफ़ॉल्ट मॉडल का भी संदर्भ दे सकता है, जो देरी वाले मूल्यांकन के साथ प्रो द्वारा प्रतिनिधित्व किए जाते हैं, ताकि आप वांछित होने पर आसानी से एसोसिएशन ओवरराइड कर सकें।
संस्करण 2 एक बहुत साफ परिभाषा प्रारूप प्रदान करता है, जबकि अभी भी प्रत्येक मॉडल के लिए जादू new_*, create_*, and default_*
विधियां प्रदान करता है।
मैं किसी भी प्रकार की "परिदृश्य" योजना से बचूंगा जो बाद में पढ़ने के लिए कठिन और अधिक परीक्षण डेटा बनाने के लिए प्रोत्साहित करता है। आप FR2 के साथ नामित (कस्टम) ऑब्जेक्ट्स बना सकते हैं, लेकिन मुझे इसकी आवश्यकता कभी नहीं मिली है।
पीएस सुनिश्चित करें कि आप अपने इकाई परीक्षण रणनीति के साथ-साथ फिक्स्चर और उनके सभी अनुरूप वास्तविक ऑब्जेक्ट्स हैं जो डीबी को हिट करते हैं, जो कार्यात्मक या एकीकरण परीक्षण के लिए बनाते हैं। मैं वर्तमान में stub_model()
के साथ आरएसपीसी के मॉकिंग का उपयोग कर रहा हूं और डीबी एक्सेस को अस्वीकार करने के लिए नवीनतम unit_record मणि का उपयोग कर रहा हूं।
स्रोत
2008-10-18 00:05:28
"लड़की" के लिए मतदान किया – DFectuoso