2010-08-09 12 views
7

क्या मुझे अपने संगठनों के लिए यूनिट परीक्षण लिखना चाहिए?रेल यूनिट परीक्षण संघ

मुझे परीक्षण और कैसे करना है इस पर कई अच्छे संसाधन नहीं मिला है। मैं कुछ राय देखता/सुनता हूं कि आपके संगठनों (belong_to और has_many) का परीक्षण नहीं करना ठीक है क्योंकि वे रेल में पहले ही परीक्षण कर चुके हैं। और एक और दृश्य है जो कहता है, यदि यह कोड आप लिखते हैं, तो यह कोड है जिसे आप का परीक्षण करते हैं।

तो यदि आप कहते हैं कि मुझे चाहिए, तो कृपया मुझे ऐसा करने के कुछ अच्छे तरीके बताएं। वर्तमान में, मैं टेस्ट :: यूनिट का उपयोग करके परीक्षण लिख रहा हूं और मैं कंधे का उपयोग नहीं कर रहा हूं (मेरे पास कोई मैक्रोज़ नहीं है)। तो प्रत्येक एसोसिएशन का परीक्षण करने के लिए, मैं वस्तुओं का एक गुच्छा बना रहा हूं और फिर उन पर जोर दे रहा हूं। कुछ हद तक इस तरह - अपने परीक्षण तर्क

एक पोस्ट मॉडल है कि has_many टिप्पणी, के लिए इस तरह से चला जाता है -

p = Post.create(:title => 'dummy_title', :content => 'lorem ...')
3.times{ Comment.create(:post_id :=> p.id, :commentor => 'jack')}
assert_equal(3, p.comments.size, "post doesn't have correct no of comments")

+0

मैं आमतौर पर यह सत्यापित करने के लिए केवल 1 या 2 परीक्षण करता हूं कि वास्तव में वहां एक संघ है। मुझे भरोसा है कि अगर संघ मौजूद है, तो यह काम करता है। (बेशक, यदि आपके पास कोई है तो आपको एसोसिएशन पर विशिष्ट विकल्पों की जांच करने की आवश्यकता है) – alternative

उत्तर

12
मेरे लिए

, भाषा परीक्षण पर संघ की सीमाओं का परीक्षण (या में इस मामले में, ढांचे का परीक्षण)।

मैं इसे परिस्थितियों के लिए आरक्षित करता हूं जहां आप एसोसिएशन के साथ गैर-मानक कुछ कर रहे हैं। उदाहरण के लिए, यदि हर बार जब आप कोई टिप्पणी बनाते हैं तो यह मूल पोस्ट में कुछ बदलता है, परीक्षण करें।

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