ヘッダーをスキップ

Oracle® Functional Testing OpenScriptユーザーズ・ガイド バージョン9.20 B62630-01 |
| 目次 | 索引

戻る | 次へ |

# 14 Siebel機能テスト・モジュールの使用

この章では、OpenScript Siebel機能テスト・モジュールの設定および使用手順について説明します。このテスト・モジュールは、Webブラウザのドキュメント・オブジェクト・モデル（DOM）とSiebelのテスト・オートメーション・フレームワークを通じてオブジェクトにアクセスし、Siebelアプリケーションをテストします。

## 14.1 Siebel機能テスト・モジュールについて

Siebel機能テスト・モジュールは、Siebel Webアプリケーションの機能テストをサポートします。Webテストを拡張して、Siebel機能テストの記録機能および再生機能を提供する、OpenScript Web機能テスト・モジュールの拡張モジュールです。Siebel機能テスト・モジュールは、結果ビュー、詳細ビュー、プロパティ・ビュー、コンソール/問題ビュー、詳細設定、ステップ・グループ、スクリプト・マネージャ、ワークスペース・マネージャなどのOpenScriptプラット・フォームと完全に統合されています。

### 14.1.1 Siebel機能テスト・モジュールの主な機能

Siebel機能テスト・モジュールには、次の機能があります。

- Siebel Test AutomationのCASライブラリとの統合を通じて、Siebelバージョン7.7、7.8、8.0および8.1対応の、標準のSiebelの高い双方向性（HI）と標準の双方向性（SI）のコンポーネントが記録されます。

- イベントとその属性で識別されるオブジェクトを含む記録済のSiebelアクション/コマンドを再生します（例: `GotoScreenlink pageTabs("SiebePageTabs") Accounts Screen`）。

- 統合されたフル・スクリプト・コード・ビューが提供されており、Siebel機能テスト・モジュールのスクリプトを生成できます。Siebel機能テスト・モジュールには、追加のAPIが含まれており、Siebel機能テスト・プロトコルのコード・スクリプト作成がサポートされています。

- ユーザーは、Siebel機能テスト・スクリプトへのユーザー入力をパラメータ化し、その入力内容を外部データ・ファイル（データバンク）から取り込むことができます。

- ユーザーは、テストを挿入し、再生でSiebel HIおよびSIコンテンツを検証できます。

- 詳細設定のインタフェースに、Siebel機能テスト・カテゴリ内のSiebel機能テスト・スクリプト固有の追加のオプション/設定を提供します。

- 結果ビューおよびコンソール・ビューに、Siebel機能テスト・スクリプトの再生結果を記録します。

- Siebel機能テスト・スクリプト・モジュールAPI。Siebel機能テスト・アプリケーション・プログラミング・インタフェースには、Siebelアプリケーションの機能テスト固有のJavaコード・メソッドが含まれています。

新規プロジェクト・ウィザード（「ファイル」メニューから「新規」を選択）には、Siebel機能テスト スクリプト・オプションが含まれており、OpenScriptにSiebel機能テスト・プロジェクトを作成する際に使用できます。Siebel機能テスト・スクリプト・モジュールは、Siebel Test Automationフレームワークを使用してSiebelアプリケーションを記録します。 OpenScriptはユーザー・アクションを取得して、これを非常に読みやすい一連のナビゲーションおよびアクションでOpenScriptスクリプト・ノードに記録します。

## 14.2 Siebelアプリケーションの機能テスト

OpenScriptアプリケーションによるSiebelアプリケーションの機能テストの実行に使用されるプロシージャとベスト・プラクティスの概要を次に示します。

### 14.2.1 前提条件

このドキュメントの説明は、次の前提条件に基づいています。

- テストのためのハードウェア/環境が利用可能です。

- Siebelアプリケーションは、Siebelサーバーにインストールされます。

- Oracle Application Testing Suiteアプリケーションは、テスト・マシンにインストール済です。

- テスト・マシンは、Siebelアプリケーションにアクセスできます。

- Siebelサーバーのシステム管理者レベルの権限を必要とするステップも含まれています。

- Siebel Test Automationのライセンスが必要です。

### 14.2.2 Siebelテスト環境の設定

