selenium 2-python 24-自動化テストモデルの紹介
2086 ワード
自動化されたテストフレームワークは、テスト機能の関数ライブラリ、テストデータソース、テストオブジェクト識別基準、および再利用可能なモジュールを含む統合システムです.自動化テストフレームワークは発展の過程でいくつかの段階を経て、モジュール駆動テスト、データ駆動テスト、オブジェクト駆動テストを経験した.この章では、読者を率いて、このいくつかのテストモデルを理解します.
自動化テストモデルは自動化テストアーキテクチャの基礎であり、自動化テストの発展も異なる段階を経験し、絶えず新しいモデル(概念)が提出され、これらの自動化モデルを理解し、使用することは、柔軟でメンテナンス性のある自動化アーキテクチャの構築に役立ちます.
4.1.1線形テスト
スクリプトを録画または作成することによって、スクリプトはシーン(完全な機能操作のセット)を完了し、スクリプトの再生によって自動化テストを行います.これは早期に自動化テストを行う形式である.前章でwebdriver APIを用いて作成したスクリプトもこの形式で練習した.
1つのインスタンスは1つのスクリプトに対応し、ログインが変化し、ユーザー名の属性が変化した場合、各スクリプトを修正する必要があります.テストインスタンスは規模を形成し、スクリプトのメンテナンスに多くの作業を使用し、自動化の意味を失う可能性があります.
4.1.2モジュール化とクラスライブラリ
上のスクリプトでは、実際には重複している内容がたくさんあることがわかります.そこで私たちは重複する部分を
共通のモジュールとして作成し、必要に応じて呼び出すことで、スクリプトの作成効率が大幅に向上します.
メリット:
一方、コードのメンテナンスが便利になり、ログインモジュールが変化した場合は、loginを修正するだけです.pyファイル内のログインモジュールのコードであれば、ログインモジュールを呼び出すすべてのスクリプトを変更する必要はありません.
4.1.3データ駆動
配列であれ、辞書であれ、関数であれ、csv、txtファイルであれ.データとスクリプトの分離を実現し,言い換えればパラメータ化を実現した.私たちは千個のデータを転送し、スクリプトの実行を通じて、千個の結果を返すことができます.
同じスクリプトで異なるデータを実行して異なる結果を得たのは、スクリプトの多重化を強化したのではないでしょうか.
実は、モジュール化とパラメータ化は開発にとって全く技術的な含有量がありません.当初のQTPオートメーションツールにとっては、開発を知らないテストが多かったため、時代の発展に伴い、開発を知っているテストスタッフが増えてきた.
4.1.4キーワード駆動
データ駆動を理解したのは、「データ」を「キーワード」に変換し、キーワードの変更によってテスト結果の変更を引き起こすにほかならない.
キーワード駆動はプログラミング方式では表現しにくい.QTP、robot frameworkなどはすべてキーワード駆動を主とする自動化ツールで、このようなツールの主な使いやすさのため、「表を記入する」式のキーワード駆動は私たちに多くの下層のものをパッケージしてくれて、私たちは3つの問題を考えるだけでいいです:私は何をしますか?誰にするの?どうしますか.の
selenium IDEは、キーワード駆動の自動化ツールと見なすことができます.
このようなフォーマットで異なるオブジェクトを記述することで、最終的な結果の変化を引き起こす.つまりすべては対象を出発点とする.もちろん、このようなスクリプトは、コードを知らない学生にとって非常に直感的です.私は何をしますか.誰に対して?どうする?
より高度なキーワードドライバは、keywordを自分で定義してフレームワークに「登録」することができます.より強力な機能と拡張性を実現します.
ここでは自動化テストのいくつかの異なるモデルを簡単に紹介し、彼らの長所と短所を簡単に述べたが、彼らは後者が前者の関係を淘汰するのではなく、自動化を実施する上で需要を出発点とし、混合して以上のモデルを使って問題を解決する.スクリプトを
開発とメンテナンスが容易になります.
、
自動化テストモデルは自動化テストアーキテクチャの基礎であり、自動化テストの発展も異なる段階を経験し、絶えず新しいモデル(概念)が提出され、これらの自動化モデルを理解し、使用することは、柔軟でメンテナンス性のある自動化アーキテクチャの構築に役立ちます.
4.1.1線形テスト
スクリプトを録画または作成することによって、スクリプトはシーン(完全な機能操作のセット)を完了し、スクリプトの再生によって自動化テストを行います.これは早期に自動化テストを行う形式である.前章でwebdriver APIを用いて作成したスクリプトもこの形式で練習した.
1つのインスタンスは1つのスクリプトに対応し、ログインが変化し、ユーザー名の属性が変化した場合、各スクリプトを修正する必要があります.テストインスタンスは規模を形成し、スクリプトのメンテナンスに多くの作業を使用し、自動化の意味を失う可能性があります.
, 。
。
4.1.2モジュール化とクラスライブラリ
上のスクリプトでは、実際には重複している内容がたくさんあることがわかります.そこで私たちは重複する部分を
共通のモジュールとして作成し、必要に応じて呼び出すことで、スクリプトの作成効率が大幅に向上します.
, , ;
メリット:
, ; , ,
, 。
一方、コードのメンテナンスが便利になり、ログインモジュールが変化した場合は、loginを修正するだけです.pyファイル内のログインモジュールのコードであれば、ログインモジュールを呼び出すすべてのスクリプトを変更する必要はありません.
4.1.3データ駆動
; , ( ) ,
。 。 , ,
。
配列であれ、辞書であれ、関数であれ、csv、txtファイルであれ.データとスクリプトの分離を実現し,言い換えればパラメータ化を実現した.私たちは千個のデータを転送し、スクリプトの実行を通じて、千個の結果を返すことができます.
同じスクリプトで異なるデータを実行して異なる結果を得たのは、スクリプトの多重化を強化したのではないでしょうか.
実は、モジュール化とパラメータ化は開発にとって全く技術的な含有量がありません.当初のQTPオートメーションツールにとっては、開発を知らないテストが多かったため、時代の発展に伴い、開発を知っているテストスタッフが増えてきた.
4.1.4キーワード駆動
データ駆動を理解したのは、「データ」を「キーワード」に変換し、キーワードの変更によってテスト結果の変更を引き起こすにほかならない.
キーワード駆動はプログラミング方式では表現しにくい.QTP、robot frameworkなどはすべてキーワード駆動を主とする自動化ツールで、このようなツールの主な使いやすさのため、「表を記入する」式のキーワード駆動は私たちに多くの下層のものをパッケージしてくれて、私たちは3つの問題を考えるだけでいいです:私は何をしますか?誰にするの?どうしますか.の
selenium IDEは、キーワード駆動の自動化ツールと見なすことができます.
このようなフォーマットで異なるオブジェクトを記述することで、最終的な結果の変化を引き起こす.つまりすべては対象を出発点とする.もちろん、このようなスクリプトは、コードを知らない学生にとって非常に直感的です.私は何をしますか.誰に対して?どうする?
より高度なキーワードドライバは、keywordを自分で定義してフレームワークに「登録」することができます.より強力な機能と拡張性を実現します.
ここでは自動化テストのいくつかの異なるモデルを簡単に紹介し、彼らの長所と短所を簡単に述べたが、彼らは後者が前者の関係を淘汰するのではなく、自動化を実施する上で需要を出発点とし、混合して以上のモデルを使って問題を解決する.スクリプトを
開発とメンテナンスが容易になります.