With ステートメント

関連:GUI アクションおよびスクリプト GUI コンポーネント

With ステートメントで、同じ親階層を持つ連続するステートメントをグループ化することによって、スクリプトが短くなり、読み書きと編集がしやすくなります。

さらに、With ステートメントを使用すると、スクリプトの実行を高速化するのに役立ちます。With ステートメントを実行する場合、UFT One により、最初のステートメントを実行する前にアプリケーション内のオブジェクトが識別されますが、各ステートメントを実行する前に再識別されることはありません。

一方、With ステートメントによって参照されているオブジェクトが、何らかの方法で With ステートメントの実行中にアプリケーション内で更新、再描画、または変更される場合、このことが、テストの実行に影響する場合があります。次のステートメントを実行する前にアプリケーション内のオブジェクトを再識別するように UFT One に指示するには、RefreshObject テスト・オブジェクト操作を呼び出すステートメントを追加します。

With ステートメントの構文は、次のとおりです。

With object
	statements
End With

項目

説明

object

オブジェクトまたはオブジェクトを返す関数

statements

オブジェクトに対して実行する 1 つ以上のステートメント

例: たとえば、次のようなスクリプトがあったとします。

Window("Flight Reservation").WinComboBox("Fly From:").Select "London"
Window("Flight Reservation").WinComboBox("Fly To:").Select "Los Angeles"
Window("Flight Reservation").WinButton("FLIGHT").Click
Window("Flight Reservation").Dialog("Flights Table").WinList("From").
	Select "19097 LON"
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click

これは、次のスクリプトで置き換えることができます。

With Window("Flight Reservation")
	.WinComboBox("Fly From:").Select "London"
	.WinComboBox("Fly To:").Select "Los Angeles"
	.WinButton("FLIGHT").Click
	With .Dialog("Flights Table")
		.WinList("From").Select "19097 LON"
		.WinButton("OK").Click
	End With 'Dialog("Flights Table")
End With 'Window("Flight Reservation") 

注意: With ステートメントは手動で入力することもできますが、記録時に With ステートメントを自動生成させたり、既存のテストに基づいて With ステートメントを生成させたりもできます。詳細については、「With ステートメントの生成」を参照してください。