Welcome to the new Ranorex Support Portal

Path editor 画面

パス エディターは、Ranorex Spy の 2 つ目のメインのワークスペースです。要素ツリーで選択した要素についての RanoreXPath を編集する場所です。パス エディターには、ニーズに応じて RanoreXPath を編集するのに役立つ便利な機能があります。

このセクションでは、パス エディターの動作とその機能について説明します。

tipp icon

スクリーンキャスト

以下のスクリーンキャストで、この章で説明している内容を確認できます。

Watch the screencast now

パス エディターへのアクセス

パス エディターへのアクセスは、Spy 内のワークスペース セレクターからと、開いているリポジトリから直接アクセスする、2 つの方法があります。

Spy から

要素ツリーで任意の UI 要素を選択します。
ワークスペース セレクターで PATH EDITOR をクリックします。
対象の UI 要素がツリーでハイライトされた状態で、パス エディターがワークスペースに表示されます。

Accessing path editor from within Spy

リポジトリから

リポジトリで任意のリポジトリ アイテムを選択します。

EDIT IN SPY をクリックします。
または、右クリック メニューから Spy で編集… をクリックします。

Accessing path editor from within Studio

要素が見つからない場合

パス エディターで UI 要素を開いた際に発生する一般的なエラーは、該当の要素が見つからなかったことを示すエラーです。これは通常、UI 要素を含む対象のアプリケーションが、現在実行されていないために発生します。

初期状態

リポジトリで任意のリポジトリ アイテムを選択します
EDIT IN SPY をクリックします。
エラー メッセージおよびツリーに赤色のマークが表示された状態でパス エディターが開かれます。これは、RanoreXPath で指定された要素が見つからなかったことを示します。

Could not find element error

Could not find element error

RanoreXPath によって指定された各 UI 要素が見つからなかったことを示す赤色のマーク
UI 要素が見つからなかったことを示すステータス バーのエラー メッセージ

解決方法

対象の UI 要素を含むアプリケーションを起動します。
パス エディターで 更新 ボタンをクリックします。

Solution to UI-element not found error

ツリー レベルのロック

パス エディターでリポジトリ アイテムを開くと、RanoreXPath を編集およびとトラッキング可能な部分が、その親リポジトリ アイテムによって制限されます。親以上を指定する RanoreXPath の要素は編集できません。同じレベルまたは親より上の UI 要素はトラッキングできません。

これは、これらのロックされたツリー レベルでの変更が、他のリポジトリ アイテムに影響を与え、既存の RanoreXPath を破壊する可能性があるためです。親より上のリポジトリ アイテムに変更を加える必要がある場合には、それらのリポジトリ アイテムを別途編集してください。

Locked path editor tree level - part II

EDIT IN SPY をクリックすると、対象のリポジトリ アイテムがパス エディターで開かれます。
RanoreXPath を編集可能な部分は、親のリポジトリ アイテムで制限されます。

Locked path editor tree level - part III

Browser & results ワークスペースでは、要素ツリーでリポジトリ アイテムが表示されます。
リポジトリ アイテムの親は、自動的にルート要素として設定されます。この要素は、編集とトラッキングが制限されます。
パス エディターでは、ルート要素およびその上位を含むすべての要素についての、編集とトラッキングがロックされます。
ルート要素の配下のすべての要素は編集およびトラッキングが可能です。

パス エディター ワークスペース

パス エディター ワークスペースは、以下のような要素で構成されます。

Path editor working environment

Track ボタンと RanoreXPath フィールド
ワークスペース セレクター
パス ツリー
UI 要素の RanoreXPath をツリー構想で表示します。
更新: アプリケーションでの変更を反映させるためにツリーを更新します。
ハイライト: アプリケーションの UI 要素をハイライトします。
いずれも、対象のアプリケーションが起動していないと機能しません。

属性の一覧
RanoreXPath で使用可能な、対象の UI 要素の属性、演算子、値の一覧です。

ステータス インジケーター
現在の RanoreXPath 式にマッチする UI 要素の数を示すインジケータです。

RanoreXPath の編集

