三selenium3のWeb自動テストフレームワーク:unittestの紹介とプロジェクト実際の戦闘の使用

unittestの導入とアプリケーションは、基本的な知識を持っている、結合していないウェブの自動化のデモを除いて、前に書かれた記事を参照することができます

https://www.cnblogs.com/wuzhiming/p/8858305.html

 

自動化で使用するためのユニットテストの基礎


 次の例では、実行の使用例を示しています

- * -コーディング:UTF-8 - * - 
輸入unittestの
 からセレン輸入webdriverを
 から business.register_business 輸入RegisterBusiness


クラスTestLoginPage(たunittest.TestCase):

    @classmethod
    DEF setUpClass(CLS):
         印刷動作前(テストプログラム)のすべてのステップ:テスト計画は、一度だけ実行される前に

    @classmethod
    DEF tearDownClass(CLS):
         印刷すべてのステップが操作(テストプログラム)を設定した後:テストプログラムを1回だけ実行された後に

    DEF セットアップ(セルフ):
         印刷各ユースケースの事前実行ステップ
        self.driver = webdriver.Chrome()
        URL = " http://www.5itest.cn/register "
        self.driver.get(URL)
        self.driver.maximize_window()
        self.register_business = RegisterBusiness(self.driver)

    DEF ティアダウン(自己):
         印刷各テスト後工程
        self.driver.close()

    デフtest_base_case(自己):
        test_login = self.register_business.base_case(" [email protected] "" 管理者"" 123456 " 

    デフtest_login_email_error(自己):
        test_loginemailerror = self.register_business.login_email_error(" 1 "" 管理者"" 123456 " 

    unittest.skipの@(ただ、次のユースケースを実行していないDEFのtest_must_run(セルフ):
         印刷あなたは私をしなければなりません


もし __name__ == " __main__ " 
    unittest.main()

 

あなたが参照配列の動作をカスタマイズする場合の実施例の実施形態で使用することができる上記のリンクで動作することができます

 

複数のファイルを1回実行して例が多数 


 

 例1は、使用方法を示します

 - * -コーディング:UTF-8 - * - 
''」
ファイル名:unittest_test1.py
「」」
インポートunittestの
 からセレン輸入webdriverを
 から business.register_business 輸入RegisterBusiness

クラスTestLoginPage(たunittest.TestCase):

    @classmethod
    DEF setUpClass(CLS):
         印刷" すべては一度だけ実行されます" 

    @classmethod
    DEF tearDownClass(CLS):
         印刷" 一度だけ終了" 

    DEF セットアップ(セルフ):
         印刷各ユースケースの前工程の実行開始

    DEF ティアダウン(自己):
         印刷後の各段階のためのテストケースの終了


    DEF test_base_case1(セルフ):
         印刷" 最初のユースケース" 

    DEF test_base_case2(セルフ):
         印刷" 第二のユースケース" 

    unittest.skipの@(ただ、次のユースケースを実行していないDEFのtest_must_run(セルフ):
         印刷あなたは私をしなければなりません


もし __name__ == " __main__ " 
    unittest.main()

 

ケース2のデモを使用します

 - * -コーディング:UTF-8 - * - 
''」
ファイル名:unittest_test2.py
「「」

インポートユニットテスト

クラスTestLoginPage(たunittest.TestCase):

    @classmethod
    DEF setUpClass(CLS):
         印刷" すべては一度だけ実行されます" 

    @classmethod
    DEF tearDownClass(CLS):
         印刷" 一度だけ終了" 

    DEF セットアップ(セルフ):
         印刷各ユースケースの前工程の実行開始

    DEF ティアダウン(自己):
         印刷後の各段階のためのテストケースの終了


    DEF test_base_caseA(セルフ):
         印刷" 最初のユースケース" 

    DEF test_base_caseB(セルフ):
         印刷" 第二のユースケース" 

    DEF test_must_runC(セルフ):
         印刷" あなたは私をしなければなりません" 


もし __name__ == " __main__ " 
    unittest.main()

 

上記2例の単一操作でコードファイル

 

- * -コーディング:UTF-8 - * - 
輸入unittestのの
 輸入OS

クラスMyTestCase(たunittest.TestCase):
     デフtest_allcase(自己):
        case_path = os.path.join(os.getcwd())
         プリント(case_path)
        スイート = unittest.defaultTestLoader.discover(case_path、' unittest_t *の.py ' 
        unittest.TextTestRunner()。実行(スイート)


もし __name__ == ' __main__ ' 
    unittest.main()

 

おすすめ

転載: www.cnblogs.com/wuzhiming/p/11790029.html