मेरे पास एक परीक्षण केस है जहां मैं एक इकाई जोड़ता हूं, इसे अद्यतन करता हूं और इसे हटा देता हूं। इसलिए, निष्पादन का आदेश यहां महत्वपूर्ण है। मैं इसे होना चाहते हैं:जुनीट परीक्षण मामले में निष्पादन का आदेश निर्दिष्ट करना
- बनाएं
- अद्यतन
- हटाएँ
बात यह सिर्फ एक परीक्षण का मामला (15 में से) के लिए, JUnit निम्न क्रम में वह निष्पादित:
- अद्यतन
- बनाएँ।
मैं जुनीट को एक विशिष्ट क्रम में निष्पादित करने के लिए कैसे कहूं? अन्य मामलों में, जुनीट पूरी तरह से ठीक काम करता है (क्रमशः निष्पादित)। और इस मामले में जुनीट अजीब तरीके से क्यों व्यवहार करता है?
प्रासंगिक कोड नीचे टुकड़ा:
private static Date date;
private static int entity;
static Parking p;
public ParkingTests(String name) {
super(name);
}
public void testAdd() throws Exception {
//Add code here
}
public void testUpdate() throws Exception {
//update code here
}
public void testDelete() throws Exception {
//delete code here
}
}
यह weirder हो जाता है। मैं एक सूट के हिस्से के रूप में कई परीक्षण मामलों चलाता हूं। अगर मैं केवल पार्किंग मामले चलाता हूं, तो आदेश बनाए रखा जाता है। अगर मैं इसे दूसरों के साथ चलाता हूं, तो कभी-कभी इसे बनाए रखा जाता है, कभी-कभी नहीं!
क्या आप इस कक्षा का स्रोत कोड दिखा सकते हैं? –
एक टेस्ट क्लास टेस्ट क्लास में विधियों में से एक होगा। अपने परीक्षणों को एक निश्चित निष्पादन आदेश पर निर्भर करते हुए एक अच्छा अभ्यास नहीं है, जैसा कि यहां विस्तारित किया गया है: http://stackoverflow.com/q/3693626/422353 – madth3
हां, मैंने इसे पढ़ लिया था और आदर्श दुनिया में यूनिट परीक्षणों का एहसास किया था, कुछ विशिष्ट क्रम में निष्पादित नहीं किया जाना चाहिए। अफसोस की बात यह है कि चीजें यहां कैसे काम करती हैं। बनाया और दंडित करने से पहले एक कैब को हटाया नहीं जा सकता है। तो आदेश महत्वपूर्ण हो जाता है। – crazyaboutliv