機能テスト環境は、動作するSiebelデプロイ環境にできるだけ近付けて構成する必要があります。ただし、ハードウェア・コストの制約により制限される可能性があります。このセクションでは、基本的なテスト・システム構成に関する推奨事項を示します。ハードウェアおよびネットワークの可用性に基づいて、追加のテスト・システム構成を使用できます。

基本のn層構成には、次のシステムを含める必要があります。

- Webサーバー

- Siebelサーバー

- データベース・サーバー

- データベース記憶域

ハードウェアおよびSiebelインストール要件の詳細は、SiebelドキュメントのSiebelインストール・ガイドを参照してください。

注意:

- Siebelアプリケーションには、ActiveXコントロールを使用する高い双方向性（HI）のコンポーネント、および標準のHTMLアプリケーションを使用する標準の双方向性（SI）のアプリケーションを含めることができます。また、HIコンポーネントとSIコンポーネントを組み合せて使用することもできます。テスト方法はテストされるコンポーネントのタイプによって異なります。コンポーネント・タイプの説明は、SiebelドキュメントのSiebel eBusinessアプリケーションのドキュメントで機能テストの自動化に関する章を参照してください。

- 一般的に、SiebelアプリケーションはCPU集中型よりもメモリー集中型です。テスト・ハードウェアの決定の際に条件を考慮する必要がある場合は、CPUの速さよりもメモリーをより多く搭載することを検討する必要があります。

- Siebel Webアプリケーションは、状態情報を保持するためにCookieを使用します。

### 14.2.3 Siebel Test Automationの有効化

Siebel Test Automationフレームワークは、OpenScriptがアクセスするため、Siebelサーバーでアクティブ化されている必要があります。Siebel構成ファイルを変更するには、Siebelサーバーに対してシステム管理者レベルの権限が必要な場合があります。また、Siebel Test Automationフレームワークを使用するには、ライセンスが必要です。ライセンス要件の詳細は、アカウント代理店にお問い合せください。

#### 14.2.3.1 Siebel 7.x

Siebel 7.xでTest Automationフレームワークを有効化するには、次のようにします。

1. Siebelサーバー上のSiebelアプリケーションの.CFGファイルを開きます。

2. `[SWE]`セクションの`EnableAutomation`スイッチと`AllowAnonUsers`スイッチを次のように設定します。

       [SWE]

       EnableAutomation = TRUE

       AllowAnonUsers = TRUE

       ...

   Siebel Test Automationフレームワークへのセキュアなアクセスを設定する必要がある場合は、Siebel eBusinessアプリケーションのSiebelテストのドキュメントを参照してください。

3. Siebelサーバーを再起動します。

#### 14.2.3.2 Siebel 8.x

Siebel 8.xでTest Automationフレームワークを有効化するには、次のようにします。

1. 管理者としてSiebelにログインします。

2. サイト・マップに移動します。

3. 管理 - サーバー構成に移動します。

4. （Call Centerに対する自動化を有効化する場合）Call Center Object Managerを選択します。

5. コンポーネント・リストの下にある「パラメータ」タブをクリックします。

6. EnableAutomationパラメータとAllowAnonUsersパラメータを見つけて、両方ともTRUEに設定します。

7. Siebelサーバーを再起動します。

### 14.2.4 スクリプト作成技術

OpenScriptアプリケーションを使用して、Siebel負荷テスト・スクリプトを作成する際に使用するヒントと技術を次に示します。

- ブラウザ・キャッシングを無効化して、ブラウザ・キャッシュではなく、サーバーからページが返されていることを確認します。

- ログインからログアウトまでアクションを記録して、ページ・ナビゲーション間でパラメータが正しく渡されていることを確認します。

- レコーダにより、OpenScriptスクリプトにすべてのアクションが記録されることを確認するため、Siebel環境にアクションを徐々に記録します。可能な場合、OpenScriptスクリプト・ページがスクリプト・ツリーに追加される際に確認します。

- 最初はSiebelポップアップ・ウィンドウが正しく表示されない場合があります。ウィンドウのサイズを少し変更してポップアップ・ウィンドウのページをリフレッシュします。

- テストが必要ない場合は、Siebelポップアップ・ウィンドウにSiebelテストを挿入しないでください。

