2010-04-21 13 views
9

मैं अभी QTestLib का उपयोग करना शुरू कर रहा हूं। मैं manual और tutorial से गुजर चुका हूं। हालांकि मैं समझता हूं कि परीक्षण कैसे बनाएं, मैं बस उन परीक्षणों को चलाने के लिए सुविधाजनक बनाने के लिए नहीं मिल रहा हूं। मेरी इकाई परीक्षण पृष्ठभूमि NUnit और MSTest है। उन वातावरणों में, यह सही बटन पर क्लिक करके, एक एकल परीक्षण, या एकल परीक्षण कक्षा में सभी परीक्षणों, या पूरी परियोजना में सभी परीक्षणों के बीच वैकल्पिक रूप से वैकल्पिक रूप से एक जीयूआई का उपयोग करना था।QTestLib में यूनिट परीक्षण - कक्षा/सभी परीक्षणों में एकल परीक्षण/परीक्षण चल रहा है

मैं क्यूटेस्टलिब में देख रहा हूं या तो आप एक ही कक्षा में परीक्षण चलाने के लिए QTEST_MAIN मैक्रो का उपयोग करते हैं, फिर संकलित करें और प्रत्येक फ़ाइल को अलग से जांचें; या main() का उपयोग करें ताकि यह निर्धारित किया जा सके कि कौन से ऑब्जेक्ट्स का परीक्षण किया जाए, और उसके बाद मैन्युअल रूप से इसे बदलें और जब आप टेस्ट क्लास को जोड़ना/निकालना चाहते हैं तो उसे मैन्युअल रूप से बदलें।

मुझे यकीन है कि मुझे कुछ याद आ रहा है। मैं सक्षम आसानी से करने के लिए होना चाहते हैं: एक ही परीक्षा पद्धति

  • भागो

    • भागो एक पूरे वर्ग
    • भागो में परीक्षण सभी परीक्षणों

    उन का कोई भी उचित कहेंगे सेटअप/टियरडाउन फ़ंक्शन।

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

  • +0

    आपको यह देखना चाहिए: http://stackoverflow.com/questions/9944507/how-to-compose-all-qttestlib-unit-tests-results-in-a-single-file-while-using- ए/1016570 9 # 1016570 9 – muenalan

    उत्तर

    5

    आप command line arguments के रूप में परीक्षण नाम पारित करके केवल चयनित परीक्षण मामलों (परीक्षण तरीकों) चला सकते हैं:

    myTests.exe myCaseOne myCaseTwo 
    

    यह सब inits चलेंगे/सफाई भी। दुर्भाग्य से वाइल्डकार्ड/पैटर्न मिलान के लिए कोई समर्थन नहीं है, इसलिए दिए गए स्ट्रिंग से शुरू होने वाले सभी मामलों को चलाने के लिए (मुझे लगता है कि "पूरी कक्षा में परीक्षण चलाने" का मतलब है), आपको स्क्रिप्ट बनाना होगा (विंडोज बैच/बैश/पर्ल/जो भी) कॉल करता है:

    myTests.exe -functions 
    

    परिणाम को पार करता है और पहले वाक्यविन्यास का उपयोग करके चयनित परीक्षण चलाता है।

    myTests.exe 
    
    +0

    शायद वे भविष्य के संस्करण में कार्यक्षमता में सुधार करेंगे .... –

    1

    तीन सुविधाओं ओपी द्वारा अनुरोध किया, आजकल Qt Creator करने के लिए एकीकृत कर रहे हैं:

    किसी भी पैरामीटर सभी मामलों को चलाने के लिए, बस नहीं भेजी जाती।

    परियोजना स्वचालित रूप से परीक्षणों के लिए स्कैन की जाएगी और वे टेस्ट फलक पर चढ़ाई करेंगे। स्क्रीनशॉट में निचली बाएं:

    Qt Creator screenshot

    प्रत्येक परीक्षा और इसी डेटा चेकबॉक्स पर क्लिक करके सक्रिय किया जा सकता। संदर्भ मेनू सभी परीक्षणों को चलाने की अनुमति देता है, कक्षा के सभी परीक्षण, केवल चयनित या केवल एक परीक्षण। अनुरोध के अनुसार ।

    परीक्षा परिणाम क्यूटी निर्माता से भी उपलब्ध होंगे। डिबग संदेशों जैसी अतिरिक्त जानकारी के साथ, एक रंग सूचक प्रत्येक परीक्षण के लिए पास/असफल दिखाएगा।

    क्यूटी निर्माता के साथ संयोजन में, प्रत्येक परीक्षण मामले के लिए QTEST_MAIN मैक्रो का उपयोग अच्छी तरह से काम करेगा, क्योंकि प्रत्येक संकलित निष्पादन योग्य क्यूटी निर्माता द्वारा स्वचालित रूप से लागू किया जाता है।

    अधिक विस्तृत अवलोकन के लिए, क्यूटी निर्माता मैनुअल के Running Autotests अनुभाग देखें।

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