2008-12-08 12 views
6

लाइब्रेरी अपग्रेड (easymock 2.2 -> 2.4) के लिए धन्यवाद, हमारे पास ऐसे परीक्षण हैं जो लॉक करना शुरू कर चुके हैं। मैं व्यक्तिगत परीक्षणों पर उन सभी को एक समय निकालना चाहता हूं। विचार लॉक अप परीक्षणों की पहचान करना है - हम वर्तमान में अनुमान लगा रहे हैं - और उन्हें ठीक करें।टेस्टएनजी

क्या यह संभव है, अधिमानतः सूट-व्यापी स्तर पर? हमारे पास 400 परीक्षण हैं, यह प्रत्येक विधि कर रहे हैं या यहां तक ​​कि प्रत्येक वर्ग भी समय लेने वाला होगा।

उत्तर

5

suite tag में टाइम-आउट विशेषता हो सकती है। इस टाइम-आउट का उपयोग सभी परीक्षण विधियों के लिए डिफ़ॉल्ट रूप से किया जाएगा।

यह डिफ़ॉल्ट टाइम-आउट प्रति परीक्षण विधि के आधार पर ओवरराइड किए जा सकते हैं।

+0

हम मेवेन का उपयोग कर रहे हैं, इसलिए मुझे surefire प्लगइन पर प्रासंगिक सेटिंग्स मिलनी पड़ीं। दुर्भाग्यवश, यह हमें नहीं बता रहा है कि कौन सा परीक्षण मर रहा है ?! ओह ठीक है, यह एक और सवाल होगा। – sblundy

+0

आप तत्व पर के अंतर्गत टाइमआउट विशेषता भी जोड़ सकते हैं। इसमें तत्व के भीतर शामिल/बहिष्कृत शामिल हैं, जिससे आप दानेदार नियंत्रण को बेहतर बना सकते हैं। – Saish

2

सुइट स्तर पता चला है गलत दृष्टिकोण होने के लिए (यानी "भी चौड़ा शुद्ध", क्योंकि आप अंत समय समाप्त सीमा के साथ बहुत अधिक तरीकों अंकन), आप एक कस्टम IAnnotationTransformer परिभाषित करने के लिए की जरूरत है, जो प्रत्येक अस्पष्ट के लिए फ़ंक्शन, आपको @ टेस्ट एनोटेशन को संशोधित करने का मौका देगा (उदाहरण के लिए, setTimout() method)।

1

आप एक खोज कर सकते हैं और "@Test" के साथ "@Test (टाइमआउट =) के लिए" की जगह बंद परीक्षण को खोजने के लिए काम करना चाहिए और उसके बाद पूर्ववत किया जा सकता (setTimout(0) समय समाप्त निर्देश रद्द)।

+1

यह बहुत शुष्क नहीं है – Hilikus

2

बहुत देर हो चुकी है, लेकिन: jstack -l <PID> चल रहा है आपको स्टैक डंप देगा, जिसे आप ढूंढ सकते हैं कि कौन सी कॉल फंस गई हैं। आप यह सुनिश्चित करने के लिए कुछ बार नमूना देना चाहेंगे कि वे अटक गए हैं।

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