トランザクションの使用方法 QTP/UFT

⚡ スマートサマリー

取引 UFT テストの選択したセクションの実行にかかる時間をラップで測定する方法ping 開始ステートメントと終了ステートメントの間のステップで、実行結果に実行時間を報告するもの。

  • 🔘 目的: 取引とは、テスト全体ではなく、フライトの予約など、1つのビジネスフローにかかる回数を指します。
  • ☑️ 挿入: 「挿入」メニューは、選択したステップの周囲に「トランザクション開始」と「トランザクション終了」のステートメントを追加します。
  • 文: Services.StartTransaction と Services.EndTransaction は、エディター内で直接同じ処理を実行します。
  • 🧪 結果について 最終報告書には、名前、状況、合計所要時間、および無駄になった時間が報告されます。
  • 🛠️ 入れ子: トランザクションはネストできますが、開いている2つのトランザクションが同じ名前を共有してはなりません。
  • ⚠️ 統合: LoadRunnerとBusiness Process Monitorは、トランザクション内に記録されたデータを読み取るだけです。

トランザクションの使用方法 QTP UFT

In UFT 1/QTPトランザクションを定義することで、テストの一部分の実行にかかる時間を測定できます。テスト内でトランザクションを定義するには、テストの適切なセクションを開始トランザクションステートメントと終了トランザクションステートメントで囲みます。

トランザクションはスクリプト内のどこにでも挿入でき、テストに追加できるトランザクションの数に制限はありません。

⚠️ 製品名: HP QuickTest Professional として出荷されたツール (QTP) は HP となり、その後 Micro Focus Unified Functional Testing となり、現在は によって販売されています。 OpenText現在のヘルプページではそれをこう呼んでいる OpenText 機能テスト。トランザクションの動作は、どのリリースでも同じように行われます。

トランザクションを挿入する方法 QTP?

トランザクション内にトランザクションを挿入することもできます

次のビデオでは、トランザクションを挿入する手順を説明します。 UFT 一つ。

詳しくはこちら こちら ビデオにアクセスできない場合

たとえば、 フライトを予約する.

  1. In QTP取引を開始したい適切な州を選択してください。
  2. 「挿入開始トランザクション」を選択します。 トランザクション開始ダイアログ Box 開きます
  3. トランザクションに適切な名前を付けます(「予約時間」など)。
  4. テストにトランザクション開始ステートメントが追加されます
  5. トランザクションを終了する状態を選択します
  6. 「挿入」>「トランザクションの終了」をクリックします
  7. トランザクション終了ダイアログ Box 利用可能なすべてのトランザクションのリストが開きます
  8. 「OK」をクリックします。 トランザクション終了ステートメントが追加されます
  9. テストを実行しましょう
  10. 結果として、トランザクション終了ステートメントにより、注文の挿入にかかる時間がわかります。

注意: 同じダイアログボックスは、 キーワードビュー、そしてステップ Generator 挿入メニューを開かずに、同一の文を挿入します。

エディター内の取引明細

上記のダイアログボックスには2つ書き込みます VBScript テストにラインを入れます。Typing パターンに慣れてしまえば、エディタで自分で作成する方が速く、手順がコードによって生成される場合はそれが唯一の選択肢となります。

Services.StartTransaction "Booking Time"

' the steps that book the flight go here

Services.EndTransaction "Booking Time"

どちらのメソッドもServicesオブジェクトに属します。startステートメントは引数を1つ取り、endステートメントはオプションで2つ目の引数を取ります。

ステートメント Arguments 何それがありません
サービス.StartTransaction 名前 ランニングのその時点から時間計測を開始する
サービス.EndTransaction 名前、[ステータス] 測定を停止し、結果を記録する

オプションのステータスは、トランザクションの評価方法を決定します。省略すると合格とみなされます。 自動応答オプション.

  • 自動応答オプション — 2つのステートメント間でエラーが発生しない限り、合格します。これがデフォルトです。
  • 合格 ―常に合格ステータスで終了します。
  • 失敗する ―常に失敗ステータスで終了します。
