क्या मुझे इस तरह से घोषणा पर वर्ग क्षेत्रों को इनिशियलाइज़ करना चाहिए?
public class SomeTest extends TestCase
{
private final List list = new ArrayList();
public void testPopulateList()
{
// Add stuff to the list
// Assert the list contains what I expect
}
}
या सेटअप () में इस तरह से?
public class SomeTest extends TestCase
{
private List list;
@Override
protected void setUp() throws Exception
{
super.setUp();
this.list = new ArrayList();
}
public void testPopulateList()
{
// Add stuff to the list
// Assert the list contains what I expect
}
}
मैं पहले फॉर्म का उपयोग करता हूं क्योंकि यह अधिक संक्षिप्त है, और मुझे अंतिम क्षेत्रों का उपयोग करने की अनुमति देता है। अगर मुझे सेट-अप के लिए सेटअप () विधि का उपयोग करने की आवश्यकता नहीं है , तो क्या मुझे अभी भी इसका उपयोग करना चाहिए, और क्यों?
स्पष्टता:
JUnit परीक्षण विधि के अनुसार एक बार परीक्षण वर्ग को तुरंत रोक देगा। इसका मतलब है कि list
प्रति परीक्षण एक बार बनाया जाएगा, भले ही मैं इसे घोषित करूं। इसका मतलब यह भी है कि परीक्षणों के बीच कोई अस्थायी निर्भरता नहीं है। तो ऐसा लगता है कि सेटअप () का उपयोग करने के कोई फायदे नहीं हैं। हालाँकि JUnit FAQ में कई उदाहरण हैं जो setUp () में एक खाली संग्रह को इनिशियलाइज़ करते हैं, इसलिए मुझे लगता है कि इसका एक कारण होना चाहिए।