2011-10-15 16 views
7

पायथन में एक अपवाद मैं इस परीक्षण वर्ग है को जन्म देती है:बंद चल रहा है परीक्षण करता है, तो सेटअप unittest

class mytest(unittest.TestCase): 
    def setUp(self): 
     os.mkdir(...) 
     ... 

    def tearDown(self): 
     shutil.rmtree(...) 

    def test_one(self): 
     ... 

    def test_two(self): 
     ... 

अगर कुछ विफल रहता है के बाद mkdir जब test_one की setUp चल भाग गया है, यह अभी भी test_two की setUp चलाने की कोशिश करेंगे। इस बिंदु पर मुझे mkdir पर एक त्रुटि मिलेगी क्योंकि rmtree नहीं चला था।

क्या setUp विफल होने पर पाइथन को वर्तमान परीक्षण चलाने से रोकने के लिए कोई तरीका है? मैं नियमित परीक्षण विफलता पर रोकना चाहता हूं।

+0

यह hacky है, लेकिन आप सिर्फ अपने 'setUp' विधि में अपवाद को पकड़ने और उसके अनुसार विफल हो सकता है – dm03514

+0

अगर इसकी सही आप स्वीकार कर सकते हैं =) – JiminyCricket

उत्तर

11

सेटअप विधि में विफलता कॉल जोड़ें।

def setUp(self): 
    try: 
     somethingThatMightFail() 
    except: 
     self.fail() 
संबंधित मुद्दे