Services.StartTransaction "Booking Time"
Wait 1
Services.EndTransaction "Booking Time", Pass

トランザクション結果の読み取り

テストが完了すると、実行結果の「トランザクション終了」ステップには、測定結果を説明する4つの値が含まれます。

結果フィールド 意味
トランザクション名 開始ステートメントで指定された名前
終了ステータス 合格か不合格かは、ステータス引数または自動によって決定されます。
合計時間 開始ステートメントと終了ステートメントの間の経過時間
無駄な時間 その期間内の時間 UFT 1つはそれ自体が追加した

トランザクションが開いている間、ツールがバックグラウンドプロセスを実行するため、時間の浪費は問題となります。trac全体の実行時間から、アプリケーション単体でかかったであろう時間を推定します。これは、ビルド間で比較する価値のある数値です。

シングルユーザーの継続時間は機能ベンチマークであり、負荷値ではありません。同時実行は、 性能試験 ツールによっては、1人のユーザーにとっては問題ないトランザクションでも、100人未満では失敗する可能性があります。

ネストされたトランザクションと分散トランザクション

ソースステップリストには、トランザクションが別のトランザクションの中に配置される可能性があることが示されています。これにより、全体のフローのタイミングを損なうことなく、処理の遅いサブステップを分離することができます。外側のトランザクションは実行を継続し、内側のトランザクションは開閉処理を行います。

巣作りを安全に行うための2つのルール。

  • すべての名前には対応するペアが必要であり、開始ステートメントは終了ステートメントより前に記述されなければなりません。
  • 同じ名前の取引は、一度に1件しか開くことができません。同じ名前で2件目の取引を開くと、最初の取引は失敗として終了します。

分散トランザクションはさらに進んで、2つのテストにまたがります。 サービス.分散トランザクションの開始 最初のテストでそれを開き、 サービス.EndDistributedTransaction 2 番目の段階で閉じられ、名前ではなく一意の ID で一致します。これは、ビジネス プロセス モニターと LoadRunner トランザクション内に記録されたデータのみを読み取り、トランザクション外のデータはすべて無視するシナリオ。

トランザクション内のステップが正当な理由で失敗する可能性がある場合は、トランザクションをペアリングします。 回復シナリオ そのため、実行は停止する代わりに終了ステートメントに到達します。ping 途中。

よくあるご質問

トランザクションは、実行結果と LoadRunner に、ステータス付きの名前付き結果を報告します。 Mercuryタイマーはスクリプト内で経過したミリ秒数のみを計測するため、計測された時間はユーザー自身が報告または変換する必要があります。

無関係な操作の時間を計測する Mercuryタイマーを設定し、その値を Services.AddWastedTime に渡します。無駄になった時間は、開いているすべてのトランザクションから差し引かれるため、報告される所要時間はテスト対象のフローのみを反映します。

デフォルトでは、終了ステートメントの前にエラーが発生すると実行が停止します。テスト設定の実行ペインで、エラーオプションを次のステップに進むように設定することで、終了ステートメントに到達し、トランザクションが記録されるようにできます。

LoadRunnerコントローラーで実行結果ウィンドウではなく、トランザクション内で実行されるステップのみが送信されるため、開始と終了のペア以外のステップはパフォーマンスレポートに反映されません。

はい。Services.SetTransaction は、名前、秒単位の期間、およびステータスを受け取ります。これにより、スクリプトはツールが計測した値ではなく、自身で計算した測定値をログに記録できます。

機械学習モデルは、ビルド全体にわたって各トランザクションのベースラインを設定し、実行時間が通常の範囲を超えた場合にアラートを発することで、合否判定だけでは見逃してしまうような緩やかなパフォーマンス低下を検出します。

Yes. GitHubコパイロット コメントから Services.StartTransaction と Services.EndTransaction のペアを完成させますが、トランザクション名とステータス定数は、使用されている命名規則と照らし合わせて確認する必要があります。

技術的な制限はないが、業務フローごとにトランザクションを1つに絞ることで、レポートの可読性を保つことができる。多数の小さなトランザクションがあると、重要な数値が測定ノイズに埋もれてしまう。