2017-12-06 9 views
5

私はnosetestsのテストケースをそれぞれ異なるテストを含む異なるモジュール(ファイル)で実行しています。nosetestでテスト中に一度し​​か呼び出されないセットアップメソッドを定義するには?

nosetestで実行中に一度だけ呼び出される関数/メソッドを定義したいとします。

documentation(例:here)を見て、setup_moduleなどの方法がありますが、どこでどのように使用するのですか?それらを私の__init__.pyに入れますか?他に何か?

私は、以下を使用してみました:

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

    ... 

が、私はnosetestでテストを実行すると、このプリントアウトが行われることはありません。私もunittest.TestCaseから派生していません(これはエラーになります)。

答えて

9

パッケージレベルでは、そのパッケージの__init__.pysetupという名前の関数を定義できます。このパッケージのテストを呼び出すと、__init__.pysetup関数が1回呼び出されます。

例のセットアップ

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

documentationセクション 'テストパッケージ' を参照してください。

1

それは^^

を助け、この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をお試しください

関連する問題