2017-12-06 19 views
5

मैं विभिन्न मॉड्यूल (फाइलों) में परीक्षण मामलों के साथ कुछ nosetests चला रहा हूं जिसमें प्रत्येक अलग-अलग परीक्षण होते हैं।एक सेटअप विधि को परिभाषित करने के लिए कैसे केवल एक बार सबसे पहले परीक्षण के दौरान बुलाया जाता है?

मैं एक फ़ंक्शन/विधि को परिभाषित करना चाहता हूं जिसे केवल nosetest के साथ निष्पादन के दौरान बुलाया जाता है।

मैंने documentation (और उदा। here) देखा और देखें setup_module आदि जैसी विधियां हैं - लेकिन कहां और कैसे उपयोग करें? उन्हें अपने __init__.py में रखें? कुछ और?

मैं निम्नलिखित का उपयोग करने की कोशिश की:

class TestSuite(basicsuite.BasicSuite): 
    def setup_module(self): 
     print("MODULE") 

    ... 

लेकिन इस प्रिंटआउट कभी नहीं किया जाता है जब मैं nosetest के साथ परीक्षण चलाते हैं। मैं unittest.TestCase (जो त्रुटियों में परिणाम देगा) से प्राप्त नहीं होता है।

उत्तर

9

पैकेज स्तर को देखते समय, आप उस पैकेज के __init__.py में setup नामक एक फ़ंक्शन को परिभाषित कर सकते हैं। इस पैकेज में परीक्षणों को कॉल करना, setup__init__.py में फ़ंक्शन को एक बार बुलाया जाता है।

उदाहरण सेटअप

- package 
    - __init__.py 
    - test1.py 
    - test2.py 

documentation खंड 'टेस्ट संकुल' देखें।

1

यह एक

from nose import with_setup 

def my_setup_function(): 
    print ("my_setup_function") 

def my_teardown_function(): 
    print ("my_teardown_function") 

@with_setup(my_setup_function, my_teardown_function) 
def test_my_cool_test(): 
    assert my_function() == 'expected_result' 

Holp प्रयास करें यह ^^

में मदद करता है
संबंधित मुद्दे

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