2011-06-17 12 views
43

मैं अपने रेल 3.0.8 एप्लिकेशन के लिए एक परीक्षण सूट बनाने की योजना चरण शुरू कर रहा हूं। मैं यह तय करने की कोशिश कर रहा हूं कि किस परीक्षण ढांचे/रत्नों का उपयोग करना है। आम तौर पर मैं जितना संभव हो रेल सम्मेलन में रहना पसंद करता हूं। हालांकि, इसका मतलब TestUnit का उपयोग करना है। टेस्ट यूनिट के विकल्प के रूप में बनाए गए चुनने के लिए कई प्रतिस्पर्धी परीक्षण ढांचे हैं। क्या TestUnit वर्षों से बेहतर हो गया है, या यह एक बहुत अच्छा दावेदार नहीं है?रुपेक बनाम टेस्टयूनीट

मैंने आरएसपीईसी के बारे में बहुत अच्छी चीजों के बारे में भी सुना है। आरएसपीईसी और टेस्टयूनीट कार्यक्षमता के मामले में बंद हैं, या आरएसपीसीसी पानी से बाहर testUnit झटका करता है?

जो भी ढांचा मैं चुनता हूं, मैं इसे एक अच्छा समर्थन आधार (उपयोगकर्ताओं और दस्तावेज़ीकरण के बहुत सारे), उपयोग/सादगी में आसानी, और एक स्थायी भविष्य के लिए पसंद करूंगा।

+0

जैसा कि मैंने [इस उत्तर] में कहा था (http://stackoverflow.com/questions/6348351/best-resources-for-learning-tdd-with-rails/6348613#6348613) मैं आपको यह पढ़ने के लिए सुझाव दूंगा [यह पुस्तक] (http://pragprog.com/titles/nrtest/rails-test-prescriptions) एक रेल ऐप का परीक्षण कैसे करें और यह पता लगाने के लिए कि आप कौन से टूल्स का उपयोग करना चाहते हैं –

उत्तर

37

दोनों टेस्ट :: यूनिट और रुपेक बहुत अच्छे समाधान हैं। मेरे लिए मैं अपने रेल प्रोजेक्ट में आरएसपीसी का उपयोग करना पसंद करता हूं - क्योंकि इसमें ऑटोटैस्ट जैसे कई स्वचालित समाधान हैं, सिंटैक्स को हाइलाइट करना, शॉर्टकट कमांड जैसे rake spec और अन्य सामान जो परीक्षण ईस्टर का उपयोग करते हैं। लेकिन मेरे सादे माणिक लिपियों में मैं का उपयोग टेस्ट :: यूनिट - यह बहुत हल्का है और यह staightforward जब आप जटिल परीक्षण (integrational और अन्य)

14

उत्तर स्वाद का विषय है, एक परियोजना में दोनों का उपयोग करें और खुद को ढूंढें कि आप क्या पसंद करते हैं। (मैं टेस्ट :: यूनिट करता हूं, आरएसपीसी को मेरे लिए बहुत चीनी है)।

अपडेट 2014: रूबी 2.x में मिनीटेस्ट अंतर्निहित है, मैं मिनीटेस्ट :: स्पीक को जांचने का सुझाव दूंगा जो अंततः सरल बीडीडी एक्सटेंशन है। आप टेस्ट संदर्भों को अच्छी तरह से संरचना करने के लिए "वर्णन" और "इसे" ब्लॉक मिश्रण कर सकते हैं। यदि आप assert से अधिक करना चाहते हैं तो यह "must_be .." matchers भी प्रदान करता है।

4

आप के साथ cucumber और webrat जवाहरात rspec इस्तेमाल कर सकते हैं जो एक महान संयोजन बनाता है की जरूरत नहीं है , यदि आपके पास एक बड़ी वेबसाइट है। यह पहले बोझिल होगा लेकिन बाद में यह एक बड़ा लाभ होगा।
155 ककड़ी के साथ शुरू
156 Webrat
157 RSpec matchers & मैक्रो
159 अधिक ककड़ी पर

वहाँ भी कर रहे हैं:

आप उन रत्नों के बारे में अधिक जानकारी के लिए निम्न Railscasts एपिसोड देख सकते हैं capybara जैसे कुछ अन्य रत्न जो अपेक्षाकृत नए और आशाजनक हैं, लेकिन ईमानदारी से मैंने इसे आजमाया नहीं है।

8

मैं पसंद करते हैं और इन रत्नों (सरल बनाने उदाहरण के लिए) करने के लिए

  • निर्माण (डेटाबेस के लिए यादृच्छिक और उचित डेटा बनाने के लिए) परीक्षण

  • 2

    आप परीक्षण रेल आवेदन के साथ अपनी यात्रा शुरू किया है तो मैं सिफारिश करेंगे तुम क्या कर शुरू यह सभी आवश्यक उदाहरण दिए गए हैं यह TestUnit के साथ। आप http://www.codeschool.com/courses/rails-testing-for-zombies पर सर्वोत्तम परीक्षण रेल ऐप और सर्वोत्तम प्रथाओं के बारे में बहुत अच्छा कोर्स प्राप्त कर सकते हैं यदि परीक्षण करने की बात आती है तो आप अधिक अनुभवी होते हैं तो आप आरएसपीसी को आजमा सकते हैं।

    5

    This Ruby Inside article, खासकर अगर आप लिंक का पालन करते हैं और टिप्पणियां पढ़ते हैं, तो टेस्ट :: यूनिट और आरएसपीसी के सापेक्ष गुणों की पूरी तरह से चर्चा करता है। एक प्रमुख से अलग प्रतीत हो रहा है कि:

    • लोग हैं, जो गैर तकनीकी ग्राहकों है अधिक RSpec और ककड़ी देखने पर अधिक अनुकूल होने की संभावना है;
    • अन्य टेस्ट :: यूनिट जैसे अधिक प्रत्यक्ष सिस्टम पसंद करने की अधिक संभावना है।

    आरएसपीसी और ककड़ी की तुलना के लिए this part of Michael Hartl's Rails Tutorial भी देखें।

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