2009-02-04 12 views
6

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

छद्म कोड में, मैं कुछ इस तरह हैं: इस के लिए)

cpuTimer.start 
runTest 
cpuTimer.stop 

diff = cpuTimer.getDuration 

if diff > prevDiff // Perhaps to within a tolerance 
    failTest 

मैं (ThreadMXBean # getCurrentThreadCpuTime को देख रही है, लेकिन मुख्य समस्या यह है कि स्वचालित परीक्षण एक विस्तृत पर चलने हो जाएगा विभिन्न डेवलपर के पीसी की रेंज, और विभिन्न हार्डवेयर और क्षमताओं की एक श्रृंखला के साथ सर्वरों का परीक्षण करने के लिए स्वचालित रूप से खेती की जाएगी।

क्या यह काम करेगा, या संख्याएं भयानक होंगी?

इस समस्या को हल कैसे किया जाना चाहिए? क्या कोई बेहतर तरीका है? क्या इस तरह के कापर के लिए एक मानक उपकरण है?

उत्तर

0

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

यदि आप इन्हें फ़ील्ड होस्टनाम, टेस्टनाम, निष्पादनटाइम और बिल्ड नम्बर के साथ डेटाबेस तालिका में डालते हैं तो आपको अपनी अधिकांश चीजों को करने में सक्षम होना चाहिए।

+0

मुझे यह कहना चाहिए था कि मैं जुनीट का उपयोग नहीं कर रहा हूं। कठिन, भयानक तकनीकी और ऐतिहासिक कारणों से, पूरी प्रणाली कस्टम-निर्मित है। – izb

+0

जूनिट पर स्विच करना जूनिट 4 के साथ इतना आसान हो गया है;) – krosenvold

3

आप Perf4J पर देखने का प्रयास कर सकते हैं। मैंने अभी तक इसका उपयोग नहीं किया है, लेकिन यह जांच करने के लिए मेरी चीजों की सूची पर है।

अपने मुखपृष्ठ से:

Perf4J System.currentTimeMillis() log4j के रूप में करने के लिए है() System.out.println है

Developer Guide एक अच्छा परिचय है।

+0

हमें हमारी परियोजना पर कुछ ऐसा करने की ज़रूरत है और Perf4J सबसे अच्छा समाधान प्रतीत होता है। –

+0

यह वास्तव में अच्छा लग रहा है। क्या किसी ने अभी तक इसके साथ काम किया है? – Epaga

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

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