क्या कोई पर्ल के लिए कुछ अच्छे स्वचालित परीक्षण सूट ढांचे का सुझाव दे सकता है?क्या पर्ल के लिए कोई अच्छा स्वचालित परीक्षण सूट है?
उत्तर
यह वास्तव में इस बात पर निर्भर करता है कि आप क्या करने का प्रयास कर रहे हैं, लेकिन इसमें से अधिकांश के लिए यहां कुछ पृष्ठभूमि है।
सबसे पहले, आप आम तौर पर टेस्ट के साथ अपने परीक्षण कार्यक्रमों लिखते थे :: अधिक या टेस्ट :: कोर परीक्षण कार्यक्रम के रूप में सरल:
use Test::More tests => 2;
is 3, 3, 'basic equality should work';
ok !0, '... and zero should be false';
आंतरिक रूप से, टेस्ट :: बिल्डर उत्पादन के लिए के रूप में उन परीक्षण के परिणाम कहा जाता है टीएपी (Test Anything Protocol)। टेस्ट :: हार्नेस (टीएपी :: हार्नेस के चारों ओर एक पतला रैपर), टीएपी को पढ़ता है और व्याख्या करता है, आपको बताता है कि क्या आपके परीक्षण पास हुए या असफल रहे। ऊपर वर्णित "सिद्ध" उपकरण टेस्ट :: हार्नेस के साथ बंडल किया गया है, तो मान लीजिए कि उपरोक्त को टी/निर्देशिका (मानक पर्ल परीक्षण निर्देशिका) में "संख्याओं" के रूप में सहेजें।टी ", तो आप इसे इस आदेश के साथ चला सकते हैं:
prove --verbose t/numbers.t
या कि निर्देशिका में सभी परीक्षण चलाने के लिए (रिकर्सिवली, यह मानते हुए आप उपनिर्देशिकाएं में उतर करना चाहते हैं):
prove --verbose -r t/
(--verbose जाहिर है, वैकल्पिक है)।
एक तरफ ध्यान दें के रूप में, TestUnit प्रयोग नहीं करते। बहुत से लोग यह सलाह देते हैं, लेकिन यह एक लंबे समय पहले छोड़ दिया गया था और आधुनिक परीक्षण उपकरण के साथ एकीकृत नहीं है।
मैं टेस्ट के लिए जाना चाहते हैं :: अधिक, या सामान्य रूप में, कुछ भी है कि आउटपुट TAP
अब के रूप में, हम का उपयोग टेस्ट :: अधिक लेकिन मौजूदा मुद्दा हम सभी परीक्षण फ़ाइलें मैन्युअल रूप से चलाना है कि है परीक्षण के लिए। जो मैं खोज रहा हूं वह एक अधिक स्वचालित ढांचा है जो वृद्धिशील परीक्षण/बिल्ड चेक आदि कर सकता है
टेस्ट के चारों ओर एक रैपर :: इसके लिए अधिक आदर्श होगा लेकिन कुछ बेहतर और अधिक कार्यात्मक भी ठीक होगा।
मैं पर्लुनीट के माध्यम से जा रहा हूं यह देखने के लिए कि क्या इससे मदद मिलती है।
अगर मैं तुम्हें समझ में सही ढंग से आप TAP::Harness
लिए देख रहे हैं आप आदेश दर्ज करके ExtUtils::MakeMaker या Module::Build उपयोग कर रहे हैं, तो आप अपने सभी परीक्षणों चला सकते हैं स्वचालित रूप से "परीक्षण कर" या "परीक्षण का निर्माण" है, जो आपके प्रोजेक्ट के टी/उपफोल्डर में किसी * .t फ़ाइलों को निष्पादित करेगा।
यदि आप इनमें से किसी एक का उपयोग नहीं कर रहे हैं, तो आप एकाधिक परीक्षण स्क्रिप्ट के निष्पादन को स्वचालित करने के लिए TAP::Harness का उपयोग कर सकते हैं।
वास्तव में परीक्षण लिखने के लिए, Test::More या किसी भी मॉड्यूल का उपयोग करें जो अन्य ने यहां सुझाए हैं।
क्या आप 'साबित' उपयोगिता (ऐप :: प्रोव से) से अवगत हैं? आप इसे किसी दिए गए निर्देशिका में बिना किसी शब्द के, या बिना शब्द के सभी परीक्षणों को चलाने के लिए कह सकते हैं,
व्यक्तिगत रूप से, मुझे टेस्ट :: अधिकांश, इसकी मूल रूप से टेस्ट :: कुछ अतिरिक्त शानदार सुविधाओं के साथ अधिक पसंद है। बाहर CPAN Testers, जो स्वचालित परीक्षण के लिए उपकरणों का एक बहुत कुछ है http://sourceforge.net/projects/smolder
जब तक आप परीक्षण है कि नल का उत्पादन का उपयोग कर रहे (टेस्ट कुछ भी प्रोटोकॉल) उत्पादन आप इस उपयोगी होने के लिए मिल सकती है। उनमें से अधिकांश सीपीएएन पर होना चाहिए ताकि आप अपनी जरूरतों को पूरा करने के लिए इसे संशोधित कर सकें। टीएपी :: हार्नेस का उपयोग करके अपना खुद का परीक्षक लिखना भी बहुत आसान है।
आपको वास्तव में क्या करना है और आप इसे अपनी प्रक्रिया में कैसे फिट करने की कोशिश कर रहे हैं?
की जांच:
हम परीक्षण
आप निश्चित रूप से साबित का उपयोग किया जा करना चाहते हैं के लिए मैन्युअल रूप से सभी परीक्षण फ़ाइलों चलाने के लिए है (अपने परीक्षण चलाता है) और/या मॉड्यूल :: बिल्ड (अपने कोड बनाता है और फिर का उपयोग कर अपने परीक्षण चलाता है एक ही परीक्षण दोहन कोड जो आंतरिक रूप से उपयोग करता है।)
पर्ल में स्वचालित परीक्षण के लिए Test::Harness पर एक नज़र डालें, जिसमें prove
उपकरण शामिल है।
prove
उपकरण निम्न आदेश के साथ क्रियान्वित किया जा सकता:
prove -r -Ilib t
यह 'टी /' निर्देशिका में परीक्षण सभी * .t फ़ाइलों recursivly होगा, जबकि शामिल पथ के लिए lib
जोड़ने।
-l एक शॉर्टेंड है -इलीब – Schwern
पसंद का टेस्ट स्वीट ढांचे Test::Harness है, जो एक परीक्षण चालन को नियंत्रित करने, परिणामों का संग्रह का ख्याल रखता है, आदि
विभिन्न मॉड्यूल परीक्षण, जिनमें से सबसे आम पाया जा सकता है के कुछ प्रकार प्रदान करने के लिए मौजूद है Test::Simple और Test::More में (दोनों टेस्ट-सरल वितरण में शामिल हैं)। सीपीएएन पर पूरा टेस्ट नेमस्पेस विशेष यूनिट-परीक्षण मॉड्यूल को समर्पित है, जिनमें से अधिकांश टेस्ट :: हार्नेस के तहत चलाने के लिए डिज़ाइन किए गए हैं।
सम्मेलन के अनुसार, परीक्षण एक परियोजना की टी/निर्देशिका में संग्रहीत होते हैं, और प्रत्येक परीक्षण फ़ाइल फ़ाइल एक्सटेंशन का उपयोग करती है .t; परीक्षण आमतौर पर
के माध्यम से चलाए जा रहे हैंprove t/*.t
मॉड्यूल वितरण आम तौर पर एक मेकअप लक्ष्य 'परीक्षण' नाम दिया है कि स्थापना से पहले टेस्ट स्वीट चलाता शामिल हैं। डिफ़ॉल्ट रूप से, सीपीएएन स्थापना प्रक्रिया के लिए आवश्यक है कि मॉड्यूल स्थापित होने से पहले परीक्षण के बाद परीक्षण पास हो जाएंगे।
क्या आपने smolder देखा है?
"डेवलपर्स और परीक्षकों द्वारा अपलोड (स्वचालित या मैन्युअल) अपलोड करने के लिए धूम्रपान परीक्षण एग्रीगेटर और टेस्ट कुछ भी प्रोटोकॉल का उपयोग करके धूम्रपान/प्रतिगमन परीक्षण देखें। विवरण और रुझान ईमेल या एटम फ़ीड के माध्यम से प्रदान किए गए नोटिफिकेशन और सूचनाएं हैं।"
यह अच्छा है, लेकिन स्मोल्डर अब टीएपी अभिलेखागार को सही तरीके से पार्स नहीं कर रहा है। –
तुमने कहा था:
फिर भी पूरी तरह यकीन नहीं है कि तुम क्या कर रहे हैं के बाद
"क्या मैं देख रहा हूँ है स्वचालित ढांचे के वृद्धिशील परीक्षण कर सकते हैं/चेकों आदि निर्माण के और अधिक एक" ।जैसा कि अन्य ने उल्लेख किया है कि आप टेस्ट :: हार्नेस/टीएपी पर आधारित चीजों को देखना चाहते हैं। पर्ल परीक्षण समुदाय का विशाल बहुमत उस ढांचे का उपयोग करता है - इसलिए इसका उपयोग करके आपको अधिक समर्थन (और उपयोगी कोड) मिल जाएगा।
क्या आप "वृद्धिशील परीक्षण/निर्माण जांच" के बारे में कुछ और बात कर सकते हैं?
मुझे लगता है कि आप अपने परीक्षणों को समूहों में विभाजित करना चाहते हैं ताकि आप कुछ परिस्थितियों में परीक्षण के कुछ सेट चला रहे हों?
ऐसा करने के कुछ तरीके हैं। सरलतम सिर्फ फाइल सिस्टम का उपयोग करने के होगा - अपने परीक्षण निर्देशिका विभाजित ताकि आप की तरह बातें हैं:
core/ database.t infrastructure.t style/ percritic.t ui/ something.t something-else.t
और इसी तरह ... आप तो कमांड लाइन का उपयोग कर सकते "साबित" उन सब को चलाने के लिए उपकरण , या केवल कुछ निर्देशिकाएं, आदि
साबित करने के लिए बहुत सारे उपयोगी विकल्प हैं जो आपको चुनने देते हैं कि कौन से परीक्षण चल रहे हैं और किस क्रम में (उदाहरण के लिए हाल ही में विफल आदेश जैसे चीजें)। यह सब - स्वयं ही - आपको शायद जो चाहिए उसे आपकी ओर ले जाएगा।
(बीटीडब्ल्यू सीपीएएन से टेस्ट :: सरल/साबित/आदि का हालिया संस्करण प्राप्त करना महत्वपूर्ण है। हाल के संस्करणों में बहुत अधिक कार्यक्षमता है)।
यदि आप ओओ मानसिकता के हैं, या xUnit ढांचे के पिछले अनुभव हैं, तो आप टेस्ट :: क्लास पर एक नज़र डालना चाहते हैं जो एक पेर्ल xUnit ढांचा है जो टीएपी/टेस्ट के शीर्ष पर बना है: : हार्नेस परत। मुझे लगता है कि यह काफी एक बहुत PerlUnit की तुलना में बेहतर है - लेकिन मैं कहूँगा कि जब से मैं इसे :-) टेस्ट :: कक्षा http://delicious.com/tag/Test::Class
पर कुछ अधिक जानकारी के लिए स्वादिष्ट
चेक बाहर लिखा था यदि यह आप क्या नहीं है 'बाद में - क्या आप अपनी कार्यक्षमता के बारे में थोड़ा और विस्तार से जा सकते हैं?
चीयर्स,
एड्रियन
- 1. क्या कोई सीएसएस सिंटैक्स परीक्षण सूट है?
- 2. अच्छा स्वचालित वेब लोड परीक्षण उपकरण के लिए कोई सुझाव?
- 3. क्या पर्ल में कोडिंग मानकों को लागू करने के लिए कोई अच्छा स्वचालित ढांचा है?
- 4. क्या पर्ल के लिए कोई ओआरएम है?
- 5. क्या घर में थ्रेडिंग फ्रेमवर्क का परीक्षण करने के लिए कोई स्वचालित इकाई परीक्षण ढांचा है?
- 6. मुझे अपने qUnit परीक्षण सूट
- 7. NUnit नहीं चल रहा है सूट परीक्षण
- 8. क्या पर्ल वेब कोड को दोबारा करने के लिए कोई अच्छा उपकरण है?
- 9. क्या एक्सएसएल पूर्वावलोकन के लिए कोई अच्छा उपकरण है?
- 10. क्या कोको टच स्वचालित यूआई परीक्षण पर कोई अच्छा ट्यूटोरियल है?
- 11. पर्ल के लिए एक अच्छा विकास वातावरण क्या है?
- 12. पर्ल के लिए सबसे अच्छा एक्सएमएल पार्सर क्या है?
- 13. पर्ल के लिए पसंदीदा इकाई परीक्षण ढांचा क्या है?
- 14. पूरे रुपेक सूट का परीक्षण
- 15. क्या टेस्टएनजी कई सूट चला सकता है?
- 16. क्या ज्योथन के लिए कोई अच्छा नम्पी क्लोन है?
- 17. क्या एडा के लिए कोई अच्छा यूनिट टेस्ट फ्रेमवर्क है?
- 18. py.test पूरे परीक्षण सूट के लिए SetUp/TearDown
- 19. क्या numpy/scipy के लिए एक टेस्ट सूट है?
- 20. क्या कोई पोर्टेबल पर्ल है?
- 21. स्वचालित परीक्षण
- 22. स्वचालित परीक्षण
- 23. एक सैनिटी सूट क्या है?
- 24. रिग्रेशन परीक्षण के लिए पर्ल एड्स
- 25. एक अच्छा पर्ल कोड नेविगेटर क्या है?
- 26. सिनात्रा में - क्या कोई परीक्षण फिक्स्चर का उपयोग करता है? आपका परीक्षण सूट कैसे स्थापित किया जाता है?
- 27. Android के लिए स्वचालित GUI परीक्षण ढांचा
- 28. FLEX आधारित अनुप्रयोगों का स्वचालित परीक्षण
- 29. वेब आधारित परियोजनाओं के लिए स्वचालित परीक्षण
- 30. जावास्क्रिप्ट समर्थन के साथ स्क्रीन-स्क्रैप करने के लिए एक अच्छा टूल क्या है?
कृपया PerlUnit प्रयोग नहीं करते। इसे छोड़ दिया गया है। यदि आपके पास xUnit शैली ढांचा होना चाहिए, तो Test::Class देखें। यह पर्ल के मानक परीक्षण ढांचे के साथ सक्रिय रूप से बनाए रखा और एकीकृत करता है। – Ovid