- 「ファイル」メニューの「名前を付けて保存」を使用して、OpenScriptのスクリプトを保存します。Siebelプロキシ記録済スクリプトを保存すると、OpenScriptにより、Javaエージェント・バージョンのスクリプトがワークスペースに自動作成されます。スクリプトのサイズによっては、ファイル保存操作に時間がかかる場合があります。

### 14.2.5 ブラウザ・オプションの設定

アプリケーションをテストするためのスクリプトを記録および再生する際に、ブラウザ・キャッシュではなくサーバーからページが返されていることを確認します。ブラウザ設定を確認または変更するには、次のようにします。

1. 「コントロール パネル」から「インターネット オプション」を開きます。

2. 「インターネット一時ファイル」セクションで「設定」をクリックします。

3. 「ページを表示するごとに確認する」を選択します。

4. 「インターネット一時ファイルのフォルダ」セクションで「オブジェクトの表示」をクリックします。

5. ダウンロードされたプログラム・ファイルのディレクトリに、複数バージョンのSiebelの高い双方向性のフレームワークとSiebel Test Automationプログラムがインストールされていないことを確認します。

6. 必要に応じて、重複しているバージョンまたは古いバージョンを削除します。

7. 「ダウンロードされたプログラム ファイル」ウィンドウを閉じます。

8. 「OK」をクリックして、一時設定を閉じます。

9. 「OK」をクリックして、「インターネットのプロパティ」を閉じます。

### 14.2.6 Siebelアプリケーションの起動

ブラウザでSiebelアプリケーションを起動する場合、Test Automationフレームワーク情報を生成するために、URLにSiebel Web Engine（SWE）コマンドを指定する必要があります。 `AutoOn` Siebel Web Engineコマンド（SWECmd）は次のようにURLに追加されます（SWECmdでは大文字/小文字が区別されます）。

    http://hostname/application/start.swe?SWECmd=AutoOn

`hostname`は、Siebelサーバーのマシン名またはIPアドレス、`application`は、Siebelアプリケーション名です。たとえば、`application`は、Siebelのバージョンに応じて`callcenter`または`callcenter_enu`になります。

ブラウザ・アドレスにURLおよびコマンドを入力します。次に例をあげます。

    http://siebelServer/callcenter_enu/start.swe?SWECmd=AutoOn

ページを移動すると、OpenScriptにより、OpenScriptスクリプト・ツリーにページ・ナビゲーションが記録されます。

### 14.2.7 Siebelコンポーネント・タイプの判別

Siebelアプリケーションには、高い双方向性（HI）のオブジェクト・タイプと標準の双方向性（SI）のオブジェクト・タイプが含まれています。OpenScriptのパス探査機能を使用して、アプリケーション内のオブジェクトのタイプを判別します。

1. 「パス探査」ツールバー・ボタンまたは「キャプチャ」ボタンをクリックして、「オブジェクトを選択」ダイアログ・ボックスを開きます。

2. Siebelアプリケーションのページにマウス・カーソルを移動して、コンポーネント・タイプを表示します。現在のコンポーネントはOpenScriptブラウザでハイライト表示され、要素の選択ダイアログ・ボックスにパスが表示されます。Siebel HIコンポーネント・タイプは、「パス」/「オブジェクト」フィールドに`/siebelft:cas[ClassName=`で示されます。

3. また、HIコンポーネント・タイプへのパスはオブジェクト記述子の文字列（ODS）として参照され、OpenScriptでSiebelアプリケーションと一緒に使用されるアプレットを認識するために使用されます。

   SIコンポーネント・タイプは、「パス」フィールドに`/web:window[index='0']`...で示されます。

4. [F10]を押してオブジェクト・パスを取得します。[Ctrl]を押しながら[C]キーを押してダイアログ・ボックスからパスをコピーして、[Ctrl]を押しながら[V]キーを押して貼り付けることができます。

次に、完全なオブジェクト・パスの例をあげます（明確にするため、改行を追加）。

高い双方向性（HI）のパス:

    /siebelft:cas[ClassName='SiebApplication' and

            RepositoryName='Siebel Universal Agent']

       /siebelft:cas[ClassName='SiebScreen' and

               RepositoryName='Web Call Center Home Screen']

       /siebelft:cas[ClassName='SiebView' and

               RepositoryName='Home Page View (WCC)']

       /siebelft:cas[ClassName='SiebApplet' and

               RepositoryName='Sales Message Alert List Applet Tiny']

       /siebelft:cas[ClassName='SiebList' and

               RepositoryName='SiebList']

