7

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

प्रश्न: प्रश्न यह है कि इन सभी के साथ एकीकृत स्पॉक का सबसे अच्छा तरीका क्या है? कोई सिफारिशें, सर्वोत्तम प्रथाओं?

उत्तर

4

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

+2

हारून मैकडॉवेल के उत्तर पर मेरी टिप्पणी के अनुसार, आपको सोनारक्यूब सर्वर पर ग्रोवी प्लगइन भी इंस्टॉल करना चाहिए ताकि सोनार आपकी ग्रोवी टेस्ट फाइलों से अवगत हो। –

2

दरअसल आपको सोनार के साथ एकीकृत करने में परेशानी हो सकती है। सोनार Surefire सेंसर सफलतापूर्वक आपकी surefire रिपोर्ट मिल जाएगा; हालांकि, सेंसर सोनार को प्रकाशित करने के लिए परीक्षण स्रोत से जुड़ने का प्रयास करता है। जब ऐसा होता है, तो यह .java का फ़ाइल एक्सटेंशन मानता है।

[जानकारी] [13: 00: 34.734] तो तुम अपने निर्माण में उत्पादन है कि इस तरह दिखता है देखेंगे सेंसर SurefireSensor ...
[जानकारी] [13: 00: 34.735] पार्स/घर/amcdowel/accurev/projectFoo/लक्ष्य/अचूक-रिपोर्टों
[चेतावनी] [13: 00: 34.747] नहीं मिला संसाधन: com.abc.monitor.app.model.MonitorTest

अपने द्वारा बनाया गया कोड कवरेज आपके सोनार डैशबोर्ड में स्पॉक परीक्षणों की सफलतापूर्वक रिपोर्ट की जाएगी, लेकिन यूनिट परीक्षणों और सफलता/त्रुटि गणनाओं की संख्या शामिल नहीं की जाएगी।

+1

ऐसा लगता है कि यदि आप सोनारक्यूब सर्वर में ग्रोवी प्लगइन स्थापित करते हैं तो यह सच नहीं है। मैं प्लगइन स्थापित करके दिखाने के लिए अपने प्रोजेक्ट के ग्रोवी (स्पॉक) परीक्षणों को प्राप्त करने में सक्षम था, मेरी ग्रोवी स्रोत निर्देशिका को शामिल करने और सोनार मेवेन कार्य को पुन: स्थापित करने के लिए sonar.tests प्रॉपर्टी को अपडेट करना। ' src/test/java, src/test/groovy' –