静的なプログラム的記述

関連:GUI アクション,スクリプト GUI コンポーネント,関数ライブラリ

テスト・ステートメントにオブジェクトを直接記述するには,オブジェクトの名前を指定する代わりに,オブジェクトを記述する property:=value のペアを指定します。

一般的な構文

一般的な構文は次のとおりです。

TestObject("PropertyName1:=PropertyValue1", "...", "PropertyNameX:=PropertyValueX")

メソッド部分の内容は次のとおりです。

TestObject テスト・オブジェクト・クラス。
PropertyName:=PropertyValue

記述プロパティとその値。property:=value の各ペアは,カンマと二重引用符で区切る必要があります。

Insight テスト・オブジェクトを記述するには,コントロールの画像へのファイル・システム・パスまたは ALM パスを提供する PropertyValue を使用して,ImgSrc プロパティを指定します(ALM テスト・リソース・モジュール内にあるファイルへの ALM パスを指定するには,「[QualityCenter\Resources] Subject\<フォルダとファイル名>」と入力します)。

たとえば,次に示すステートメントでは,Advantage Online Shopping ページ内で,名前が username でタイプが text である WebEdit テスト・オブジェクトを指定します。実行セッション中,UFT One は一致するプロパティ値を持つ WebEdit オブジェクトを検索し,「tutorial」というテキストを入力します。

Browser("Advantage Shopping").Page("Advantage Shopping").WebEdit("name:=username", "type:=text").Set "tutorial"

次のステートメントは,電卓ウィンドウ内の InsightObject テスト・オブジェクトを指定しています。画像は C:\AllMyFiles\Button6.bmp ファイルにあります。このファイルには,[6]ボタンの画像が含まれています。実行セッション中,UFT One は,この画像のような電卓の領域を検索し,その中央をクリックします。

Window("Calculator").InsightObject("ImgSrc:=C:\AllMyFiles\Button6.bmp").Click

先頭に戻る

正規表現

標準設定では,UFT One は,プログラム的記述のプロパティ値をすべて正規表現として評価します。

値が正規表現として扱われ,特殊な正規表現文字(*?+など)をリテラル文字として含める必要がある場合は,特殊文字の前に \(バックスラッシュ)文字を追加します。

Web または UI Automation テスト・オブジェクトの説明を記述する場合,プログラムの説明に UftIsRegex プロパティを追加してそれを False に設定できます。これにより,UFT One は,この説明のプロパティ値を正規表現ではなくリテラル文字列として扱うようになります。

先頭に戻る

変数

実行セッション中に取得するプロパティ値に基づいてオブジェクトを検索する場合には,プロパティ値として変数名を入力できます。次に例を示します。

MyVar="some text string" 

Browser("Hello").Page("Hello").Webtable("table").Webedit("name:=" & MyVar)

先頭に戻る

親テスト・オブジェクトの検索

テスト・オブジェクト階層構造の特定のポイントからプログラム的記述を使用する場合には,同じステートメント内では,そのポイント以降は必ずプログラム的記述を使用する必要があります。プログラム的記述を使用して階層内の親オブジェクトを指定した後に,オブジェクト・リポジトリでの名前を使用してテスト・オブジェクトを指定すると,当該オブジェクトは UFT One によって識別されません。

たとえば,次のように使用してください

  • 親オブジェクトに対してはオブジェクト・リポジトリ名を使用して,操作の実行対象となるオブジェクトに対してはプログラム的記述を使用します。

    Browser("Advantage Shopping").Page("Advantage Shopping").WebEdit("name:=username", "type:=text").Set "tutorial"
  • テスト・オブジェクト階層全体を通してプログラム的記述を使用します。

    Browser("Title:=Advantage Shopping").Page("Title:=Advantage Shopping").WebEdit("name:=username", "type:=text").Set "tutorial"
  • 記述内の特定のポイントから(Page オブジェクト記述以降)プログラム的記述を使用します。

    Browser("Advantage Shopping").Page("Title:=Advantage Shopping").WebEdit("name:=username", "type:=text").Set "tutorial"

悪い例:Browser および Page オブジェクトについてはプログラム的記述を使用していますが,WebEdit テスト・オブジェクトについてはオブジェクト・リポジトリでの名前の使用を試みています。

Browser("Title:=Advantage Shopping").Page("Title:=Advantage Shopping").WebEdit("username").Set "tutorial"

先頭に戻る

Insight テスト・オブジェクト

Insight テスト・オブジェクトを記述するには,コントロールの画像へのファイル・システム・パスまたは ALM パスを提供する PropertyValue を使用して,ImgSrc プロパティを指定します(ALM テスト・リソース・モジュール内にあるファイルへの ALM パスを指定するには,「[QualityCenter\Resources] Subject\<フォルダとファイル名>」と入力します)。

Insight テスト・オブジェクトに対してプログラム的記述を使用する場合,次のことを考慮してください。

  • 記述には,ImgSrc プロパティ(必須)と順序識別子プロパティ(オプション)のみを含めることができます。

  • 記述には,正規表現を含めることはできません。

  • コントロールの画像を含むファイル(ImgSrc プロパティで指定)の条件:

    • 24 または 32 ビット/ピクセルをサポートする圧縮されていない画像ファイル(JPEG,BMP,PNG)。

    • テストまたはコンポーネントを実行する任意のコンピュータからアクセス可能である必要があります。

  • プログラム的記述を使用して定義された Insight テスト・オブジェクトで Click メソッドを実行すると,UFT One は,指定した画像に一致するコントロールの中央をクリックします。

先頭に戻る