2

Webページと対話するQTPスクリプトがあります。時折、このWebページは、テストの残りの部分を妨げるダイアログをポップアップ表示し、テストの実行を続行する前に、単純な「OK」で閉じる必要があります。

リカバリシナリオはこの正確な状況を処理することになっていますが、私が思うに、QTPはポップアップを認識しません。リカバリシナリオは、「ウィンドウタイトル:Webページからのメッセージ」のダイアログが表示されたときにトリガーされるように設定されています。オブジェクトスパイを使用したので、これが正しい識別であることがわかります。

添付されているのは、Webページがときどき表示するダイアログボックスです。非常に単純なダイアログですが、なぜQTPはそれを認識しないのでしょうか。

Webページダイアログボックスからのメッセージ

4

2 に答える 2

2

結局、私の回復シナリオは正しく構築されましたが、私が抱えていた問題は、QTPが回復シナリオをいつアクティブ化するかを知らなかったということでした。

に移動しFile > Settings > Recovery、アクティブ化するリカバリシナリオを強調表示してから、に変更Activate recovery scenariosOn every stepます。

デフォルトでは、リカバリシナリオは、 Webページがエラーをスローしたときではなく、 QTPがエラーをスローしたときにのみアクティブになります。最後に、リカバリシナリオですべてのステップをチェックすると、パフォーマンスが低下する可能性があります。

于 2012-10-03T21:56:04.850 に答える
0

このウィンドウがページの更新、新しいウィンドウを開く、ボタンをクリックする、またはページを2時間操作するように表示される場合は、検査する必要があります。次に、これは取得する標準ウィンドウなので、オブジェクトリポジトリに追加してみませんか。次に、このウィンドウの存在をチェックする関数を作成し、疑わしいシナリオのいずれかが発生したときにこの関数を呼び出します。これにより、リカバリシナリオに不適切に対応するパフォーマンスが低下することはありません。

于 2013-01-22T17:32:55.157 に答える