मैं अपने यूनिटी 3 डी गेम के खिलाफ कार्यात्मक परीक्षण कैसे चलाऊं?


25

प्रसंग

मैं यूनिटी 3 डी में एक गेम के लिए कुछ विरासत कोड जारी कर रहा हूं, और मैं कुछ कार्यात्मक परीक्षण लिखना चाहता हूं जो प्रतिगमन के लिए हैं, यह सुनिश्चित करने के लिए कि मैं नई चीजों को लागू करते समय या फिर रिफैक्टिंग करते समय चीजों को नहीं तोड़ता।

मुझे पहले से ही पता है कि यूनिटी 3 डी के लिए 'यूनिट टेस्ट टूल्स' सूट एक संपत्ति के रूप में उपलब्ध है। मैंने इसे एक इकाई-परीक्षण सूट के रूप में उपयोग किया है, इसलिए मैं अपने मॉडल (कक्षाएं) का परीक्षण करता हूं।

उदाहरण मैं किस तरह के परीक्षण के बारे में सोच रहा हूं

"कार्यात्मक परीक्षण" के लिए मेरा मतलब इस तरह है:

  • प्रोग्राम चलाएं
  • जब मेनू दृश्य में, वहाँ एक बटन है जो कहता है कि "प्रारंभ"
  • इसे क्लिक करें
  • फिर एक नया दृश्य लोड किया जाता है
  • पिक्सेल पिक्सेल XXX लाल है
  • समन्वय XXX में क्लिक करें
  • अब दावा है कि पिक्सेल हरे रंग में बदल गया
  • आदि।

प्रशन

Q1: मैं अपने खेल के लिए कार्यात्मक परीक्षण कैसे लिखूं और चलाऊं ? क्या यह आमतौर पर यूनिटीटेस्टटूल (यूटीटी) में भी किया जाता है?

Q2: यदि यूनिट-परीक्षण के लिए UTT अधिक है, तो कार्यात्मक परीक्षण के लिए एक अलग सूट है? कौनसा?

टिप्पणियाँ:

मैं Android को लक्षित कर रहा हूं, और चल रहा हूं Unity5.3.1f1


जहां तक ​​मैं बता सकता हूं कि यूटीटी में बिल्ट सिर्फ यूनिट टेस्टिंग के लिए है। एक परीक्षण उपकरण हो सकता है जो संपत्ति की दुकान में आपकी आवश्यकताओं के अनुरूप है
user3797758

3
दरअसल नहीं। एकता परीक्षण उपकरण में बहुत पहले संस्करण के बाद से एकीकरण परीक्षण और दावे के लिए टूलसेट शामिल हैं। यदि आप बिल्ट-इन UTT में ऐसा कुछ नहीं देखते हैं, तो एसेट स्टोर से पूरा UTT डाउनलोड करें।
मैक्सिम कमालोव

टेस्ट रनिंग डॉक्यूमेंटेशन, यूनिटी टेस्ट रनर डॉक पर नज़र डालें तो यह प्ले मोड और एडिट मोड टेस्ट दोनों की अनुमति देता है।
रैकैस

जवाबों:


1

जैसा कि मैंने इसे समझा, आप एकता में स्वचालन परीक्षण को समझना चाह रहे हैं।

एकता परीक्षण उपकरण

यह आपकी गोटो विधि होनी चाहिए, लेकिन इसमें खुदाई करने से पहले, मैं इसकी जांच क्यों करूंगा।

स्वचालन परीक्षण के किसी भी रूप को करने का पसंदीदा तरीका यह है कि जितना संभव हो उतना उत्पादन के करीब एक वातावरण में ऐसा किया जाए। यूनिटी टेस्ट टूल्स (यूनिटी एडिटर के अंदर रहने वाले) की तरह कुछ का उपयोग करना किसी के लिए एक बुरा विचार लगता है जिसने पारंपरिक एकीकरण परीक्षण लिखा होगा।

क्यूं कर? क्योंकि किसी भी इंटीग्रेशन टेस्टिंग के साथ, आप चाहते हैं कि कम से कम अतिरिक्त सामान आपके एप्लिकेशन को रोक रहा हो, जब उपयोगकर्ता इसे खोलता है तो ऐसा नहीं है। एकता संपादक में iOS संस्करण (उदाहरण के लिए) की तुलना में अलग-अलग प्रदर्शन या व्यवहार हो सकते हैं।

तो, फिर क्यों एकता परीक्षण उपकरण (UTT) का उपयोग करें?

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

एकता संपादक और उत्पादन के बीच व्यवहार में अंतर के बारे में क्या?

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

आपके द्वारा दिए गए उदाहरण परिदृश्य में, सब कुछ लेकिन पहला आइटम आसानी से एकता परीक्षण उपकरण का उपयोग करके मुखर किया जा सकता है। आप किसी अन्य एकीकरण परीक्षणों की तरह ही दृश्य खोल सकते हैं और व्यवहार को मान्य कर सकते हैं।

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

आवेदन और मैनुअल परीक्षण शुरू करना

एकता संपादक में रहते हुए एप्लिकेशन को शुरू करना आपके लिए सटीक नियंत्रण नहीं है। अपने खेल के उस पहलू को मान्य करने के लिए और अधिक, आप कुछ बुनियादी मैनुअल परीक्षणों का उपयोग कर सकते हैं।

यहां बताया गया है कि:

  1. सुनिश्चित करें कि आपका गेम किसी प्रकार के सिग्नल का उत्सर्जन करता है जब यह आपके द्वारा निर्दिष्ट विशिष्ट मील के पत्थर तक पहुंचता है (या देखभाल कर सकता है)। किसी फ़ाइल में लॉगिंग करना सबसे आम तरीका है ( ऑटोमैटिक बिलिन लॉगिंग या थर्ड पार्टी वर्जन का उपयोग करना )।
  2. समय-समय पर लॉग पढ़ता है और विश्लेषण करता है। यह मैन्युअल रूप से हो सकता है या आपकी दूसरी-पसंदीदा स्क्रिप्टिंग भाषा का उपयोग करके स्क्रिप्ट किया जा सकता है।

वैकल्पिक

आश्चर्य नहीं कि सब कुछ एकता से संबंधित है, हमारे पास कुछ विकल्प हैं। यहाँ कुछ आप पर विचार करना चाहते हैं:

अपने प्रोजेक्ट के पैमाने और दायरे के आधार पर आप ऊपर उल्लिखित एक या कई विकल्पों को नियोजित करना चाहते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.