इंटेलीज में टेस्ट क्लास बनाएं


138

मैं IntelliJ के अंदर पारंपरिक मावेन जावा परियोजना संरचना के भीतर काम कर रहा हूं, जैसे

main/java/com/x/y
test/java/com/x/y

जब मैं IntelliJ का उपयोग करके मुख्य / java / com / x / y में Foo नामक एक क्लास बनाता हूं, तो मैं स्वचालित रूप से एक फ़ाइल बनाना चाहूंगा जिसे FooTest.java कहा जाता है जिसे टेस्ट / java / com / x / y में बनाया गया है

एक्लिप्स में एक टूलबार पर एक बटन होता है जो कंकाल परीक्षण वर्ग बनाने में शामिल अधिकांश काम करेगा, क्या किसी को इंटेलीजे में कुछ समान पता है?

धन्यवाद,


परीक्षण और परीक्षण किए गए वर्गों के लिए निर्देशिका संरचनाएं फिट होनी चाहिए। यहाँ यह आसानी से कैसे किया जाता है: stackoverflow.com/a/36057708/715269
गंगनुस

जवाबों:


256

मेनू चयन का प्रयोग करें नेविगेट -> टेस्ट , या Ctrl+ Shift+ T( Shift+ + Tमैक पर)। यह मौजूदा परीक्षण वर्ग में जाएगा, या आपके लिए इसे थोड़ा विज़ार्ड के माध्यम से उत्पन्न करने की पेशकश करेगा।


1
मेरे प्रोजेक्ट में किसी कारण से, भले ही क्लास और टेस्ट क्लास एक ही पैकेज में स्थित हों, जब मैंने Ctrl + Shift + T किया था, तो वह कहता है "नो टेस्ट क्लास फाउंड"। इसके अलावा, जब मैं परीक्षण फ़ाइल पर राइट क्लिक करता हूं, तो यह मुझे केवल परीक्षण संकलित करने का विकल्प देता है, लेकिन परीक्षण नहीं। कोई उपाय?
ग्लाइड

1
हाथ के जवाब के रूप में मैं Andreas के रूप में अपने अन्य सवाल किया था । किसी तरह यह पहचान नहीं करता है कि आपकी कक्षाएं परीक्षण हैं।
जारल १

अभी भी विंडोज में 12.1.4 के साथ अच्छी तरह से काम करता है। सेटिंग्स में जांचें कि कीमैप मेनमेनू / नेवेट / टेस्ट को Ctrl + Shift + T
जारल

4
मेरे लिए काम नहीं किया - जब तक मैंने JUnit प्लगइन को फिर से सक्षम नहीं किया, जो किसी भी तरह से अक्षम था।
पीटर वेस्टमैकोट

3
यह ध्यान दिया जाना चाहिए कि प्रोजेक्ट विंडो में कक्षा का चयन होने पर नेविगेट> टेस्ट अक्षम है। इसे एक संपादक टैब में चुना जाना चाहिए।
केविन क्रुमविडे

42

वैकल्पिक रूप से आप कर्सर को वर्ग के नाम और प्रेस alt+ पर भी दिखा सकते हैंenter ( इरादा कार्यों और त्वरित सुधार दिखाएं )। यह टेस्ट बनाने का सुझाव देगा ।

कम से कम IDEA संस्करण 12 में काम करता है।


मेरे लिए, यह सबसे तार्किक विकल्प है। मैंने CTRL + SHIFT + T को "पिछले टैब को पुनर्स्थापित" करने के लिए ओवरराइड किया है इसलिए क्लास नाम पर ALT + ENTER कॉम्बो अच्छी तरह से काम करता है।
स्कॉट बेनेट-मैकलिश

इंटेलीज आइडिया 2018.2 पर काम करता है।
ज़ोन

9

* इंटेलीजे 13 * (इसके लिए भुगतान किया) हमें पता चला है से पहले वास्तविक कक्षा में कर्सर करना होगा ctrl+ Shift+ Tकाम किया।

जो थोड़ा प्रतिबंधात्मक लगता है अगर परीक्षण कक्षा उत्पन्न करने का एकमात्र तरीका है। हालांकि पूर्वव्यापी में यह डेवलपर्स को एक कार्यात्मक वर्ग बनाने के लिए एक परीक्षण वर्ग बनाने के लिए मजबूर करेगा।



4

मैं देख सकता हूँ कुछ लोगों से पूछा है, इतने पर OSX आप अभी भी navigate-> परीक्षण या उपयोग करने के लिए जा सकते हैं cmd+ shift+T

याद रखें कि आपको काम करने के लिए कक्षा में केंद्रित होना चाहिए


3
  1. प्रोजेक्ट पर राइट क्लिक करें फिर नया-> डायरेक्टरी चुनें। एक नई निर्देशिका बनाएं और इसे "परीक्षण" नाम दें।
  2. "परीक्षण" फ़ोल्डर पर राइट क्लिक करें फिर मार्क डायरेक्टरी अस-> टेस्ट सोर्स रूट का चयन करें
  3. नेविगेट करें पर क्लिक करें-> टेस्ट-> नया टेस्ट
    सेलेक्ट टेस्ट लाइब्रेरी बनाएं (JUnit4 या कोई भी)
    कक्षा का नाम निर्दिष्ट
    करें सदस्य चुनें

बस। हम अपनी आवश्यकता के अनुसार निर्देशिका संरचना को संशोधित कर सकते हैं। सौभाग्य!


1
धन्यवाद, मुझे "स्रोत के रूप में एक ही जड़ में परीक्षण उत्पन्न हो रहा था?" ऊपर की कोशिश करना, यह वही था जो मुझे चाहिए था।
jgreve

2

मुझे लगता है कि आप हमेशा उस कार्रवाई / कमांड को खोजने के लिए Ctrl+ Shift+ कोशिश कर सकते Aहैं जिसकी आपको आवश्यकता है।
यहाँ आप प्रेस करने के लिए कोशिश कर सकते हैं Ctrl+ Shift+ Aआदेश को खोजने के लिए और इनपुट «परीक्षण»।


0

यदि परीक्षण विधियों में से किसी एक पर @Test एनोटेशन का उपयोग करें या jmock का उपयोग करते हुए @RunWith (JMockit.class) के साथ अपने टेस्ट क्लास को एनोटेट करें। Intellij को पहचानना चाहिए कि परीक्षण वर्ग के रूप में और नेविगेशन को सक्षम करें। यह भी सुनिश्चित करें कि जूनिट प्लगइन सक्षम है।


0

वर्ग नाम घोषणा पर कर्सर के साथ मैं ALT + Return करता हूं और मेरा Intellij 14.1.4 मुझे 'क्रिएट टेस्ट' के विकल्प के साथ एक पॉपअप प्रदान करता है।

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