フレームワークの紹介(パート2)

テスト中

パート1



第二世代のフレームワーク

この世代は、自動化されたテストフレームワークの中間レベルであり、その中には非常に単純なフレームワークがあり、非常に適切に設計されたフレームワークがある場合があります。 このようなフレームワークは、自動テストのサポートが重要な要素である場合に考慮する必要があります。 第三世代のフレームワークはこのレベルのフレームワークの概念に基づいているため、この世代のフレームワークをよく理解することが重要です。

第二世代のフレームワークには、データ指向のフレームワークと機能分解を使用するフレームワークが含まれます。 このレベルのほとんどのフレームワークはハイブリッドであり、両方のアプローチを使用しますが、どちらか一方のみを使用することが可能であるため、これらのアプローチは互いに独立して考慮されます。



機能分解
広義の機能分解とは、これらのコンポーネントを組み合わせて自動テストシナリオを作成できるように、モジュールコンポーネント(ユーザー定義関数)を作成するプロセスです。

再利用可能な関数

モジュール化は、テストでテスト対象のアプリケーションの機能を実装するためによく使用されますが、作成できるユーザー定義関数は他にもあります。 これらの機能は次のとおりです。

機能分解ベースのフレームワークは、含まれる機能の複雑さによって複雑さが異なります。 関数は、メニューの操作などの単純なタスクを解決するためと、複雑な機能手順、複雑なエラー処理システム、レポート生成メカニズムの両方のために作成できます。



機能的分解の利点


機能分解の欠点


データの向き
このアプローチを使用して作成されたフレームワークは、スクリプトで使用されるコンポーネントのほとんどが主にこれらのスクリプト内にあるという点で、第1世代のフレームワークに似ています。 違いは、データの操作方法にあります。 データ指向フレームワークは通常、スクリプトの外部にあるソースに情報を保存します。 アプリケーションデータを入力し、外部データを対応するパラメーターに添付するためのフィールドをパラメーター化することにより、テストデータはスクリプト自体の内部に配置されません。

以下は線形スクリプトの例です。

  1. 「John」をユーザー名テキストボックスに入力します
  2. 「パスワード」テキストボックスに「JPass」を入力します
  3. [ログイン]ボタンをクリックします
  4. 「ようこそ画面」​​が存在する場合
  5. テストに合格する
  6. その他
  7. テストに不合格
  8. 終了する 場合
このスクリプトのデータ指向バージョンは、以下に示すような外部ソース(スプレッドシート、データベース、XMLファイルなど)からの情報を使用します。

名前パラメータ パスワードパラメータ
ジョン JPass
スー バイパス
ランディ RPass
トリーナ TPass
上記のデータの向きを使用して上記で変更した線形スクリプトのバージョンは、次のようになります。

  1. オープンデータテーブル
  2. Usernameテキストボックスに<NameParameter>を入力します
  3. パスワードテキストボックスに<PasswordParameter>を入力します
  4. [ログイン]ボタンをクリックします
  5. 「ようこそ画面」​​が存在する場合
  6. テストに合格する
  7. その他
  8. テストに不合格
  9. 終了する 場合
  10. データテーブルを閉じる
データがスクリプトから削除され、パラメーターに置き換えられていることに注意してください。

このアプローチにより、異なるコードで同じコードを使用できます。 多くの場合、データへの方向付けはフレームワークに反する手法と見なされますが、その使用は異なる情報を使用して同じスクリプトを再利用するのに役立ちます。 このアプローチは、線形シナリオに固有の問題の多くを解決しませんが、役に立つ場合があります。



データ指向の利点


データの向きの欠点
このアプローチの欠点には、線形スクリプトから継承された次の側面が含まれます( パート1を参照)。




All Articles