2015-12-23 6 views
6

मैं अपने उत्पाद के लिए एक यूनिट परीक्षण वातावरण स्थापित करना चाहता हूं। मेरे पास लुआ में nginx पर एक वेब अनुप्रयोग निर्माण है जो mysql और redis का उपयोग करता है। मुझे लगता है कि डॉकर इसके लिए अच्छा होगा हालांकि मैं डॉकर के लिए नया हूं। मेरा एप्लिकेशन सेंटोस सर्वर (उत्पादन सर्वर) पर चलता है।डॉकर यूनिट परीक्षण सेटअप

मैं mysql, redis और webapp के लिए अलग कंटेनर सेट करने की योजना बना रहा हूं और फिर मैक (मेरी विकास मशीन मैक है) या वीएम में इसका परीक्षण करने के लिए यूटी एप्लिकेशन (बस्टेड फ्रेमवर्क का उपयोग कर लुआ के लिए यूनिट टेस्ट) लिखना चाहता हूं। यूटी एप्लीकेशन डॉकर कंटेनर nginx से बात करेगा और nginx कंटेनर mysql और redis का उपयोग करेगा। क्या यह अच्छा है ? यदि हां, क्या कोई मुझे मार्गदर्शन कर सकता है कि यह कैसे करें? शायद कुछ अच्छा लिंक? यदि नहीं, तो बेहतर तरीका क्या हो सकता है। मैंने पहले ही योनि का उपयोग करने की कोशिश की है लेकिन इसमें बहुत अधिक समय लगा है जो मेरे यूटी मामले में नहीं होना चाहिए।

+0

संपादन @NicolBolas –

+0

के लिए धन्यवाद मुझे डर है कि आप यहां शब्दावली मिश्रण कर रहे हैं। यूनिट परीक्षण अलगाव में एक घटक की जांच के लिए डिज़ाइन किए गए परीक्षण हैं।जो आप चलाने की कोशिश कर रहे हैं वह एकीकरण परीक्षण है जिसमें आप जांचते हैं कि सबकुछ एक साथ कैसे काम करता है। – Akira

+0

@ अकीरा मैं सहमत हूं। असल में मैं यूनिट टेस्ट सेटअप (बस्टेड फ्रेमवर्क का उपयोग करके) के साथ एकीकरण परीक्षण के लिए पर्यावरण स्थापित करने की कोशिश कर रहा हूं। यह मुझे अपने ऐप को पूरी तरह से परीक्षण करने में मदद करेगा। –

उत्तर

2

उदाहरण के लिए हम अपने प्रोजेक्ट टेम्पलेट को कैसे सेटअप करते हैं, तो आप phundament/app और इसके परीक्षण सेटअप पर एक नज़र डाल सकते हैं।

हमके साथ एक डॉकराइज्ड GitLab स्थापना का उपयोग कर रहे हैं, जो docker-compose निष्पादित करने में सक्षम है।

नोट! धावक स्वयं एक अलग डॉकर होस्ट पर चल रहा है।

हम docker-compose.yml उपयोग कर रहे हैं development और testing के लिए समायोजन के साथ एक ढेर में services परिभाषित करने के लिए।

CI configuration अलग ढेर के कई समवर्ती परीक्षण को संभालने के लिए अनुकूलित है, यह सिर्फ एक कस्टम COMPOSE_PROJECT_NAME निर्दिष्ट करने के द्वारा किया जाता है।

हमारी परीक्षण प्रक्रिया और docker-compose और डॉकराइज्ड सीआई के बारे में उपयोगी जानकारी के बारे में कुछ गहन दस्तावेज।

अंत में, Travis CI भी थोड़ी देर के बाद से डोकर का समर्थन करता है, लेकिन मैं इस दृष्टिकोण का परीक्षण नहीं किया ।

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