Web 2.0 ツールキット・サポート

Web 2.0 コントロールのテストの複雑さ

Web 2.0 サイトには,クライアント側の双方向性フレームワークに基づく,機能豊富でユーザフレンドリなインタフェースがよく含まれています。これらのサイトのコントロールは,一般的に HTML とクライアント側の JavaScript コードを組み合わせて作成されており,これらによって複雑な対話型のアプリケーション・オブジェクトが作成されます。

Web 2.0 ツールキットは,多くのグループや組織によって公開されています。これらのツールキットによって,Web 2.0 コントロールを定義するオープン・ソースの JavaScript ライブラリが構成されています。開発者は,Web 2.0 コントロールを一から開発するのではなく,これらのツールキットを使用またはカスタマイズして Web 2.0 アプリケーションを構築できます。

OpenText Functional Testing Web Add-in はこれらの複雑なコントロールを認識しない代わりに,それらを構成している HTML 要素に関連付けます。これは結果的に,汎用の Web テスト・オブジェクトの低レベル・ステップとなります。このようなステップは,作成,読み取り,保守が難しい可能性があります。

先頭に戻る

OpenText Functional Testing Web 2.0 Add-in サポートを使った Web 2.0 コントロールのテスト

OpenText Functional Testing Web Add-in Extensibility を使用すると,Web 2.0 アプリケーション内のコントロールを,これらのコントロールの意図された目的と機能に最もよく合った方法で識別できる Web ベースのアドインを開発できます。

OpenText Functional Testing には,いくつかの公開 Web 2.0 ツールキットに対して組み込みの Web Add-in Extensibility サポートが用意されています。各ツールキットに対するサポートは,Web Add-in の子アドインとしてパッケージ化されています。Web 2.0 ツールキット・サポートをインストールする場合,アドイン・マネージャで該当するツールキット名を選択することで,このサポートをロードできます。Web 2.0 ツールキット・サポートのセットアップは,OpenText Functional Testing セットアップの[アドインによる機能拡張と Web 2.0 ツールキット]または OpenText Functional Testing コンピュータの<Installdir>\Installations\Web2AddinSetup\Web2AddinSetup.exe から利用できます。

各 Web 2.0 テスト・オブジェクト・クラス用にサポートされている操作は,そのテスト・オブジェクト・クラス用に開発されたユーザ定義操作と対応する(基本)Web Add-in テスト・オブジェクト・クラスから直接継承された操作を組み合わせたものです。

Web2.0 ツールキット・アドインでの作業は,通常の Web Add-in での作業とほとんど同じです。ツールキット・サポートをロードすると,チェックポイントを学習,記録,作成し,ステップを実行できます。また,これらのツールキットから提供されたコントロール上で OpenText Functional Testing のすべての標準機能を使用できます。

OpenText Functional Testing には次のツールキットのサポートが用意されています。

  • ASP .NET Ajax

  • Dojo

  • Google Web Toolkit(GWT)

  • jQuery UI

  • Salesforce Lightning

  • Siebel Open UI

  • Yahoo User Interface(Yahoo UI)

  • EXT-JS

これらのツールキット用にサポートされているテスト・オブジェクトと操作の詳細については,Object Model Reference「Web 2.0 Toolkits」を参照してください。

先頭に戻る

