XBrowserコントロールを操縦する
この章では、 XBrowser Engine 3.0 を使用したステアリングの特別な要件について説明します。個々のコントロールのステアリング オプションに関する一般的な情報については、 see chapter "タイプをコントロールする" を参照してください。
設定パラメータ DisableGetElementById
このパラメータは、同じIDの制御する ものが複数見つかることを保証するのに役立ちます。このパラメータは、2つ以上のコントロールが同じIDを共有している場合、スキャン時に自動的に生成されます。これは、最初のものを除く各ModuleAttributeに対して作成されます。デフォルト値は TRUE に設定されています。
XPath式と識別パラメータ XPath を使用してHTML要素を識別できます。このパラメータは、 XScan ウィンドウのプロパティで識別グリッドの Transition セクションで使用できます。
XPathを使用して識別するには、設定->Tbox->エンジン->XBrowser で XPath 識別を有効にする設定を有効にします。
XPathを指定する方法の詳細については、ここをクリックしてください。
Tosca XScan で識別するためにXPathパラメータを使用する
ステアリングパラメータ FireEvent
この章で説明する各コントロールタイプに、ステアリングパラメータ FireEvent を追加することができます。これを行うには、接頭辞を付けずに値フィールドにイベントハンドラを指定します。例えば、 onclick の代わりに click という値を指定します。大文字と小文字は区別されますので、ご注意ください。
ActionMode 入力は、ビジネスベースのコントロールのデフォルト操作を使用して常にイベントをトリガーします。
複数のイベントを追加するには、イベントをセミコロンで区切ります(例: change;blur)。
イベントの可用性は、実装されたコントロールによって異なります。HTMLイベントの詳細情報については、次のページを参照してください。: HTML Event Attributes 。
コンボ ボックスエントリを選択した後に、 FireEvent の変更をトリガーする
ステアリングパラメータ FireEventMethodIE
Internet Explorer(サポート終了)で開き、Microsoft固有のメソッド AttachEvent を使用するアプリケーションの場合は、パラメータ FireEvent に加えて、ステアリングパラメータ FireEventMethodIE を指定する必要があります。
パラメータ FireEventMethodIE には、以下の値を指定できます。
|
値 |
説明 |
|---|---|
|
なし |
値を指定しない場合は、 DispatchEvent がトリガーされます。DispatchEvent がない場合は、 FireEvent がトリガーされます。 |
|
FireEvent |
FireEvents をトリガーします。 |
|
DispatchEvent |
DispatchEvent をトリガーします。 |
|
FireEvent + DispatchEvent |
FireEvent をトリガーし、続いて DispatchEvent をトリガーします。 |
|
DispatchEvent + FireEvent |
DispatchEvent をトリガーし、続いて FireEvent をトリガーします。 |
ステアリングパラメータ FireEventMethodIE
Microsoft Edge バージョン 44 またはそれ以前をステアリングするために、モジュールレベルでステアリングパラメータ FocusOnActivate を定義できます。Microsoft Edgeバージョン79以降を使用している場合、このパラメータは機能しません。ブラウザウィンドウを有効にした後、Microsoft Edgeで現在読み込まれているページにフォーカスを当てる場合は、このパラメータを使用します。例えば、ブラウザのツールバーのコントロール もにフォーカスがある場合、 FocusOnActivate を使用して、ユーザーがシミュレートしたキーボードが失敗する のを防ぐことができます。
あるいは、 FocusOnActivate をテストコンフィギュレーションパラメータとして定義することもできます。
ステアリングパラメータ SyncStateInteractive
デフォルトでは、 XBrowser エンジン3.0 、Webサイトの読み込みステータス (document.readyState) が完了した場合にのみ実行されます。読み込みステータスがインタラクティブなWebサイトでも XBrowser Engine 3.0 を実行するように指定できます。これを行うには、ステアリングパラメータ SyncStateInteractive を指定し、その値を false に設定します。
ステアリングパラメータ SyncStateInteractive は Internet Explorer (サポート外) でのみ機能することに注意してください。
あるいは、 SyncStateInteractive をテストコンフィギュレーションパラメータとして定義することができます。
Steering parameter AllowedAriaControls
実行中にToscaがすべて、または特定の ARIA要素を無視するかを指定します。互換性と XBrowserのカスタマイズに問題がある場合は、これを TRUE に設定することをお勧めします。
Toscaは、 IgnoreAriaControls 設定を使用して、このステアリングパラメータを新しいModulesに自動的に追加できます。
ステアリングパラメータ IgnoreAriaControls
代わりに、 IgnoreAriaControls をテストコンフィギュレーションパラメータとして定義できます。
ステアリングパラメータ EnableSlotContentHandling
コントロールを割り当てられたスロット要素の子として表示するかどうかを指定します。
Tosca は、このステアリングパラメータを新しいModulesに自動的に追加し、「スロットコンテンツ処理を有効にする」設定の構成に基づいて、それを TRUE または False に設定します。
2024.1より前のバージョンの Toscaで作成されたModulesでは、ステアリングパラメータは表示されず、 TRUE に設定されていることに注意してください。これを変更して、コントロールを DOM 構造どおりに表示する場合は、ステアリングパラメータ EnableSlotContentHandling を手動で追加し、 False に設定します。
テクニカルプロパティ IsSteerable
テクニカルプロパティ IsSteerable は、個々のコントロールで特に指定されていない場合に、コントロール をステアリング可能かどうかを確認します。
技術的な観点から、エンジンはプロパティ CurrentStyleを検証します。Display が none 以外の値で、プロパティ CurrentStyleがあるかどうか。Visibility は非表示とは異なる値です。
CSSスタイルプロパティによるHTML要素の識別
HTML要素は、CSSのスタイルプロパティを使用して識別できます。スタイルプロパティはstyle_ で始まります。
コントロールのスタイル プロパティを読み込むには、 Tosca XScan でコントロールを選択し、詳細ボタンをクリックして、すべて読み込むを選択します。
スタイルプロパティでコントロールを識別する
CSSスタイルプロパティの検証、 WaitOn 、およびバッファリングも使用できます。
入力タグを使用して一部のHTML要素を操作するには、特別にフォーマットされたデータが必要です。期待されるフォーマットは、設定で定義したデータフォーマットとは無関係です。
次の表は、特別にフォーマットされたデータが必要な入力タグを持つHTML要素を示しています。
type 属性の値
データタイプ
期待されるフォーマット*
|
例 |
日付 |
文字列 |
yyyy-MM-dd |
|---|---|---|---|
|
2012-03-20 |
時刻 |
文字列 |
HH:mmまたはHH:mm:ssまたはHH:mm:ssSSS |
|
20:15または20:15:03 |
日時-現地 |
文字列 |
yyyy-MM-ddTHH:mm |
|
2012-03-20T20:15 |
月 |
文字列 |
yyy-mm |
|
2012-03 |
週 |
文字列 |
yyyy-Www |
|
2013-W04 |
カラー |
文字列 |
#<hexadecimal color code> |
|
#45AE3B |
範囲 |
文字列 |
任意の数 |
|
マシンのローカライゼーションに準拠した小数点セパレータを使用してください。 |
3または3.14または31.4E-1 |
*日付と時刻を指定するために、この列では標準のToscaCommander表記法を使用します。 時間関連のコントロール(日付、時刻、日時-現地、月、週)を空の値で操作すると、 Tosca Commander はHTML要素の値をクリアします。 |
非表示入力フィールドをスキャンする |
タイプ属性がhiddenに設定された入力要素をスキャンして確認することができます。これを行うには、設定->TBox->エンジン->非表示のHTML要素を無視が False に設定されていることを確認します。非表示の入力要素の内容を変更することはできません。
マウスを使用せずに技術的なクリック操作を行う
テストステップの値 {CLICK} を使用すると、すべての HTMLコントロールで左クリック操作を実行できます。これは、マウスを使って実際に左クリック操作を行うようシステムに指示するものです。
マウスを使わずに左クリックのテクニカルな操作を行うよう、システムに指示することができます。これは {CLICK} よりも安定しており、テストのパフォーマンスを改善し、マシンがロックされている場合でもクリック操作を実行できます。
技術的な左クリック操作は、以下のいずれかの方法で実行できます。
テストステップの値 Xを使用して、ボタン、ラジオボタン、コンテナで技術的な左クリック操作を実行します。コントロールが有効になっているかどうかを確認し、マウスを使用せずに左クリックを実行するようにシステムに指示します。
テストステップの値 {Invoke[Click]} を使用して、すべての HTMLコントロールに対して技術的な左クリック操作を実行します。これは、マウスを使わずに左クリックを実行するようシステムに指示しますが、コントロールが有効かどうかは検証しません。
テクニカルプロパティ
-
以下の表では、XBrowser Engineのすべてのテクニカルプロパティを示しています。コントロール タイプ列には、プロパティを使用できるコントロール タイプが表示されます。これらのプロパティは、値列の TestStepValuesで使用できます。
-
テクニカルプロパティ
プロパティ名
データタイプ
|
ClassName |
文字列 |
すべてのhtml要素 |
|---|---|---|
|
Id |
文字列 |
すべてのhtml要素 |
|
文字列 |
すべてのhtml要素 |
|
|
InnerText |
文字列 |
すべてのhtml要素 |
|
OuterHtml |
文字列 |
すべてのhtml要素 |
|
OuterText |
文字列 |
すべてのhtml要素 |
|
タグ |
文字列 |
すべてのhtml要素 |
|
タイトル |
文字列 |
すべてのhtml要素 |
|
Href |
文字列 |
アンカー要素 |
|
無効 |
ブール値 |
ボタン要素 |
|
値 |
文字列 |
ボタン要素 |
|
ColSpan |
数値 |
テーブルセル(TH、TD) |
|
RowSpan |
数値 |
テーブルセル(TH、TD) |
|
タイトル |
文字列 |
Htmlドキュメント |
|
URL |
文字列 |
Htmlドキュメント |
|
ReadyState |
文字列 |
Htmlドキュメント |
|
Src |
文字列 |
(I) フレーム要素 |
|
名前 |
文字列 |
(I) フレーム要素 |
|
Src |
文字列 |
画像 (Img) 要素 |
|
Alt |
文字列 |
画像 (Img) 要素 |
|
Checked |
ブール値 |
すべての入力要素 |
|
Disabled |
ブール値 |
すべての入力要素 |
|
名前 |
文字列 |
すべての入力要素 |
|
タイプ |
文字列 |
すべての入力要素 |
|
値 |
文字列 |
すべての入力要素 |
|
ReadOnly |
ブール値 |
すべての入力要素 |
|
Selected |
ブール値 |
ListItem(オプション要素) |
|
値 |
文字列 |
ListItem(オプション要素) |
|
Multiple |
ブール値 |
コンボ ボックス、リストボックス(選択要素) |
|
名前 |
文字列 |
コンボ ボックス、リストボックス(選択要素) |
|
Disabled |
ブール値 |
コンボ ボックス、リストボックス(選択要素) |
|
SelectedIndex |
数値 |
コンボ ボックス、リストボックス(選択要素) |
|
サイズ |
数値 |
コンボ ボックス、リストボックス(選択要素) |
|
ReadOnly |
ブール値 |
Textarea要素 |
|
Disabled |
ブール値 |
Textarea要素 |
|
値 |
文字列 |
Textarea要素 |
|
名前 |
文字列 |
Textarea要素 |
|
Cols |
数値 |
Textarea要素 |
|
RowSpan |
数値 |
Textarea要素 |
|
DefaultValue |
文字列 |
Textarea要素 |
|
ユーザー定義プロパティ |
XScan が終了したら、プロパティウィンドウでユーザー定義のプロパティを読み込むことができます。Tosca TBox のプロパティ名は、元のユーザー定義プロパティ名とプレフィックス attributes_ から構成されます(例:attributes _<Name>)。 |
XScan ウィンドウからロードされたユーザー定義のプロパティを、TestStepValues の 値列での確認操作に使用できます。 |
XBrowser Engineの特定の制御するタイプ
以下の制御するタイプはHTML固有のものです。デフォルトの動作は、値列でプロパティが指定されていないコントロールタイプに適用されます。
HTML固有の表現タイプ
アイコン
制御するタイプ
|
デフォルトの動作 |
HtmlDocument |
タイトル |
入力操作:なし |
|---|---|---|---|
|
|
HtmlFrame |
なし なし |
|
|
|
入力タグが存在し、属性 Type の値が checkbox の場合、コントロール CheckBox が識別されます。 |
テクニカルプロパティ |
テクニカルプロパティ
テクニカルプロパティ
説明
|
テクニカルプロパティの InnerText または Value を返します。 |
選択済み |
|---|---|
|
セッター: |
ゲッター: |
|
IsSteerable |
標準的な検証を実行します。さらに、Html要素のテクニカルプロパティ Disabled および ReadOnly の値が false であるかどうかも確認します。 例 |
|
コンボ ボックス |
SELECT タグが存在し、属性 Multiple の値が false の場合、コントロールコンボ ボックスは識別されます。属性サイズの値は、 1 より大きくすることはできません。 |
テクニカルプロパティ
<input type="checkbox" id="checkBox1" value="checkBox1Value" onclick="javascript:testControlClick(event, this, 'onclick-Event on type=checkbox & id=checkBox1'>
テクニカルプロパティ
テクニカルプロパティ
説明
|
テクニカルプロパティ Disabled を否定して返します。 |
例 |
|---|---|
|
Container |
コントロールコンテナーは、以下のいずれかのタグが存在する場合に識別されます。 |
タグ
<select name="select" id="select1" size="1" onchange="javascript:testControlClick(event, this, 'onchange-Event on type=select & id=select1');">
<option id="c0">Alpha</option>
<option id="c1">Bravo</option>
<option id="c2">Charlie</option>
<option id="c3">Delta</option>
<option id="c4">Echo</option>
</select>
DIV
SPAN
|
FIELDSET |
|---|
|
例 |
|
GenericGUI |
|
コントロール GenericGUI は、技術的でないと識別されたコントロールを表します。コントロール GenericGUI は、以下のタグのいずれかが存在する場合に識別されます。 |
タグ
<div />
タグ
タグ
A
FRAME
Q
ABBR
|
RP |
ADDRESS |
|---|---|
|
H2 |
RT |
AREA
H3
|
RUBY |
|---|
|
ARTICLE |
|
H4 |
|
S |
ASIDE
H5
<frame name="normal" src="abc.html"/>
<iframe name="inner" src="abc.html"/>
<object name="embeddeddoc" data="abc.html"/>
|
SAMP AUDIO H6 SCRIPT |
B
HEAD
SEARCH
|
HEADER |
SECTION |
|---|---|
|
BDI |
HGROUP |
SELECT
<img alt="ABC" src="abc.png"/>
BDO
HTML
SMALL
<input type="number" name="quantity" min="1" max="5">
BLOCKQUOTE
HR
|
SOURCE |
|---|
|
BODY |
|
I |
SPAN
BR
|
STRONG |
BUTTON |
|---|---|
|
IMAGE |
STYLE |
CANVAS
入力
SUB
<button id="button1" onclick="javascript:testControlClick(event, this, 'clicked on element=button');">Button</button>
CAPTION
INS
SUMMARY
CENTER
KBD
SUP
-
CITE
-
KEYGEN
-
SVG
-
CODE
LABEL
-
TABLE
-
COL
-
LEGEND
TBODY
|
COLGROUP
COMMAND LINK
TEL
DATA MAP
TEXT DATALIST
MARK |