親オブジェクトの記述に関する問題を特定する Exist ステートメントの作成

関連:GUI テストおよびコンポーネント

オブジェクトに対する操作を記録すると,UFT One によって,親階層全体に基づいてオブジェクトが学習されます。したがって,実行セッション中に UFT One が親オブジェクトを識別できないと,オブジェクトは識別されません。

Msgbox と Exist メソッドを使用して階層の各オブジェクトを調べれば,問題のある親オブジェクトを簡単に特定できます。

たとえば,[オブジェクトのプロパティ]ダイアログ・ボックスに表示された Link オブジェクトの記述がオブジェクト・スパイの記述と一致していることを確認したにもかかわらず,次のステートメントまたはステップに対して「Cannot Identify Object(オブジェクトを識別できません)」というメッセージが表示されたとします。

Browser("MyCompany").Page("MyCompany").Frame("Navigate").Link("Arts & Humanities").Click

問題のあるステートメントの直前に,次のステートメントを挿入します。

Msgbox Browser("MyCompany").Exist
Msgbox Browser("MyCompany").Page("MyCompany").Exist
Msgbox Browser("MyCompany").Page("MyCompany!").Frame("Navigate").Exist
Msgbox Browser("MyCompany").Page("MyCompany!").Frame("Navigate").Link("Arts & Humanities").Exist

テストまたはコンポーネントを最初から実行すると,最初の行と 2 番目の行が問題なく実行され,それぞれのメッセージ・ボックスに True と表示されます。

しかし,UFT One によって 2 番目のステップが実行されると,Frame オブジェクトが見つからず,メッセージ・ボックスには False と表示されます。このことから,Frame テスト・オブジェクトの記述に問題があることがわかります。

問題のある親オブジェクトの記述を特定できたら,オブジェクト記述に関する問題の解決方法を参考にしてその記述を修正します。