2013-04-19 9 views
13

की तुलना स्केलटेस्ट और स्पॉक कैसे भिन्न होती है? प्रत्येक का जोड़ा मूल्य क्या है? व्यवहार प्रेरित विकास (बीडीडी) के लिए कौन सा चुस्त है? कृपया आप इस मामले पर कुछ विचार साझा कर सकते हैं?स्कैलाटेस्ट और स्पॉक

मैं बीडीडी शुरू करना चाहता हूं, मैं दोनों के बीच एक चुनना चाहता हूं, इसलिए मैं एक शिक्षित निर्णय लेना चाहता हूं। इसलिए मुझे सबसे पहले जानकारी मिलती है, विशेष रूप से यह देखते हुए कि मैं एक जावा प्रोग्रामर हूं और उस स्कैला में सीखने की वक्र होती है जो महत्वपूर्ण है।

किसी भी सलाह या विचार या अनुभव से वापसी का स्वागत किया जाएगा।

बहुत धन्यवाद

उत्तर

23

संक्षेप में, मैं स्काला कोड के परीक्षण के लिए ScalaTest उपयोग करने के लिए सलाह देते हैं, और परीक्षण जावा या ग्रूवी कोड के लिए स्पॉक होगा। (बेशक, स्कैलाटेस्ट के साथ जावा कोड का परीक्षण करना भी पूरी तरह से संभव है।) दोनों औजारों को एक शॉट और स्टिक क्यों न दें जिससे आप अधिक सहज महसूस कर सकें?

अस्वीकरण: मैं स्पॉक का निर्माता हूं।

+0

उत्तर के लिए बहुत धन्यवाद, मैं कोशिश करूँगा – MaatDeamon

+1

पीटर यहां बहुत उदार है। स्पॉक की विशेषताएं बिना किसी संदेह की छाया के इतनी भयानक हैं कि मेरे लिए, यह धूल में सभी परीक्षण ढांचे को छोड़ देता है। ऐसा कहकर, यह अच्छा होगा अगर @ पीटर टिप्पणी कर सकता है अगर वास्तव में स्कॉक स्केल के लिए परीक्षण ढांचे के रूप में काम करने योग्य है ... क्योंकि मैंने एक पुरानी पोस्ट पढ़ी है जिसमें स्पॉक की सुविधा संकलक निर्भर है? – Beezer

3

जबकि मैं पीटर के उत्तर से सहमत हूं, मैं इस पर अपना दृष्टिकोण देना चाहता हूं।

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

मुझे अन्य इकाई परीक्षण ढांचे/पुस्तकालय को नहीं मिल रहा है जो ऐसा करता है।

संक्षेप में, यदि आपको एकल परीक्षण परिदृश्य के लिए एकाधिक इनपुट/आउटपुट का परीक्षण करने की आवश्यकता है, तो स्पॉक का उपयोग करें, अन्यथा, जो भी आप सहज महसूस करते हैं उसे चुनने के लिए स्वतंत्र महसूस करें।

+0

पूर्णता के लिए https://github.com/junit-team/junit4/wiki/parameterized-tests, jnnit वही कर सकता है, यह सिर्फ बदसूरत –

+0

है मुझे ऐसा नहीं लगता है, पैरामीटर-परीक्षण केवल अनुमति देगा प्रति यूनिट टेस्ट क्लास (कन्स्ट्रक्टर पैरामीटरकृत) पर अधिकतम एकल परिदृश्य। फ़ील्ड पैरामीटरयुक्त पर, आप अधिक प्राप्त कर सकते हैं, लेकिन केवल यूग्लियर प्राप्त करने के लिए। – Wins

+0

मैं सहमत हूं। यह सिर्फ इतना है कि, सैद्धांतिक रूप से, junit _does_ में यह सुविधा है, जबकि कुरूपता कारक यह बनाता है कि, व्यावहारिक रूप से, यह कहीं भी कहीं भी उपयोग करने के लिए मजबूर नहीं है। –

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