標準の双方向性（SI）のパス:

    /web:window[index='0']

       /web:document[index='10']

       /web:span[text='Search' or index='1']

または

    /web:window[index='0']/web:document[index='10']

       /web:form[index='0' or name='SWEForm1_0']

       /web:input_text[id='s_1_1_16_0' or name='s_1_1_16_0' or index='1']

## 14.3 Siebel機能テスト・スクリプトの記録

Siebel機能テスト・モジュールでは、 Siebel Test AutomationのCASライブラリと統合されたSiebelバージョン7.7、7.8、8.0および8.1対応の、標準のSiebelの高い双方向性（HI）と標準の双方向性（SI）のコンポーネントが記録されます。これらのイベントを正常に記録するために、Siebelサーバー側で Siebel Test Automationを有効化する必要があります。レコーダにより、Siebelアプリケーションのテストを自動化するための機能および回帰テスト・スクリプトが作成されます。

Siebel HIコンポーネントはActiveXベースのコントロールで、Siebel Test AutomationではOpenScriptのオブジェクト/属性の情報が提供され、それらのコントロールとの相互作用が記録されます。HIコントロールでのアクションは、標準のOpenScriptのsiebelFTコマンドとしてテスト・スクリプトに取得されます。Siebel SIコンポーネントは標準のWebコントロールで、Web機能テストのオブジェクト属性を使用して標準のOpenScriptのWebコマンドとして取得されます。ただし、Siebel Test Automationでは追加の属性が提供され、標準のWebオブジェクト/属性を超える優位性を持つSIコントロールを識別できます。ユーザーは、後で、新規スクリプトまたはツリー・ビューかコード・ビューの記録済コマンドに対する詳細設定のグローバル設定を使用して、オブジェクト識別属性を変更できます。SiebelはFirefoxをサポートしていないため、 Internet Explorerを使用して記録を設定できます。

Siebel機能テスト・モジュールには記録ツールバー・ボタンがあり、この機能を使用してSiebelレコーダの起動およびスクリプト・ビューへのWeb/Siebelページ・アクションの取得を実行できます。記録ツール・バーには、記録の開始および停止ツールバー・ボタンがあります。また、OpenScriptレコーダを使用して記録する際に、ブラウザとOpenScript間の切替え操作を不要にするフローティング・ツールバーを開くこともできます。

Siebel機能テスト・スクリプトを記録する前に、Siebel Test AutomationフレームワークがSiebelサーバーでアクティブ化されていることを確認してください。前提条件およびSiebelテスト環境の詳細は、「Siebelアプリケーションの機能テスト」を参照してください。

### 14.3.1 Siebel機能テストの記録詳細設定の設定

Siebel機能テストの記録詳細設定を設定するには、次のようにします。

1. OpenScriptを起動します。

2. 「ビュー」メニューから「OpenScript 詳細設定」を選択します。

3. 「OpenScript」ノード配下の「記録」カテゴリを開きます。

4. 「Siebel 機能テスト」を選択します。

5. 「一般」詳細設定を設定します。

6. 「OK」をクリックします。

### 14.3.2 SI要素およびサイト・マップ・リンクのパスの追加/編集

Siebel機能テスト・モジュールは、Standard Interactivity（SI）Webオブジェクトおよびサイトマップ・リンクを記録する際、特別なオブジェクト識別子パスを使用できます。オブジェクト識別子パスは、Siebel SIコントロールやサイトマップ・リンクを識別する際に使用する要素属性を指定します。Siebel属性はRN（リポジトリ名）、OT（オブジェクト・タイプ）およびUN（一意名）です。

SI要素またはサイトマップ・リンクのパスを追加または編集するには、次のようにします。

1. 「ビュー」メニューから「OpenScript 詳細設定」を選択します。

2. 「記録」ノードを開いて、「Siebel 機能テスト」を選択します。

3. 「一般」タブをクリックします。

4. SI要素パスまたはサイトマップ・パスに対する「編集」をクリックします。

5. 「追加」をクリックするか、既存の属性を選択して「編集」をクリックします。

6. 新規の属性を追加する場合は、属性の名前を入力します。

