例は、レベル_classでレベルを実行pytest_

 
 
「」 ' 
モジュールレベル(setup_module / teardown_module)はブロック全体的な話から始まり、
グローバルクラスは動作しません
クラスの前と後のクラスレベル(setup_class / teardown_class)だけ(で一度実行
クラス)
メソッドは、ステージ(setup_method / teardown_method)を開始します最初と最後の過程で
(クラスの)

機能レベル(健康の実施形態にsetup_function / teardown_functionのみ機能
クラスのエフェクト(アクティブでない)
setup_functionの
teardown_function 
「」 ' 
DEFのsetup_function():
     印刷()
     印刷各ユースケースを開始する前に:setup_function実行" 

DEF teardown_function():
     印刷" teardown_function:使用していないケースが後に開始" インポート  pytest
 DEF setup_module():
    「」「
    これは、モジュールレベルの設定で、それはこのモジュール(test_fixt_class.py)になり
    、以前のすべてのテストの実行、それが一度呼び出される。
    それは直接機能モジュールとして定義されていることに注意してください」「」
    印刷()
     を印刷-------------- --------------モジュールの前にセットアップDEF teardown_module():
     「」 " 
    これは、モジュールレベルのティアダウンでありますそれは(test_fixt_class.py)年には、このモジュールになります
    。すべてのテストの実行が完了した後、一度呼び出され
    、それがダイレクト機能モジュールとして定義されていることに注意してください「「」
    印刷----------ティアダウンモジュールの後-------------- ---- " クラスのTestCase():
     DEF setup_module(セルフ):
        「」」
        これは、モジュールレベルの設定で、それはこのモジュール(test_fixt_class.py)になり
        、以前のすべてのテストの実行、一度呼び出されます。
        それがダイレクト機能モジュールとして定義されていることに注意してください「「」
        印刷()
         印刷--------------前クラスのセットアップモジュール---------- ---- 

    DEF teardown_module(セルフ):
         」「」
        これはモジュールレベルのティアダウンで、それはこのモジュール(test_fixt_class.py)年になります
        一度呼び出されたすべての実行されたテストが完了した後、。
        それがダイレクト機能モジュールとして定義されていることに注意してください「「」
        印刷-------------した後、クラスで--------------ティアダウンモジュール- " 

    DEF セットアップ(セルフ):
        セットアップ:実行開始前に、各ユースケースDEF ティアダウン(自己):
         印刷ティアダウン:各ユースケースの実行の終了後にDEFの:setup_class(セルフ)
         印刷setup_class:すべてのユースケースを実行する前にDEFのteardown_class(セルフ):
         印刷" teardown_class:すべてのユースケースの実装前" DEFのsetup_method(セルフ):
         印刷" setup_method:実行は、各ユースケースを開始する前に" DEFのteardown_method(セルフ):
         印刷"teardown_method:各ユースケースの実行の終了後" DEFのtest_one(自己):
         印刷" ---- test_oneを実行" 
        X = " この" 
        アサート ' H '  におけるX
     DEFのtest_three(自己):
         印刷を" 実行中test_two " 
        A = " こんにちは" 
        B = " こんにちは言葉
        主張B
 の場合 __name__ ==' __main__ ' 
    pytest.main([ ' -q '' test_fixt_class ' ])
 
 

 

 

結果:

=============================テストセッションが開始さ================== ===========
プラットフォームのWin32 - Pythonの3.7.4、pytest-5.1.0、PY-1.8.0、pluggy-0.12.0の
ROOTDIR:E:\ py_pytest \ 2つの項目をinterfacecollected

test_fixt_class.py
-------------- -------------- Module1標準の前にセットアップ
setup_class:前にすべてのユースケースを実行するには、
setup_method:各ユースケースの開始前に
設定:実装の開始を前に、各ユースケース
。test_one ----実行されている
各ユースケースの終了後に実行:ティアダウンを
teardown_method:各ユースケースの終了後に実行が
setup_method:各ユースケースは、前に開始
セットアップ:ユースケースの開始前に、各実行
test_twoが実行されています。
ティアダウン:各ユースケースの終了後に行われる
各ユースケースの終了後に行われる:teardown_method
teardown_class:すべてのユースケースを実行する前に
、モジュールの後ティアダウン-------------- ----------- ---
[100%]

============================== 2 0.02s ===============に渡さ===============

 

結論1:
モジュールレベル(setup_module / teardown_module)はブロック全体的な話から始まり、
グローバルクラスは動作しません。
機能レベル(setup_function / teardown_function生態様のみ機能
有効(クラスで効果的ではありません)
 

 

おすすめ

転載: www.cnblogs.com/tallme/p/11369791.html