एक्लिप्स में एक एकल JUnit परीक्षण चल रहा है


85

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


11
यह अच्छा होगा यदि आप उत्तर के बगल में हरे निशान की जांच करके सबसे अच्छा उत्तर चुनते हैं।
ग्वारदा

जवाबों:


96

पैकेज में एक्सप्लोरर कक्षा को प्रकट करता है। यह आपको सभी तरीकों को दिखाना चाहिए। उस एक विधि पर राइट क्लिक करें जिसे आप चलाना चाहते हैं, फिर संदर्भ मेनू से Run As -> JUnit का चयन करें (बस ग्रहण 3.4.1 के साथ परीक्षण किया गया)। इसके अलावा JUnit- परिणाम दृश्य में एकल प्रविष्टि पर "रन" का चयन करना उसी तरह से एक परीक्षण कार्य को फिर से चलाने के लिए।


3
दुर्भाग्य से, यह केवल परीक्षण विधियों के लिए काम करता है जो सीधे उस कक्षा में लागू होते हैं। यह विरासत में मिली @ सबसे तरीकों के लिए काम नहीं करता है।
क्रिस्टोफर नाई

1
ध्यान दें कि ऐसा लगता है कि आपको विधि के नाम पर क्लिक करना होगा। विधि के अंदर क्लिक करने से पूरी कक्षा चलेगी। (या कम से कम यह है कि यह मेरे लिए कैसा व्यवहार कर रहा है।)
emragins

यह केवल इस एक विशेष "पैकेज एक्सप्लोरर" से काम करने के लिए सीम करता है, जो कि अनचाहे से अधिक है जब यह जल्दी से एक विधि खोजने के लिए आती है जिसे आप परीक्षण करने के लिए भटकते हैं। और यहां तक ​​कि, डिबगर सीम अन्य तरीकों को छोड़ने के लिए - जो अतिरिक्त समय की खपत करता है। बेहतर तरीका होना चाहिए ...
Macilias

