1

UFT で記述的プログラミングを使用しています。再生中に Windows の印刷ダイアログが表示されるかどうかを確認したい。次に、そのダイアログで [キャンセル] ボタンをクリックします。私の問題: 散発的に QTP が印刷ダイアログの識別に失敗するため、キャンセル ボタンのクリックに失敗します。これが失敗することもあれば、成功することもあります。

以下に示す私のコード構文:

Set Window_EnterMeter = browser_servicemanager.Window("regexpwndtitle:=Enter Meters.*") 
Set dialog_Print = Window_EnterMeter.Dialog("regexpwndtitle:=Print") 
Set winbtn_CalcelPrint = dialog_Print.WinButton("regexpwndtitle:=Cancel") 

fn chckprintpopupwndow() 
{ ''''''''Navigating to that page 
          call Absolutehighlight(Button_Action) 
          call Absolutehighlight(Meter_Entry) 
          call Absolutehighlight(PrintMeter_Opt2) 
          AbsoluteClick(PrintMeter_Opt2) 
          EnterMeters_Window.WebElement("html id:=ctl00_Save_BTN_C").Click 

'''''''By click on abve option window popup print option appears and UFT not identifying that window all times, so clicking on cancel button not doing so TC fails 
          dialog_Print.Activate 
          AbsoluteClick(winbtn_CalcelPrint) 
          EnterMeters_Window.WebElement("html id:=ctl00_Cancel_BTN_C").Click 
} 
4

3 に答える 3

2

この問題の根本原因を突き止めました。実際に仮想マシン (VM) でスクリプト全体を実行しています。いくつかの再生中に VM を最小化し、ローカル システムで作業するため、最小化中に UFT は winobject の検出に失敗し、最小化モードで (キーを送信する) キー押下イベントも機能しません。レジストリ編集を更新することで、最小化の問題を解決できます。詳細については、次を参照してください 。- セッションを最小化したまま、リモート マシンで QTP スクリプトを実行できますか

于 2014-01-18T07:54:29.523 に答える
0

このような問題を解決しました。そのウィンドウのキャンセル ボタンをクリックするのではなく、プロパティを閉じる dialog_Print.Activate dialog_Print.Close と呼びました。

そして、絶対クリック機能はこれだけを行っています: AbsoluteClick(Object) { object.Refreshobject object.Click }

UFTの別の問題を回避するために、これをクリックに使用しています

于 2013-09-30T19:23:40.537 に答える