प्लेटफॉर्म 1C पर परीक्षण: एंटरप्राइज 8. व्यावहारिक भाग

1 सी: एंटरप्राइज प्लेटफॉर्म पर परीक्षण को लोकप्रिय बनाने के लिए जारी है , हम परीक्षण प्रणाली के व्यावहारिक अनुप्रयोग पर आगे बढ़ रहे हैं।
सिस्टम में बाहरी प्रसंस्करण और एक अलग सूचना आधार होता है, जो परीक्षणों के बैक-एंड रिपॉजिटरी और एक शेड्यूल पर स्वचालित रूप से परीक्षण चलाने के लिए वातावरण के रूप में काम करता है।
सिस्टम को प्लेटफॉर्म संस्करण 8.1 और प्लेटफॉर्म 8.2 के अप्रबंधित विन्यास में डिजाइन और उपयोग किया गया था। बाहरी प्रसंस्करण मोड में प्रबंधित कॉन्फ़िगरेशन में उपयोग के लिए, संपूर्ण इंटरफ़ेस को फिर से लिखना या कॉन्फ़िगरेशन मापदंडों को बदलना आवश्यक है।
इस तथ्य के कारण कि दो परियोजनाएं बैक-एंड में विलय की जाती हैं, फिर, यदि आप स्वचालित परीक्षण चलाना चाहते हैं, तो बैक-एंड के लिए प्लेटफ़ॉर्म का संस्करण परीक्षण किए गए कॉन्फ़िगरेशन के प्लेटफ़ॉर्म के संस्करण के समान होना चाहिए।
बहुत सारी तस्वीरें।

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

और उनमें से एक प्रशासक का अधिकार दें:

उसके बाद हम एंटरप्राइज़ मोड में डेटाबेस शुरू करते हैं, व्यवस्थापक के नीचे जाते हैं और अंतर्निहित प्रसंस्करण शुरू करते हैं


प्रोजेक्ट की अवधारणा का उपयोग विभिन्न विन्यासों के परीक्षणों को संग्रहीत करने के लिए किया जाता है। विभिन्न परियोजनाओं में असंबंधित विन्यास का परीक्षण किया जाना चाहिए। यदि कॉन्फ़िगरेशन विकास में एक क्वांटम छलांग लगाता है, लेकिन एक ही समय में पिछले संस्करण से अधिकांश परीक्षण बिना त्रुटियों के चलते हैं, तो यह इस प्रोजेक्ट का नया कॉन्फ़िगरेशन संस्करण है
अपना प्रोजेक्ट जोड़ें:

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

संस्करण जोड़ें:

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

यहां हम अपने द्वारा बनाई गई परियोजना सेटिंग्स देखते हैं, हम संस्करणों / परियोजनाओं को जोड़ / हटा सकते हैं।
आगे फिर से क्लिक करें:

यह विंडो कॉन्फ़िगरेशन के उपयोगकर्ताओं को सूचीबद्ध करती है, यहां आप वर्तमान उपयोगकर्ता का नाम सेट कर सकते हैं, अन्य उपयोगकर्ताओं को जोड़ सकते हैं।
वर्तमान उपयोगकर्ता का पूरा नाम भरें और डिफ़ॉल्ट रूप से प्रोजेक्ट चुनें:

आप बॉक्स को भी देख सकते हैं ताकि उपयोगकर्ता परीक्षण प्रणाली में पहले लॉगिन पर अपना पासवर्ड जबरन बदल दे।
हम उपयोगकर्ता को बचाते हैं और अगला बटन क्लिक करते हैं:

वर्तमान उपयोगकर्ता के लिए संपर्क जानकारी जोड़ें:

सभी संकेतित और शामिल ई-मेल से स्वचालित परीक्षण के प्रत्येक परिणाम पर रिपोर्ट प्राप्त होगी।
अगला बटन क्लिक करें, इससे पहले कि हम स्थिरांक में भरने के लिए फार्म हैं:

स्वचालित परीक्षण के परिणामों के साथ ईमेल भेजने के लिए पैरामीटर यहां दिए गए हैं।
हम इस चरण को छोड़ देते हैं और फिर से अगला क्लिक करते हैं:

हमारे सामने एक विंडो है जहाँ आप स्वचालित कॉन्फ़िगरेशन परीक्षण के लिए कार्य बना सकते हैं।
जबकि हम अपरिवर्तित छोड़ते हैं, समाप्त पर क्लिक करें

फिलहाल, हमने एक परियोजना बनाई है, उसने वर्तमान टीसी का एक संस्करण बनाया है, परीक्षण जोड़ने और चलाने के लिए सब कुछ तैयार है।
हम टीसी इन एंटरप्राइज मोड शुरू करते हैं और बाहरी प्रसंस्करण ( वीओ ) खोलते हैं ( वीओ सीयू के उपरोक्त कॉन्फ़िगरेशन में है , जिसे परीक्षण कहा जाता है, इसे बाहरी प्रसंस्करण के रूप में कॉन्फ़िगरेशन से अनलोड किया जाना चाहिए):

हम प्राधिकरण फॉर्म भरते हैं और परीक्षण डेटाबेस से जुड़ते हैं।
नतीजतन, परीक्षणों के साथ काम करने का मुख्य रूप दिखाई देगा:

बाईं ओर उन समूहों की एक सूची है जिनके लिए परीक्षण टूट गए हैं। एक नया समूह जोड़ें जिसमें हम अपने नए परीक्षण बनाएंगे:

चयनित समूह में, एक नया परीक्षण बनाएं। उदाहरण के लिए, मैंने टेस्ट नामक एक सामान्य मॉड्यूल बनाया और वहां एक निर्यात समारोह जोड़ा:
समारोह जोड़ (मूल्य तर्क 1, मूल्य तर्क 2) निर्यात
वापसी Argument1 + Argument2;
अंत कार्य

परीक्षण के नाम पर, मैंने संकेत दिया कि मैं परीक्षण करूंगा। मॉड्यूल फ़ील्ड में, मैं परीक्षण की गई विधि का स्थान बताता हूं - सामान्य मॉड्यूल टेस्ट :

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

फिर हम इस क्षेत्र के ऊपर टूलबार में पहला बटन दबाते हैं - विधि को पार करें :

परिणामस्वरूप, पैरामीटर और परिणाम फ़ील्ड भरे जाते हैं।
हम तर्कों के लिए इनपुट मानों को भरते हैं:

हो गया।
अब आप दूसरे बटन (हरे तीर) पर क्लिक करके परिणामों की गणना करने के लिए परीक्षण चला सकते हैं और परिणामों की गणना कर सकते हैं:

परीक्षण ने सही ढंग से काम किया - हम तीसरे बटन को दबाकर एक मानक के रूप में परिणाम को याद करते हैं एक मानक के रूप में परिणाम याद रखें :

अगला, हम परीक्षण डेटाबेस में अपना काम बचाते हैं:


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

बायनेरिज़ अब तक GitHub पर पोस्ट किए गए हैं। यदि किसी को अंतिम रूप देने, त्रुटियों को ठीक करने की इच्छा है, तो कृपया समुदाय के साथ अपनी सर्वोत्तम प्रथाओं को साझा करें। अब तक, मुझे नहीं पता है कि इंटरनेट के माध्यम से सिंक्रनाइज़ करते समय 1C कॉन्फ़िगरेशन को सही ढंग से कैसे विकसित किया जाए। 1 सी-वें स्टोरेज सर्वर - बेकार ऐड-ऑन को फ़ाइल एक्सेस की आवश्यकता है और मुझे इसे तैनात करने का कोई कारण नहीं दिखता है। Xml में कॉन्फ़िगरेशन के अपलोड / डाउनलोड को केवल 8.3 में लागू किया गया है, शायद यह एकमात्र सामान्य तरीका है, लेकिन 8.1 और 8.2 के लिए कॉन्फ़िगरेशन हैं, जिन्हें भी जांचने की आवश्यकता है। तो अभी के लिए, वहाँ एक GitHub होने दें, अगर कोई वास्तविक आवश्यकता है, तो हम सोचेंगे।

कोड GPLv2 लाइसेंस के तहत वितरित किया जाता है, अर्थात - यदि आप इसका उपयोग करते हैं तो अपने परिवर्तनों को कोड में पोस्ट करें।

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

Source: https://habr.com/ru/post/In215409/


All Articles