今日、このような場面にボリュームの実行例では:
私たちは、これらのファイルは、ビジネスや機能テストケースのファイルの種類に応じて、異なるモジュールに分散している複数のモジュールファイル(の.py)を有することができる仕事します。前の小さな例、我々はテストスイートを実行、テストケースファイルである - これは間違っていない開発の直接的、ステージや試運転段階が、試運転段階ならば、我々はこのモジュールを提出することはできませんユースケースを終えた後に、別の実施形態にスイッチングモジュールが継続されます。テスト・バッチ・ファイルは複数のモジュールを実行するように、我々は、使用する必要があります。
まず、第1実施形態の場合には、そのようなモジュールは、 -
1つの インポート unittestの #のライブラリユニットテストインポート 2 からセレンインポート webdriverを #1 webdriverをにインポート自動テストセレン 3 4 クラス baidu_test_1(たunittest.TestCase): #はunittestの中に、baidu_test_1クラスを記述継承TestCaseクラス 5つの 6 @classmethodの #は、我々の直接の促進しますオブジェクトの呼び出しは、直接である必要はないクラスがインスタンス化される呼び出し 7。 DEFセットアップ(CLS): #メソッドを実行するために、すべてのケースを行う前に初期化される 。8 cls.driver webdriver.Chrome =() #webdriverをオブジェクトのインスタンスを作成 9つの。 CLSを。 driver.maximize_window() #ブラウザのウィンドウ最大化 10 cls.driver.implicitly_wait(15) #の遅いページの読み込みを、我々は15秒間待つように長い時間を設定する 11 cls.driver.get(R 「http://www.baidu.com 」) #オープンBaiduのホーム・ページ 12は、 13である @classmethod 14 DEFティアダウン(CLS): #すべてのケースを行った後、方法の実行 15 cls.driver.quit() #は、ブラウザ閉じ 16 。17 '' ' テスト' '' 18である DEFの test_baidu_lianjie(自己) : #Baiduのリンクテストのユースケース 19 「」「Baiduのホーム:テストニュースのリンク、リンクのジャンプアドレスが正しいの後に」「」 20 self.driver.find_element_by_link_text(' ニュース').click() #のニュースのリンクをクリックしてニュースのリンクを取得:self.driver.current_url 21 self.assertEqual(self.driver.current_url、「http://news.baidu.com / 「) #取得したリンク、および実際の比較を行うためのリンクと同じ参照されていない 22がある 23れる 『』」__name__ ==」__main__ 『の場合は意味:ファイルが直接の.py時間を実行したときに、もし__name__ ==』 __main__「の下で実行されるコードのブロック; 24個 の.pyファイルモジュラー形で導入されたとき、もし__name__ ==」__main__ブロックは、「操作の下ではありません。'' ' 25 IF __name__ == ' __main__ ' : 26である unittest.main(冗長= 2)
次のコードモジュールの第2実施形態です。
1つの インポートユニットテスト 2 からセレンインポートwebdriverを 3 4 クラス:baidu_test_2(たunittest.TestCase) 5 @classmethod 6 デフセットアップ(CLS): 7 cls.driver = webdriver.Chrome() 8 cls.driver.maximize_window() 9 cls.driver .implicitly_wait(15 ) 10 cls.driver.get(R ' http://www.baidu.com ' ) 11 12 @classmethod 13 デフティアダウン(CLS): 14 cls.driver.quit() 15 16 DEF (自己)test_baidu_enabled: 17 SO = self.driver.find_element_by_id(' キロワット') #の要素がis_enabledによって編集することができるかどうかを確認し()、編集することができる戻る真 18は self.assertTrue( so.is_enabled()) #それがtrueを返した場合は、〜バーバラでtrueという 19。 20は DEF test_baidu_sousuo(セルフ): 21される ので、= self.driver.find_element_by_id(' キロワット' ) 22がある so.send_keys(" こんにちは中国') #入力されたコード入力ボックス上が選択され、:send_keys() 23であります self.driver.find_element_by_id(' SU ').click() #クリック操作が(クリックでシミュレート) 24 印刷(so.get_attribute(' 値')) #は、属性( '値')に応じた値GET_ATTRIBUTEフォームを取得します 25 self.assertEqual(so.get_attribute(「値」)、「ハロー中国」) #私たちが値を使用して取得し、私たちは同じかどうかを確認するために、比較を行うことを期待値 26 27 のiF __name__ == 「__main__を」: 28 unittest.main(冗長= 2)
注意:TEST_を始めている2つのテストケースの前にモジュールファイル名:テストモジュールの名前は、統一戦線、図を必要とします
次のモジュールは、バッチ実行例とコードモジュールのコードの最後のファイルです。
1 インポート unittestの #unittestの導入 2つの インポート OS #のインポートライブラリOSはファイルパスへのアクセスを容易にするために、以前に学習した 3。 4。 DEF ALLTESTS() 。5 。Unittest.TestLoaderスイート=()ディスカバー( #インスタンス化されたテストスイート 6 start_dir =はos.path .dirname(__FILE__)、 #1 start_dir =このパラメータは、ディスカバー()メソッドであり、後者のパラメータは例モジュールパスでバッチに要求される 。7 パターン= 「テスト_ *。のPy 」、 #1 パターン=このパラメータが発見され()メソッド実行されるすべての前述のパラメータで続いているが、TEST_実施形態である代わりに、数の.pyファイルの後半の* 8 =なしtop_level_dir) #top_level_dir =このパラメータは、()メソッド、固定フォーマットの発見である。top_level_dir =なし 。9 リターンスイート #はテストスイートをバック覚えている 10 。11 DEF RUN(): #の実行 12である unittest.TextTestRunner(冗長= 2) .RUN(ALLTESTS()) #のテストレポート 13である 14 IF __name__ == ' __main__ ' : 15 RUN()
バッチ実行があるように~~~~
要約:
1、要素が(is_enabledで編集できるかどうかを#チェックが)、あなたは真のリターンを編集することができ、それ以外の場合はFlaseある
2、とボックスに入力するには:send_keys()
3、ボタン操作を使用することができますクリックしますクリックして()
4、コンテンツ検索など、フォーム(「値」)の値を取得するGET_ATTRIBUTEプロパティ
現在のページのアドレスを取得するために、5 URLリンクを:私たちは右のページにジャンプするかどうかを判断するためにdriver.current_urlを
6に、バッチ実行例はunitestライブラリを使用しました発見(start_dirは、=「テストパターンTestLoader()クラス *のの.py」は、top_level_dir =なし) メソッドは
三つのパラメータがあることが分かるディスカバー:次は誰もがBaiduのホイールの自己学習用です~~~
start_dir:名前またはテストモジュールのディレクトリをテストします。
パターン=「テスト*用の.pyは、」:実施形態の原理と一致するファイル名を示します。アスタリスク「*」は、任意の数の文字を意味します。(テスト*のの.pyはテストの始まりです)
top_level_dir =なし:テストモジュールの最上位ディレクトリ。何の最上位ディレクトリ(つまりマルチレベルディレクトリのテストケースではありません)が存在しない場合、デフォルトはNoneです。
オリジナルリンクします。https://blog.csdn.net/weixin_40569991/article/details/81155145
オリジナルリンクします。https://blog.csdn.net/weixin_40569991/article/details/81155145
-------------自習からの要約は、私たちが手助けをしたい、友人が~~病気しやすく、季節の変化に注意を払う、秋~~~~~進展とともに来た、メッセージを残すことができません~~~~スティック秋脂肪