qtp tutorial 21 how make qtp tests modular
QTPアクションとアクションプロパティ
アクションは、テストを論理単位に分割します。これは、非常に読みやすいテストを支援し、モジュール性が達成されていることを確認します。
QTPアクションには次の3つのタイプがあります。
- 再利用可能 –同じテストまたは異なるテスト内で複数回呼び出すことができるのはこれらだけです
- 再利用不可 –これらは他のアクションによって呼び出すことはできません
- 外部アクション –別のアクションから呼び出されたときに再利用可能なアクションは、呼び出されたアクションの外部アクションになります。
=> QTPトレーニングチュートリアルシリーズについては、ここをクリックしてください
学習内容:
テストでQTPアクションを使用する方法は?
#1) デフォルトでは、すべての新しいアクションは再利用可能です
#二) すべてのアクションには、独自の「アクション」データシートまたはローカルシートがあります
#3) メニューオプションを使用して、別のテストの既存のアクションの呼び出しを挿入できます。 挿入->既存のアクションの呼び出し->(テスト/アクションの選択)」
#4) 現在のテストに挿入されたステートメントまたはアクション呼び出しは次のようになります。
RunAction “Action2[Testname]”, oneiteration
#5) アクションは、プロパティと呼ばれるアクションが親アクションに指定されている回数だけ呼び出されます。
例えば、
Action2は、Test2で再利用可能なアクションです。 Test2のデータテーブルの反復ごとに呼び出されます。
Action1は、Test1でAction2を呼び出すアクションです。
Action1は1回だけ実行されます。
その後、Action2は、Test2で呼び出された回数に関係なく、1回だけ実行されます。
#6) 以前に再利用可能なアクションを変更して使用不可にすることができ、その逆も可能です。
# 7) 以前に再利用可能なアクションが再利用不可としてマークされると、アクションを呼び出すテストは失敗し、警告メッセージがユーザーに表示されます。
#8) 前回の記事で、パラメータを「To」アクションと「From」アクションに渡す方法を見てきました。これらを定義するには、次のいずれかを実行できます。
- キーワードビューからアクションを選択し、右クリックしてアクションのプロパティを選択します。
- エキスパートビューでアクションを実行しているときに、 編集->アクション メニューのプロパティ。
#9) ダイアログボックスが表示され、[一般](名前、説明、再利用可能かどうか)、パラメータ(i / pまたはo / p)、関連付けられたリポジトリ(別のアクションのORを関連付けることができます)、および[使用]タブが表示されます
#10) アクションにパラメーターを送信するための一般的な構文は次のとおりです。
RunAction “Action Name”. Oneiteration, i/p parameters, o/p parameters
以下は、要件に応じて、テストでアクションの出力値を利用できるいくつかの方法です。
配列をメソッドに渡すJava
に) アクションo / p値(呼び出されたアクションによって返される値)は、変数に格納できます。
RunAction “Action1”,OneIteration, i/pvalues, x, x being the variable
b) アクションo / p値は環境変数に保存できます。
環境変数を作成するには、[ファイル]-> [設定]-> [環境]タブを選択し、[変数の種類]ドロップダウンでユーザー定義を選択し、[+]と[新しい環境パラメータの追加]をクリックします–名前(env_Var)と空を入力します値を入力し、[OK]をクリックします。
この変数にo / p値を割り当てるには、
RunAction “Action1”,OneIteration, i/pvalues, Environment(“env_var”)
c) アクションo / p値は、データテーブルの列に格納できます。
RunAction “Action1”, OneIteration, i/pvalue, DataTable(“A”, dtGlobalsheet)
QTP関数と関数ライブラリ
テスターのQTPには多くの組み込み関数がありますが、特定の操作を実行してそれらのステップを再利用可能にしたい場合もあります。これを行うには、ユーザー定義関数を作成し、それらを別のファイルに入れてテストに関連付け、関数名をその特定のテストのキーワードとして機能させることができます。
したがって、定義上、関数は特定のタスクを実行するコードの一部にすぎません。
今すぐ関数ライブラリを作成しましょう:
メニューオプション「 ファイル->新規->関数ライブラリ 」または「Shift + Alt + N」またはメニューの「新規」ドロップダウンオプションをクリックして、「関数ライブラリ」を選択します
QTPは、テストのキーワードビューと非常によく似たエディターを開きます。ここにコードを書くことができます。ユーザーをgmail.comページにログインさせるステートメントを含めます。
Function gmailLogin(uname, pwd) SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' Browser('Gmail: Email from Google').page('Gmail: Email from Google').Sync Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebEdit('Email').Set uname Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebEdit('Passwd').SetSecure pwd Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebButton('Sign in').Click End Function
コードの記述が完了したら、コンピューター上で必要な名前と場所を選択して、関数ライブラリーを「保存」します。
注意: 関数ライブラリは、どのテストにも自動的に含まれません。明示的に行う必要があります。
関数ライブラリをテストに関連付ける手順は次のとおりです。
ステップ1) テストを開くか、新しいテストを作成します
ステップ2) IDEでの設定によっては、リソースペインがすでに使用可能になっている場合があります。メニューオプションを選択しない場合「 表示->リソース 」と表示され、ペインが表示されます。
ステップ3) 「関数ライブラリの関連付け」を右クリックし、「関数ライブラリの関連付け」オプションをクリックして、前に作成したライブラリファイルを選択します。
ステップ4) パスを相対パスに変換する前に、テスターの確認を求めるメッセージが表示されます。これは、同じ階層が続いている限りファイルが移動された場合にテストが失敗しないことを確認するために行われます。このダイアログボックスで[はい]をクリックします。
ステップ5) これからこのノードの下に表示され、関連付けが機能したかどうかを確認する方法です。
ルーターでネットワークセキュリティキーを見つける方法
ステップ#6) ライブラリを関連付けたら、必ずテストを保存してください。
今後、テストに次のようなステートメントがあると、ライブラリ内の関数が呼び出され、そこでステップが実行されます。
gmailLogin(“swatiseela”,”akihad989080890”)
上記のステートメントでは、定数のユーザー名とパスワードの値を渡しています。ただし、必要に応じて、データテーブルから値を渡すこともできます。
gmailLogin(DataTable('SignInName', dtGlobalSheet), DataTable('GPassword', dtGlobalSheet))
ライブラリファイルには複数の関数を含めることができ、テストに複数のライブラリファイルを関連付けることができます。
結論
これで、関数ライブラリとアクションは終わりです。これらの2つのトピックは、すべてのテストをよりモジュール化して再利用できるようにするため、テスターにとって非常に重要です。
次のトピックは オブジェクトリポジトリ(OR) 。共有ORおよびORマネージャーを作成、関連付け、および操作する方法について説明します。
=> QTPトレーニングチュートリアルシリーズについては、こちらをご覧ください
ご質問やご意見をお気軽に投稿してください。
推奨読書
- QTPのパラメータ化(パート2)-QTPチュートリアル#20
- 例で説明されたQTPのパラメータ化(パート1)-QTPチュートリアル#19
- QTPチュートリアル#14 –QTPテストでビットマップとテキストチェックポイントを追加する方法
- QTPチュートリアル-25以上のMicroFocus Quick Test Professional(QTP)トレーニングチュートリアル
- QTPチュートリアル#18 –QTPの例で説明されたデータ駆動型およびハイブリッドフレームワーク
- QTPチュートリアル#24-QTPテストでの仮想オブジェクトとリカバリシナリオの使用
- QTPチュートリアル#10-ループと条件文の記述-VBスクリプトの基本パート2
- 実践例を含むPythonメイン関数チュートリアル