और यह या तो नाजुक है ... अब इस तरह से चलने पर ग्रहण ने अन्य परीक्षणों को छोड़ने का फैसला किया :(
मैकलियास

26

सबसे तेज़ तरीका जो मुझे पता है:

  1. प्रेस Ctrl+ Shift+ (चाल वर्तमान पद्धति घोषणा करने के लिए कर्सर),
  2. प्रेस Alt+ Shift+ x(या dडीबग के लिए) फिर प्रेस t( "रन जुनाइट टेस्ट" के लिए हॉटकी ),
  3. परीक्षा परिणाम की जाँच करें,
  4. प्रेस Alt+ आप से पहले थे कोड की लाइन पर वापस जाने के लिए।

यदि आप सभी परीक्षण चलाना चाहते हैं, तो आप चरण 1 और 4 छोड़ सकते हैं।


13

ग्रहण 3.5 में, आप टेस्ट रनर को JUnit 3 में बदलकर इसके आसपास पहुँच सकते हैं। यह केवल JUnit 3 परीक्षणों के लिए काम करेगा, न कि JUnit 4 परीक्षणों के लिए। आप निम्न करके परीक्षण धावक बदल सकते हैं:

  1. आउटलाइन एक्सप्लोरर में परीक्षण विधियों में से एक पर राइट क्लिक करें
  2. Run as -> Run विन्यास चुनें
  3. 'टेस्ट' टैब पर, 'सिंगल टेस्ट रन करें' चुनें
  4. टेस्ट रनर ड्रॉपडाउन में, 'JUnit 3' चुनें

यह अन्य संस्करणों में भी काम कर सकता है।


अच्छा निर्णय! रन कॉन्फिगरेशन डायलॉग में "टेस्ट रनर" को "जुनाइट 3" में बदलना मेरे लिए ग्रहण 3.6.0 (हेलियोस) में काम किया। अब मैं JUnit परीक्षण में एकल विधि चला सकता हूं। FWIW, मुझे व्यक्तिगत JUnit 3 या 4 परीक्षण कक्षाओं को चलाने में कोई समस्या नहीं हुई है ।
एडम मोंसेन

बिल्कुल सही इसने मेरे लिए भी काम किया। ऊपर दिए गए उत्तर के बावजूद यह अधिक अपवित्र नहीं लगता।
dreza

12

EUse Indigo में यह संभव है JUnit 4.8.2 के साथ। आप उस विधि पर राइट क्लिक करें जिसे आप Outlineफलक में व्यक्तिगत रूप से जांचना चाहते हैं , और चुनें Run As -> JUnit Test

आप चुनिंदा तरीके से स्रोत संपादक में एक टेस्ट विधि नाम पर भी क्लिक कर सकते हैं Run As -> Junit Test


1
ऐसा लगता है कि उस विशिष्ट परीक्षण मामले का परीक्षण करेगा। हालांकि, उसके बाद, यह अभी भी अन्य परीक्षण मामलों के साथ जारी है।
lwpro2

@ lwpro2 आपको एकल परीक्षण मामले का परीक्षण करने के लिए JUnit 4 (एनोटेशन) का उपयोग करना होगा। JUnit 3 (TestCase का विस्तार करें) अभी भी सभी संबंधित परीक्षण चलाएगा।
एंथनीव जूल 17'13

1
wulfgar.pro मैं बता रहा था @ lwpro2 यह जानता है कि यदि आप JUnit 4 रनर के साथ अपना JUnit परीक्षण चला रहे हैं (क्योंकि, उदाहरण के लिए आप JUnit 4.8.2 का उपयोग कर रहे हैं) तो YET अपना परीक्षण अभी भी समाप्त करें, आप एक एकल चलाने में असमर्थ होंगे खुद ही परख लो। आपको या तो एक JUnit 3 धावक का उपयोग करना होगा या एनोटेशन का उपयोग करके अपने परीक्षण को परिवर्तित करना होगा।
एंथनीव जूल

टिप्पणियों के लिए धन्यवाद। हालाँकि, मैं Junit4 का उपयोग कर रहा था, SpringJunit4ClassRunner के साथ। वैसे भी कोई बड़ी बात नहीं। एनोटेशन पर टिप्पणी करना त्वरित है।
lwpro2

यह उत्तर सबसे सरल है
जैक्सन टेल

9

Strg+ का उपयोग न करें , F11लेकिन हॉटकी Alt+ Shift+ X-> T
तब एक्लिप्स वर्तमान ओपन फाइल को JUnit टेस्ट के रूप में निष्पादित करेगा। हरे रंग का प्ले बटन केवल अंतिम चुने गए रन कॉन्फ़िगरेशन को चलाएगा।

मेरे लिए, यह Alt+ Shift+ X-> के साथ अच्छी तरह से काम करता है T


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

@bibstha आप Ctrl + 3 का उपयोग कर सकते हैं और फिर "rerun" टाइप कर सकते हैं। यह आपको पिछले JUnit परीक्षण मामले को फिर से चलाने की अनुमति देता है। विंडो के तहत- वरीयताएँ-> सामान्य-> कुंजी, आप इस क्रिया के लिए स्वयं का शॉर्टकट असाइन कर सकते हैं। मेरी राय में Ctrl + Shift + F11 उपयुक्त होगा।
गुआरा

9

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

या तो उपयोग करके अपने कर्सर को विधि के नाम पर ले जाएँ

  • Ctrl+ Shift+ Upया
  • Ctrl+ Shift+ Downया
  • Ctrl+ oउसके बाद विधि का नाम लिखें

एक बार जब आपका कर्सर विधि नाम पर होता है (या इसके ठीक पहले):

  • Alt+ Shift+ D-> T(डिबग)
  • Alt+ Shift+ X-> T(भागो)

आपके द्वारा परीक्षण चलाने के बाद आप वह स्थान पर जा सकते हैं जहाँ आपका कर्सर कर रहा था:

Alt+Back

आप लगभग व्यवहार के अनुसार REPL प्राप्त करते हैं:

Ctrl+ Shift+ Upऔर Alt+ Shift+ X-> Tऔर Alt+Back

आप जल्दी से ब्रेकपॉइंट भी सेट कर सकते हैं:

Ctrl+ Shift+B


3

फ़ाइल में परीक्षण विधि के नाम पर कहीं क्लिक करें और "रन" - "जूनिट टेस्ट" चुनें। मैं यह हर समय केपलर और जुनेट 4 के साथ करता हूं।


2

मुझे एक ही समस्या थी कि दूसरों को ग्रहण 3.4.1 और JUnit 4 परीक्षण धावक का उपयोग करना पड़ा - एकल परीक्षण नहीं चला सका। लेकिन मुझे कहीं और एक सुझाव मिला जिसने समस्या को हल कर दिया। मेरा परीक्षण वर्ग अभी भी junit.framework.TestCase का विस्तार कर रहा था। जब मैंने टेस्टकैस का विस्तार करना बंद कर दिया, तो सबकुछ ठीक हो गया और मैं JUnit 4 टेस्ट धावक के साथ एकल JUnit परीक्षण चलाने में सक्षम था। बेशक, मुझे JUnit 4 एनोटेशन की आवश्यकता है मुखर विधियों के लिए स्थैतिक आयात का उपयोग करें, लेकिन मैंने पहले से ही ऐसा किया था - मैंने अभी तक TestCase विरासत को नहीं हटाया था।


1

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

आशा करता हूँ की ये काम करेगा।


1

केवल एक परीक्षण विधि चलाने के लिए।
पैकेज (पैकेज एक्सप्लोरर या प्रोजेक्ट एक्सप्लोरर) में कक्षा को प्रकट करना। यह आपको सभी तरीकों को दिखाना चाहिए। उस एक विधि पर राइट क्लिक करें जिसे आप चलाना चाहते हैं, फिर संदर्भ मेनू से Run As -> JUnit चुनें।
यहाँ छवि विवरण दर्ज करें


0

मेरे लिए, यह ग्रहण ३.४.२ में भी काम नहीं करता है, हालांकि इसने पिछली रिलीज़ में काम किया है (मैंने पैकेज एक्सप्लोरर से एकल विधि चलाने की कोशिश की है और कनिष्ठ दृश्य से एकल जूनिट परीक्षण)


पैकेज एक्सप्लोरर से एकल विधि / परीक्षण चलाना मेरे लिए ग्रहण 3.4.2 में ठीक काम करता है।
वोल्कर स्टोलज़

0

मैं 3.4.2 के बारे में इस बात से सहमत हूं कि पिछले संस्करणों में जिस तरह से काम किया गया था, वह अब काम नहीं कर रहा है। इससे पहले कि आप JUnit दृश्य से परीक्षण के एक समूह में एकल परीक्षण पर राइट-क्लिक कर सकते हैं और उस परीक्षण को निष्पादित कर सकते हैं। नवीनतम संस्करण में यह हमेशा उन सभी को चलाने पर जोर देता है। दी गई, यह दृश्य आपके द्वारा पहले क्लिक की गई परीक्षा को चलाता है और बाकी को "अनरोटेड टेस्ट" नामक रोलअप में डंप करता है। अगर किसी को यह पता है, मैं जानना चाहता हूँ कि इसके आसपास कैसे पहुँचें।


0

यहाँ कुछ टिप्पणियों को पढ़ते हुए, ऐसा लगता है कि आप जिस कोड को बदल रहे हैं, उसके लिए परीक्षण चलाने में आपकी रुचि हो सकती है, जिस कोड पर आप काम कर रहे हैं, उस पर ध्यान केंद्रित किए बिना। ऐसा करने के लिए एक ग्रहण प्लगइन है। अनन्त देखें ।

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