パス エディターの主な用途は、ユーザーのニーズに応じて、RanoreXPath をより具体的あるいは一般的にするための編集をサポートすることです。パスに実際に変更を加える場所は、RanoreXPath フィールドです。この章のイントロダクションで簡単に触れましたが、このセクションで詳しく説明します。要素ツリーから UI 要素を編集するのか、リポジトリから既存のリポジトリ アイテムを編集するのかによって、編集方法が若干異なります。

要素ツリーから UI 要素を編集する場合には、パス エディターは検索のように機能し、特定の RanoreXPath がどの UI 要素を識別するのかを簡単に確認できます。識別された UI 要素をリポジトリに追加しない限り、テストに影響を与えないサンドボックス環境のように使用できます。

既存のリポジトリ アイテムを編集する場合には、テストを変更することを意味します。以下の図に示すように、RanoreXPath フィールドの表示は少し複雑になります。

Path editor line components

背景が黄色のフィールドは、RanoreXPath を編集する場所です。
その下部に表示される行は、現在適用されている有効な RanoreXPath 式、つまり、変更を加える前の式です。
黄色のフィールドに表示されている RanoreXPath の一部がグレイ アウトしています。これは、この部分がロックされ編集できないことを示します。
APPLY ボタンで、現在適用されている RanoreXPath (下部の行) を、編集中の RanoreXPath (黄色のフィールド) で置き換え、Spy を終了し Ranorex Studio へ戻ります。置き換えた新しいパスが、リポジトリ アイテムに反映されます。

RanoreXPath の構文サポート

RanoreXPath の構文は非常に複雑です。パス エディターには、編集を容易にするための構文サポート機能が用意されています。

RanoreXPath の編集中に、Ctrl+Space を押下します。
現在の RanoreXPath 部分で使用可能な構文がドロップダウン リストで開かれます。

Path editor RanoreXPath syntax support

パス コンポーネントの選択/選択解除

パス ツリーで、特定のコンポーネントをRanoreXPath に含めるか/除外するかを、簡単に指定できます。チェックのオン/オフで、パスが自動的に更新されます。しかしながら、以下で説明するいくつかの制限事項があります。

Selecting/deselcting path editor tree elements

パス コンポーネントを選択/選択解除するチェックボックス

以下の手順でこの制限事項を確認します。

コンポーネントを選択状態にし、RanoreXPath に含めます。
コンポーネントを選択解除状態にし、RanoreXPath から除外します。これにより、アダプター タイプや属性といった情報も失われます。
コンポーネントを再度選択状態にします。失われた情報は復元されず、tabpage と radiobutton の間の任意の UI 要素を表すプレースホルダー (any) になります。

Re-selection of path editor tree elements

このように情報が失われた場合には、UI 要素を再度トラッキングするか、情報を手動で追加する必要があります。

ツリーのコンテキスト メニュー

パス ツリー上のコンポーネントのコンテキスト メニューで、いくつかのオプションが指定できます。

Path editor specifying tree elements

Optional (?)
対象のコンポーネントを Optional と宣言します。RanoreXPath 上で対象のコンポーネントに ? が付記されます。Optional に指定されたコンポーネントは、パスの動作に必須ではなくなります。つまり、このコンポーネントが見つからない場合でも、パスは動作します。アダプターと属性値を持つ場合、その両方が Optional になります。つまり、アダプターのみ、属性のみ、あるいはその両方がマッチしない場合でも、パスは動作します。

Axis
Axis は関係演算子です。他の UI 要素との関係を指定することで、UI 要素を選択できます。

child 現在のノードのすべての子
descendant-or-self 現在のノード、およびそのすべての子孫 (子、子の子、など)
ancestor 現在のノードのすべての先祖 (親、親の親、など)
self 現在のノード
descendant 現在のノードのすべての子孫 (子、子の子、など)
parent 現在のノードの親
ancestor-or-self 現在のノード、およびそのすべての先祖 (親、親の親、など)
preceding-sibling 現在のノードよりも前のすべての兄弟
following-sibling 現在のノードよりも後ろのすべての兄弟

参照

RanoreXPath については、Ranorex Studio アドバンスト > ⇢ RanoreXPath を参照してください。

Node name
要素に特定のアダプターを割り当てます。

参照

アダプターおよび属性/属性値については、Ranorex Studio アドバンスト > ⇢ UI 要素 を参照してください。