2009-03-13 21 views
16

के साथ अनुभव हम एक बड़े बड़े डब्ल्यूपीएफ आधारित अनुप्रयोग विकसित कर रहे हैं और हमारे परीक्षण सूट में कुछ स्वचालित यूआई परीक्षण शामिल करना चाहते हैं (जिसमें पहले से ही कई यूनिट परीक्षण शामिल हैं)।यूआई ऑटोमेशन और डब्ल्यूपीएफ

माइक्रोसॉफ्ट से UI Automation Framework आंशिक रूप से परीक्षण सेटअप में एप्लिकेशन के साथ प्रोग्रामिंग लॉन्च करने और बातचीत करने के लिए एकदम सही फिट की तरह लगता है। हालांकि, मैंने प्रौद्योगिकी के साथ नमूने और अनुभवों के लिए ठोस संदर्भ खोजने के लिए संघर्ष किया है, एमएसडीएन पर उपलब्ध लेख और छोटे नमूने मुझे यह समझाने के लिए पर्याप्त नहीं हैं कि यह एक ठोस विकल्प है।

तो, क्या किसी के पास अपने परीक्षण सूट में यूआई ऑटोमेशन फ्रेमवर्क का उपयोग करके वास्तविक दुनिया के अनुभव हैं? चेतावनी और गठिया क्या हैं? परीक्षण स्क्रिप्ट लिखे जाने पर कोई भी सर्वोत्तम प्रथा, क्या आप एक स्क्रिप्ट योग्य प्रारूप में "रिकॉर्ड और रीप्ले" कर सकते हैं, आप एप्लिकेशन से परीक्षण को कितना सुविधाजनक बनाना चाहिए, आपने इसे स्वचालित निर्माण में कैसे शामिल किया? क्या हमें यूआई ऑटोमेशन फ्रेमवर्क की तुलना में एक और दिशा में देखना चाहिए?

कुछ अच्छी संदर्भ मैं

+1

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

उत्तर

7

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

हमने जो प्रयास करने की कोशिश की थी उन्हें यूनिट परीक्षणों जैसे [TestFixture] [Test] इत्यादि को देखने के लिए सेट किया गया था तो हम यूनिट परीक्षणों के साथ ही ननिट के माध्यम से उन्हें चलाने में सक्षम थे।

हमने पाया है कि आपकी खिड़की के भीतर कुछ घटकों तक पहुंचना मुश्किल हो सकता है, लेकिन जांच करने का कोई मौका नहीं मिला है।

यदि आपको सॉफ़्टवेयर के लिए भुगतान करने की कोई बात नहीं है तो मैं TestComplete की अनुशंसा करता हूं।

+0

TestComplete एक क्लिक और प्ले टूल है जबकि TestStack.White एक सी # फ्रेमवर्क है। ये टेस्टर्स और बाद वाले प्रोग्रामर पर लक्षित पूर्व के साथ पूरी तरह से अलग समाधान हैं। –

6

मैं काम पर एक WPF ऐप के यूआई ऑटोमेशन करने के बीच में हूं। मैं व्हाइट और आयरन रूबी का उपयोग कर रहा हूं और यह बहुत अच्छा काम करता है। मैंने लिखा है कि मैंने इसे यहां कैसे किया है: http://www.natontesting.com/2010/02/17/how-to-test-a-wpf-app-using-ironruby-and-white/

+0

वास्तव में अच्छा लेखन, नेट। मुझ से अंगूठे –

+1

सफेद के साथ कुश्ती बहुत दर्द हो गई, इसलिए मैंने बेविल्डर (https://github.com/natritmeyer/bewildr) लिखा। यह बीबीसी में उपयोग में है और महान काम कर रहा है! –

2

हम शुरुआत में सफेद के साथ गए, और फिर इससे दूर चले गए। यह Win32 एपीआई, विनफॉर्म, जावा ऐप्स, और एमएस यूआई ऑटोमेशन एपीआई पर जेनेरिक और अमूर्त होने का प्रयास करता है। एमएस यूआई ऑटोमेशन एपीआई Win32 एपीआई और विनफॉर्म और डब्ल्यूपीएफ पर जेनेरिक और अमूर्त होने का भी प्रयास कर रहा है, ताकि आप "सबसे कम-आम-संप्रदाय-निम्न-सामान्य-संप्रदाय" परिदृश्य में समाप्त हो जाएं।

इसका नतीजा यह था कि व्हाइट तत्व खोज एपीआई बस विभिन्न यूआई तत्वों को खोजने के लिए पर्याप्त लचीला नहीं था जिसे हमें खोजने की आवश्यकता थी, और यह हमारे लिए अंतर्निहित यूआई स्वचालन फ्रेमवर्क तत्वों का पर्याप्त खुलासा नहीं करता था इसके साथ कुछ भी उपयोगी है।

हम घर के प्रकार के ढांचे के साथ जा रहे हैं; हम सीधे एमएस यूआईयूटोमेशन फ्रेमवर्क का उपयोग करते हैं, लेकिन उन परिदृश्यों से निपटने के लिए विस्तार विधियों और सहायक कक्षाएं हैं जिन्हें यह संबोधित नहीं करता है। (मुख्य रूप से कीबोर्ड और माउस इनपुट)।

नोट: हमारी टेस्ट स्क्रिप्ट और होमग्राउन फ्रेमवर्क सभी IronRuby का उपयोग कर रहे हैं। रूबी की मौजूदा कक्षाओं में विधियों को जोड़ने की क्षमता और इसके लचीले वाक्यविन्यास (method_missing के साथ संयुक्त) इस तरह की चीज़ के लिए बहुत ही अच्छे हैं।

+1

एडवर्ड्स, आपने माइक्रोसॉफ्ट की कोशिश क्यों नहीं की। VisualStudio.TestTools.UITesting API (जिसे दृश्य के पीछे कोडित यूआई टेस्ट में उपयोग किया जाता है)? मैं पूछ रहा हूं क्योंकि मैंने अभी यूआईए से इसे बदल दिया है। – atiyar

+0

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

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