7. パスの属性を追加または編集します。

   各属性の名前（通常はSiebelオブジェクト属性）、オペレータ、値および値タイプを指定します。属性を追加すると、OpenScriptにより、各属性間で論理的ANDを使用して、オブジェクト識別子パスが作成されます。論理的ORと論理的AND間で変更を行うには、「編集」をクリックします。

8. 「OK」をクリックします。記録詳細設定でオブジェクト識別子パスが更新されます。

### 14.3.3 Siebel機能テスト・スクリプトの記録

Siebel機能テスト・スクリプトを記録するには、次のようにします。

1. OpenScriptを起動します。

2. 「ファイル」メニューから「新規」を選択します。

3. Siebel機能テスト・スクリプトを選択します。

4. 「次へ」をクリックします。

5. リポジトリとワークスペースを選択します。

6. スクリプト名を入力します。

7. 「終了」をクリックします。新規スクリプト・ツリーがスクリプト・ビューに作成されます。

8. 「スクリプト」メニューから「記録」を選択します。記録を開始すると、ブラウザが自動的に開きます。

9. URLにAutoOn Siebel Web Engineコマンド（`?SWECmd=AutoOn`）を指定して、Siebelアプリケーションをブラウザにロードします。

10. ログインして、ページ・オブジェクト、アクションおよびナビゲーションを記録するWebサイトにアクセスします。ページ・オブジェクト、アクションおよびナビゲーションは、スクリプト・ツリーのうち、「記録セクション指定」設定で指定したノード（デフォルトは「Run」ノード）に追加されます。

11. ナビゲーション・ページを終了したら、ログアウトしてブラウザを閉じます。

12. 「スクリプト」メニューから「停止」を選択するか、OpenScriptツールバーの「停止」ボタンをクリックします。

13. スクリプトの「Run」ノードを開いて、スクリプト・ツリーのページ・オブジェクト、アクションおよびナビゲーションのノードを表示します。

    特定のテスト要件実現のために、メニュー・オプションまたはコード・ビューを使用してスクリプトをカスタマイズすることができます。

    注意: 記録中またはスクリプトの再生中に、スクリプト・エディタ・ビューまたはスクリプト・プロジェクトを閉じないでください。閉じると、OpenScriptアプリケーションで予期しない動作が発生する場合があります。

## 14.4 スクリプトの変更

スクリプトを作成あるい記録したら、テスト上の必要に応じてスクリプトに変更を加え、カスタマイズすることができます。

### 14.4.1 Siebelアクションの追加

Siebel機能テスト・モジュールには、スクリプトに追加できるSiebelオブジェクト用のアクションが含まれています。

スクリプトにSiebelアクションを追加するには、次のようにします。

1. Siebel機能テスト・スクリプトを記録します。

2. アクションを追加するスクリプト・ノードを選択します。

3. 「スクリプト」メニューを選択してから、「追加」サブメニューで「その他」を選択します。

4. 「Siebel 機能テスト」ノードを開きます。

5. アクション・ノードを開いてアクションを選択します。

6. 「OK」をクリックします。

   Siebelアクション・ダイアログ・ボックスでは、Siebel機能テスト・スクリプトの再生中に実行するアクションを定義できます。このダイアログ・ボックスは、「アプリケーション」、「ボタン」、「カリキュレータ」、「カレンダー」、「チェック ボックス」、「コミュニケーション ツールバー」、「カレンシー」、「リスト」、「メニュー」、「ページ タブ」、「PDQ」、「リッチ テキスト」、「スクリーン ビュー」、「タスク アシスタント」、「テキスト」、「テキスト エリア」、「スレッド バー」、「ツールバー」、「ツリー」、「アプレット参照」などの、ほとんどのSiebelアクションに使用されます。特定のアクションには特定の値が必要な場合があります。

   - アクション: 実行するアクションが表示されます。実行するアクションによっては、変数または属性に対して追加の値が必要な場合があります。

   - パス: アクションを実行するSiebelオブジェクトまたはWebオブジェクトのオブジェクトIDを指定します。「キャプチャ」または「選択」メニュー・オプションを使用して、オブジェクト・パスを取得または選択できます。

   - 値: オブジェクトの特定のアクションに対して、必要に応じて変数または属性を指定します。

7. オブジェクトのオブジェクト識別パスを入力します。

