2012-06-08 19 views
11

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

क्या इंटेलिज भी मॉड्यूल परीक्षण निर्देशिका निर्यात कर सकता है और अन्य मॉड्यूल का उपयोग करने की अनुमति देता है?

+0

परीक्षण आउटपुट को कक्षा में जोड़ा जाना चाहिए। क्या आपकी परियोजना मेवेन से आयात की गई है? – Nik

+0

[मैवेन में टेस्ट कोड साझा करना] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/174560/sharing-test-code-in-maven) – thecoop

उत्तर

1

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

http://maven.apache.org/guides/mini/guide-attached-tests.html

+0

मेवेन का उपयोग करना अच्छा लगेगा, लेकिन यह एक विकल्प नहीं है। फिर भी सुझाव के लिए धन्यवाद। – sgargan

+0

एक विकल्प में केवल आपके उत्पादन स्रोतों में चीजें शामिल हैं, या एक "परीक्षण" मॉड्यूल बनाएं जिसमें उत्पादन स्रोतपथ में परीक्षण सामग्री शामिल है ... – ianpojman

+0

इंटेलिजे को प्राप्त करने के लिए कोई भी तरीका नहीं है ताकि परीक्षण प्रोजेक्ट को एक प्रोजेक्ट में एक्सेस किया जा सके एक और निर्भर परियोजना के परीक्षण वर्ग? उदाहरण के लिए, IDE – thecoop

2

हाँ, आप कर सकते हैं, लेकिन यह आसान नहीं है।

तो तुम मॉड्यूल-ए और मॉड्यूल बी है। , केवल IntelliJ में काम करेंगे अगर आप कर रहे हैं:

मॉड्यूल बी एक TestClass कि शायद एक AbstractClass फैली या मॉड्यूल-ए

नोट से कुछ स्थिर सहायकों का उपयोग करता है मेवेन या ग्रेडल का उपयोग करके आपको यह जांचना होगा कि यह अभी भी ठीक है।

यहां आपको क्या करना है।

  1. गोटो परियोजना संरचना ...(Ctrl+Alt+Shift+S - win/linux)
  2. गोटो मॉड्यूल और मॉड्यूल-ए के पथ टैब
  3. को देखो टेस्ट उत्पादन पथ का एक नोट ले लो या इस कॉपी। यह कुछ ऐसा हो सकता है: C:\dev\projects\myProject\moduleA\build\testclasses या इसी तरह।
  4. गोटो मॉड्यूल और मॉड्यूल-बी का चयन करें और इसकी निर्भरता टैब देखें।
  5. आप पहले से ही मॉड्यूल-ए संकलन समय के लिए यहां प्रवेश पर निर्भरता हो सकता है और + पर ok.Click thats या टाइप (Alt+Insert) और जोड़ने के लिए एक नया लाइब्रेरी (विकल्पों पर कोई 2)
  6. पर पुस्तकालय स्क्रीन का चयन करें नई लाइब्रेरी का चयन करें ... बटन। जावा विकल्प का चयन करें।
  7. आपके द्वारा C:\dev\projects\myProject\moduleA\build\testclasses से ऊपर के निर्माण फ़ोल्डर को प्राप्त करने वाले संवाद में और ठीक पर क्लिक करें। अब आपके पास मॉड्यूल-ए के लिए कक्षाएं होंगी।इसे Module-A Tests पर उपयुक्त कुछ नाम दें और स्तर विकल्प मॉड्यूल लाइब्रेरी पर बदलें।
  8. स्रोत जोड़ने के लिए + बटन (Alt+Insert) पर क्लिक करें। परीक्षण src फ़ाइलों पर नेविगेट करें। ईजी .: C:\dev\projects\myProject\moduleA\src\test और इसे जोड़ें और अब आपके पास एक स्रोत भी जोड़ा जाएगा।
    1. क्लिक करें ठीक और तुम वापस परियोजना संरचना संवाद करने के लिए आ जाएगा।
    2. अब आपके पास अपनी निर्भरताओं में एक नई लाइब्रेरी शामिल होगी। नीचे और अपने किया पर स्कोपटेस्ट के लिए
    3. प्रेस ठीक बदलें। आपको परियोजना को बनाने/साफ करने की आवश्यकता हो सकती है।

और अब आप मॉड्यूल के बीच जुड़ा हुआ परीक्षण depencies है।

यदि आप बेहतर समाधान के बारे में सोच सकते हैं तो कृपया मुझे बताएं लेकिन यह ऐसा करने का सबसे आसान तरीका है।

+0

मैं वास्तव में चाहता हूं कि मैंने इसकी खोज नहीं की .. (मुझे आलसी है मुझे लगता है कि मैं केवल कुछ अमूर्त समस्या परीक्षण कक्षाओं को ले जाऊंगा जो मेरे पास * मॉड्यूल बी * है, वास्तव में इसे पसंद नहीं है क्योंकि कुछ * मॉड्यूल ए * परीक्षण * मॉड्यूल बी * में ले जाया जाना चाहिए, भले ही वे * मॉड्यूल ए * में कोड का परीक्षण कर रहे हों, लेकिन ओह ठीक है - यह आसान है – ycomp

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

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