Web 2.0 Add-in の使用に関する考慮事項

  • jQuery ライブラリ挿入:Web 2.0 Add-in のサポートは,jQuery JavaScript ライブラリに基づいています。このため,Web 2.0 Add-in をロードすると,OpenText Functional Testing は開いている間,jQuery JavaScript ライブラリをブラウザで開かれているすべての Web ページに挿入します(jQuery ライブラリがすでにページに挿入されていないかぎり)。

    各 Web 2.0 Add-in に挿入される特定の jQuery UI ファイルは,次の場所にあるアドインのツールキットの XML ファイルに指定されています。<OpenText Functional Testing インストール>\dat\Extensibility\Web\Toolkits\<ツールキット名>\<ツールキット名>.xml

  • F1 ヘルプ・サポート:Web Add-in から継承されたテスト・オブジェクトの操作で F1 を押すと,ステップで使用されている拡張ベースのテスト・オブジェクト・クラスに対する操作でなく,その操作の継承元である Web Add-in テスト・オブジェクト・クラスに対するその操作のヘルプ情報が表示されます。

    さらに,ヘルプ・ファイルの詳細情報には,OpenText Functional Testing に用意されている XML ファイルにおけるテスト・オブジェクトの動作と操作が反映されます。これらのファイルが何らかの方法でカスタマイズまたは変更された場合,OpenText Functional Testing に用意されているヘルプ・ファイルの詳細情報は不正確になっている可能性があります。

    一般的に,Web 2.0 ツールキットの拡張ファイルの内容を変更する場合,次に示すカスタマイズのガイドラインの説明に従って,ヘルプ・ファイルも変更する必要があります。このような場合,サポートの最初の問い合わせ先としてファイルをカスタマイズした担当者または組織に問い合わせる必要があります。

  • チェックポイントおよび出力値:Web 2.0 オブジェクトへのチェックポイントと出力値の挿入は,ステップの記録時にのみサポートされています。

  • コンテナ・オブジェクト:表示または動作上 Web アプリケーション内の他のオブジェクトを含んでいると思われる一部の Web 2.0 オブジェクトは,テスト・オブジェクト階層に基づいてコンテナ・オブジェクトとしては学習されません。たとえば,YUIDialogBox テスト・オブジェクトや GWTDialogBox テスト・オブジェクトがこれに当てはまります。

  • 値:Mozilla Firefox で作業する場合,一部の Web 2.0 テスト・オブジェクト・クラスについては,選択済み項目または選択済みの値をオブジェクト・スパイでは使用できません。オブジェクト・リポジトリ内のアプリケーションからプロパティ値を更新する場合も,同じことが言えます。これは,ブラウザにフォーカスがあるときにのみ値を取得できるためです。

    回避策:ブラウザからフォーカスを削除せずに,プロパティ値を取得します。例:

    Browser("Dijit Tree Test").Page("Dijit Tree Test").DojoTree("mytree").Select "Continents;Africa"
    msgbox Browser("Dijit Tree Test").Page("Dijit Tree Test").DojoTree("mytree").
    GetROProperty("selected item")
  • オブジェクトの種類の認識:ツールキットの XML ファイルでは,該当するテスト・オブジェクト・クラスの <Identification> セクション内の <HTMLTags> 要素と <Conditions> 要素によって,OpenText Functional Testing が Web コントロールをそのクラスに割り当てる方法が定義されます。

    次の例では,コントロールに <div> HTML タグと,その値が正規表現 .*gwt-ToggleButton.* と一致する className HTML プロパティがある場合に,OpenText Functional Testing はそのコントロールを GWTToggleButton テスト・オブジェクトとして識別します(GWT Add-in のロード時)。

    <Control TestObjectClass="GWTToggleButton">
       <Settings>
       <Variable name="default_imp_file" value="JavaScript\GWTToggleButton.js"/>
       </Settings>
       <Identification>
    	 <Browser name="*">
    	   <HTMLTags>
    	   <Tag name="div"/>
    	   </HTMLTags>
    	   <Conditions type="IdentifyIfPropMatch">
    <!-- The search string in this condition is treated as a regular expression and is therefore equivalent to .*gwt-ToggleButton.*-->
    	    <Condition prop_name="className" expected_value="gwt-ToggleButton" is_reg_exp="true"/>
    	   </Conditions>
    	</Browser>

    場合によっては(<Conditions type="CallIDFuncIfPropMatch"> の場合など),識別基準を含む JavaScript 関数も,コントロールのテスト・オブジェクト・クラスへの割り当てに使用されます。

    Web 2.0 Addin に備わっているサポートは,コントロールの HTML と DOM 構造に依存していることに注意してください。Web 2.0 ベースのアプリケーションの開発者がコントロールのプロパティの値を変更した場合,ツールキットの XML ファイル(または JavaScript ファイル)の <HTMLTags> 要素と <Conditions> 要素用に定義された値では,OpenText Functional Testing がこれらのコントロールを正しく識別できない可能性があります。

    OpenText Functional Testing がアプリケーションで期待どおりにオブジェクトを識別していない場合,該当するツールキット・サポート・ファイルでこれらの値を表示または調整できます。

    ツールキットの XML ファイルは,次の場所にあります。<OpenText Functional Testing インストール>\dat\Extensibility\Web\Toolkits\<ツールキット名>\<ツールキット名>.xml

    JavaScript ファイルは,上記フォルダの下の JavaScript フォルダにあります。

    この(または任意の)Extensibility ツールキット・サポート・セット・ファイルを変更する場合,次に示すカスタマイズのガイドラインで説明するガイドラインに従ってください。

    OpenText Functional Testing がサポートされているコントロールを識別する方法の詳細,およびサポートされている操作の実装については,該当するツールキット・サポート・セットの XML ファイルと JavaScript ファイルに記載されているコメントを参照してください。

先頭に戻る

カスタマイズのガイドライン

Web Add-in Extensibility について十分に理解している場合,テスト対象の Web 2.0 ツール・アプリケーションのニーズに合うように,組み込まれている Web 2.0 サポートをカスタマイズまたはさらに拡張できます。

さらに,Extensibility Accelerator をインストールしている場合,この IDE を使用して,必要な拡張 XML ファイルを素早く簡単に設計,開発できます。このため,OpenText Functional Testing とカスタムの Web コントロールとの連携動作を可能にする,JavaScript 関数の開発に全力を挙げることができます。

Extensibility Accelerator には,OpenText Functional Testing Web 2.0 Add-in 用のプロジェクトも組み込まれています。これらのプロジェクトを使用すると,Extensibility Accelerator 機能の学習,提供されているサポート・ファイルのより簡単な追加または変更に便利です。

任意の Web Add-in Extensibility ファイルをカスタマイズまたはさらに拡張する場合,次の手順も実行する必要があります。

  • 元のファイルをコピーするか,バックアップする。

  • ツールキットのアドイン・マネージャに表示される名前と記述を変更する。この場合,アドイン・マネージャの記述(ツールキットの XML ファイルの Controls\Description 要素内)に,「<組織>提供」というテキストを挿入します。

  • カスタマイズされたテスト・オブジェクト・クラスまたは操作用に開かれる独自のヘルプ・ファイルを作成する。OpenText 提供のヘルプ・ファイルと異なる名前を使用する必要があります(テスト・オブジェクトの XML ファイルの HelpInfo 要素のファイル名を変更します)。

    注: Web 2.0 Add-in のインストール時に,選択したアドインの以前のバージョンがコンピュータにインストールされている場合,セットアップによってインストールの前に以前のファイルがバックアップ・フォルダに格納されます。以前のバージョンに対して行ったカスタマイズ内容を新しいバージョンとマージする必要があります。

これらの変更方法とサポート・ファイルのカスタマイズ方法の詳細については,『Web Add-in Extensibility 開発者ガイド』を参照してください。

先頭に戻る