8. オブジェクト・アクションに使用する必要な値を入力します。

9. 「OK」をクリックします。アクション・ノードがスクリプト・ツリーに追加されます。

   Javaコード・ビューでは、`siebelFT.``object``(``objectId``).``action``()`メソッドがスクリプト・コードに追加されます。

       siebelFT.menu(100,"/siebelft:cas[@ClassName='SiebApplication' and
          @RepositoryName='Siebel Universal Agent']
        /siebelft:cas[@ClassName='SiebMenu' and
          @RepositoryName='SiebMenu']").select("File\\\\File - Logout");

   「Siebel 機能テスト」ノードには、「アプリケーション」、「カリキュレータ」、「カレンダー」、「コミュニケーション ツールバー」、「ページ タブ」、「タスク アシスタント」、「スレッド バー」、「アプレット参照」などの、オブジェクトのアクションが含まれています。

### 14.4.2 非標準のSiebelダイアログ・ボックスの処理

Siebelアプリケーションで呼び出されるダイアログ・ボックスのほとんどは、スクリプトの再生中でも適切に閉じられますが、状況によっては、カスタマイズしたSiebelアプリケーションで、一部の非標準の警告または確認ダイアログ・ボックスがスクリプトの再生中に閉じられない場合があります。

これは、Siebelの開発者がサーバーからのコールバックをブロックするような形でカスタム・ダイアログ・ボックスを実装した場合に、デフォルトのSiebelアプリケーションをカスタマイズするとき書き込まれるカスタム・ダイアログ・ボックスで発生することがあります。通常、カスタム・ダイアログ・ボックスには「Internet Explorer」のように「Siebel」（Siebelダイアログ・ボックスのデフォルトのキャプション）以外のキャプションが表示されます。デフォルトのSiebelダイアログ・ボックスは、コールバックをブロックしないように実装されています。

たとえば、Siebelトランザクションを記録するときは、ある時点でボタンをクリックすると（または他の操作を行うと）、警告や確認のダイアログ・ボックスが表示されます。「OK」をクリックして警告/確認ダイアログ・ボックスを閉じ、先に進みます。スクリプトを再生するときには、カスタムの警告/確認ダイアログ・ボックスを閉じることができないので、スクリプトが停止する場合があります。

ボタンをクリックすると、OpenScriptはSiebelサーバーからのコールバックを待ってからクリック・イベントが完了したと判断します。OpenScriptがサーバーからのコールバックを受信しない場合は、クリック・イベントが失敗したと判断し、例外をスローしてスクリプトの再生を停止します。

スクリプトをカスタマイズすると、スクリプトの再生中に非標準のSiebelダイアログ・ボックスを処理できます。そのためには、Siebelサーバーからのコールバック受信に依存せずにダイアログを閉じるカスタムJavaコードをスクリプトに追加します。

ツリー・ビューに表示されるダイアログ・ボックス・アクションのクリック・イベントは、次のクリック・イベントのようになります。

図14-1 クリック・イベントのスクリプト・ツリー・ビュー

「図14-1 クリック・イベントのスクリプト・ツリー・ビュー」の説明

