親オブジェクトの記述に関する問題を特定する 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 テスト・オブジェクトの記述に問題があることがわかります。

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