Javaコード・ビューに表示されるダイアログ・ボックス・アクションのクリック・イベントは、次のクリック・イベント・コードのようになります。

    siebelFT.button(311,"/siebelft:cas[@ClassName='SiebApplication' and
           @RepositoryName='Siebel Power Communications']
        /siebelft:cas[@ClassName='SiebScreen' and @RepositoryName='Orders']
        /siebelft:cas[@ClassName='SiebView' and
           @RepositoryName='Order Entry - Line Items View (Sales)']
        /siebelft:cas[@ClassName='SiebApplet' and
           @RepositoryName='Jawwal Order Entry - Order Form Applet Dashboard (Sales)']
        /siebelft:cas[@ClassName='SiebButton' and
           @RepositoryName='BSubmit']").click();

    web.confirmDialog(312,"/web:dialog_confirm[@index='0' and
        @text='You are about to submit the order #: 1-3832871\n\n Do you want to
        continue?']").clickOk();

Javaコード・ビューで、「Submit」ボタンのクリック・イベントの前に次のコードを追加します。

    new Thread(new Runnable() {
         public void run() {
        try {
            Thread.sleep(4000);
            java.awt.Robot robot = new java.awt.Robot();
            robot.keyPress(java.awt.event.KeyEvent.VK_ENTER);
            robot.keyRelease(java.awt.event.KeyEvent.VK_ENTER);
            } catch(Exception x) {
                 }
               }
             }
         ).start();

次に、警告/確認ダイアログ・ボックスを閉じるために記録されているクリック・イベントのコードをコメント化するか、削除します。変更後のコードは、次のようになります。

    //initiate a new thread which will dismiss the Alert/Confirmation dialog box
    new Thread(new Runnable() {
         public void run() {
        try {
            Thread.sleep(4000);
            java.awt.Robot robot = new java.awt.Robot();
            robot.keyPress(java.awt.event.KeyEvent.VK_ENTER);
            robot.keyRelease(java.awt.event.KeyEvent.VK_ENTER);
            } catch(Exception x) {
                 }
               }
             }
         ).start();

    //invoke the dialog box that generates the Alert/Confirmation dialog box
    siebelFT.button(311,"/siebelft:cas[@ClassName='SiebApplication' and
           @RepositoryName='Siebel Power Communications']
        /siebelft:cas[@ClassName='SiebScreen' and @RepositoryName='Orders']
        /siebelft:cas[@ClassName='SiebView' and
           @RepositoryName='Order Entry - Line Items View (Sales)']
        /siebelft:cas[@ClassName='SiebApplet' and
           @RepositoryName='Jawwal Order Entry - Order Form Applet Dashboard (Sales)']
        /siebelft:cas[@ClassName='SiebButton' and
           @RepositoryName='BSubmit']").click();

上記のカスタム・コードは、次のように動作します。警告/確認ダイアログ・ボックスを生成するSiebelボタンをクリックする前に、新しいスレッドが開始されます。スレッドは4秒間（4000ミリ秒。任意の遅延時間に変更可能）スリープします。スレッドがスリープしている間に、Siebelボタンがクリックされ（これは主スレッドで起きるのでスレッドの相互ロックは発生しない）、警告/確認ダイアログ・ボックスが表示されます。指定した遅延時間が経過するとスレッドがスリープから復帰し、ENTERキー・イベントを呼び出します（手動で[Enter]キーを押すのと同じ）。警告/確認ダイアログ・ボックスは常に「OK」ボタンにフォーカスがあるので、スレッドの[ENTER]キー呼出しによってダイアログ・ボックスが閉じます。

### 14.4.3 Siebel機能テスト・モジュールAPI

Siebel機能テスト・モジュールには、Siebel機能テスト固有のスクリプトのAPI（アプリケーション・プログラミング・インタフェース）が含まれています。Siebel機能テスト・モジュール・レコーダを使用すると、ツリー・ビューに対応するJavaコードを作成して、Javaコード・ビューのSiebel機能テスト・コマンドをわかりやすい機能名で表示できます。Javaコード・ビューのコマンドはツリー・ビューに対応しているため、どちらのビューでもスクリプトを修正できます。

Siebel機能テストAPIを使用すると、追加のテスト機能により記録済スクリプトを拡張できます。Siebel機能テスト・モジュールに固有のコマンドは、siebelFTクラスの一部です。追加の機能テスト・メソッドはwebクラスまたはftクラス内で使用できます。また、他の使用可能なクラス（サービス）からコマンドを使用したり、スクリプトで一般的なJavaコマンドを使用したりすることもできます。

Siebelテスト・モジュールAPIの例は次のとおりです。

- アプレット

- アプリケーション

- 属性

- ボタン

- カリキュレータ

- カレンダー

- セル

- チェック ボックス

- コミュニケーション ツールバー

- カレンシー

- ページ タブ

- PDQ

- Pick List

- リッチ テキスト

- スクリーン ビュー

- タスク アシスタント

- テキスト

- テキスト エリア

- スレッド バー

- ツールバー

- ツリー

- アプレット参照

Siebel機能テスト・モジュールのツリー・ビューを使用して、多数のAPIメソッドを追加できます。Javaコード・ビューを使用してさらにメソッドを追加することができます。使用できるプロシージャ一覧のインテリジェンス・ウィンドウを開くには、[Ctrl]キーを押しながら[Space]キーを押します。その他のプログラミング情報の詳細は、OpenScriptヘルプのAPIリファレンスを参照してください。