(57)【要約】【課題】  サーバアプリケーションの動作確認作業における操作入力の手間を省き、信頼性の高いテスト結果を得ることができるようにする。【解決手段】  サーバコンピュータに対して処理を要求するための操作入力が、文書閲覧装置に対して行われると、当該操作入力の内容を判断する。次に、判断された操作入力の内容を記録したログファイルを生成する。そして、ログファイルに記録されている内容に従って、文書閲覧装置に対する操作入力を再現する。【選択図】  図４
2006031722.tif 000002
【特許請求の範囲】
【請求項１】
文書閲覧装置で閲覧可能な構造化文書を用いてサービスを提供するサーバコンピュータの動作テストを支援するテスト支援プログラムにおいて、
コンピュータに、
前記サーバコンピュータに対して処理を要求するための操作入力が、前記文書閲覧装置に対して行われると、当該操作入力の内容を判断し、
判断された前記操作入力の内容を記録したログファイルを生成し、
前記ログファイルに記録されている内容に従って、前記文書閲覧装置に対する操作入力を再現する、
処理を実行させることを特徴とするテスト支援プログラム。
【請求項２】
前記操作入力の再現の際には、操作対象となるオブジェクトを所定の時間だけ強調表示させることを特徴とする請求項１記載のテスト支援プログラム。
【請求項３】
前記操作入力の再現において、前記操作対象となるオブジェクトを強調表示させる際には、当該オブジェクトの強調表示が終了するまで、前記操作入力の再現を停止させることを特徴とする請求項２記載のテスト支援プログラム。
【請求項４】
さらに、前記コンピュータに、前記操作入力が再現されたことで前記サーバコンピュータから処理結果が返されたときに、当該処理結果と、前記操作入力により前記サーバコンピュータから返された過去の処理結果とを比較し、異なる部分を表示させることを特徴とする請求項１記載のテスト支援プログラム。
【請求項５】
さらに、前記コンピュータに、前記操作入力における前記サーバコンピュータに対する処理要求の決定操作から、前記サーバコンピュータから処理結果が返されるまでの時間を測定し、測定結果を表示させることを特徴とする請求項１記載のテスト支援プログラム。
【請求項６】
さらに、前記コンピュータに、前記操作入力を行うための操作画面を、半透明化して表示させることを特徴とする請求項１記載のテスト支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はサーバアプリケーションのテスト支援プログラムに関し、特にクライアント側からの操作入力を支援するテスト支援プログラムに関する。
【背景技術】
【０００２】
現在、社内ネットワークや広域ネットワークの普及により、ネットワークを介して様々なサービスを提供することができる。また、最近のほとんどのクライアントコンピュータには、ＷＷＷ(World Wide Web)用のＷＥＢブラウザが実装されている。そのため、ＷＥＢページ提供用のプログラムが実装されたサーバコンピュータ（以下、ＷＥＢサーバという）を使用してサービスを提供すれば、クライアント側に特別なプログラムを組み込まずにすみ、システムの導入が容易となる。そこで、ＷＥＢサーバで実行させる業務用のアプリケーションプログラム（以下、単にアプリケーションという）の開発が盛んに行われている。たとえば、javaサーブレット、ＡＳＰ(Active Server Pages)、JavaScriptを使用したシステムでは、クライアントの画面プログラムとしてＷＥＢブラウザが使用される。
【０００３】
ＷＥＢサーバ用の業務アプリケーションを開発した場合、運用開始前に、そのアプリケーションが正常に動作することを確認する必要がある。ＷＥＢサーバでは、通常ＨＴＭＬ(HyperText Markup Language)を用いて、ＧＵＩ(Graphical User Interface)による入出力環境が提供される。一般的に、ＧＵＩによる入出力を伴うアプリケーションの場合、テスト用ドライバを作成するのが困難である。そのため、人手によって動作確認が行われていた。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、人手によって動作確認を行った場合、仕様書に基づいたデータ入力を行うときに入力ミスをする可能性がある。しかも、人手によるテストでは、入力したデータが残らないため、テスト実行後の検証ができなかった。そのため、テスト結果の信頼性の確保が困難である。
【０００５】
また、画面表示用のプログラムは入力項目が多岐にわたることが多い。そのため、テストパターンが非常に大きくなる。これらの全てのパターンを人間の手作業で入力するには膨大な時間を要し、実質的に困難である。
【０００６】
さらに、動作確認の作業では同じテストを繰り返すことがあるが、人手によって同じ作業を繰り返すのは非効率的である。しかも、前回のテスト実行時と何処の結果が異なるのか又は同じなのかを目視で確認するため、常に確認漏れの可能性がある。
【０００７】
また、画面のレスポンスの測定では、担当者がストップウォッチなどで計測することが多く、また複数回測定して集計するために担当者に作業負荷がかかっていた。画面表示用のプログラムを修正して処理時間を表示することも可能だが、測定終了後に修正した個所をもとに戻す必要がある。テスト終了後にプログラムソースを変更することは、修正ミスなどによりテスト完了後の品質に不安を残すことになる。
【０００８】
このように、ＷＥＢサーバ用のアプリケーションは、基本的にクライアントに対してＨＴＭＬ形式の文書を返すため、ＷＥＢサーバのアプリケーションの動作を確認するためのテストドライバが作りにくいという問題があり、テスト作業の自動化が困難であった。
【０００９】
なお、テスト時の操作を記録し、再実行する機能を持った製品固有のＷＥＢブラウザは存在するが、これは広く一般に使用されているＷＥＢブラウザとは異なる独自のものである。そのため、テスト時の動作と実際の運用時の動作が異なる可能性がある。
【００１０】
本発明はこのような点に鑑みてなされたものであり、サーバアプリケーションの動作確認作業における操作入力の手間を軽減し、信頼性の高いテスト結果を得ることできるテスト支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明では上記課題を解決するために、文書閲覧装置で閲覧可能な構造化文書を用いてサービスを提供するサーバコンピュータの動作テストを支援するテスト支援プログラムにおいて、コンピュータに、前記サーバコンピュータに対して処理を要求するための操作入力が、前記文書閲覧装置に対して行われると、当該操作入力の内容を判断し、判断された前記操作入力の内容を記録したログファイルを生成し、前記ログファイルに記録されている内容に従って、前記文書閲覧装置に対する操作入力を再現する、処理を実行させることを特徴とするテスト支援プログラムが提供される。
【００１２】
このようなテスト支援プログラムをコンピュータで実行させると、サーバコンピュータに対して処理を要求するための操作入力が行われたとき、その操作入力の内容がログファイルに記録される。そして、ログファイルに記録された内容に従って、操作入力が再現される。
【発明の効果】
【００１３】
本発明では、操作入力の内容をログファイルとして記録し、そのログファイルの記録内容に従って操作入力を再現するようにしたため、過去のテストにおける操作内容を間違いなく再現して、同じテストを実行することができ、テスト結果の信頼性を向上させることができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態を図面を参照して説明する。
図１は、本発明の関連技術を示す図である。このテスト支援プログラムは、文書閲覧装置３で閲覧可能な構造化文書を用いてサービスを提供するサーバコンピュータ１の動作テストを支援するためのものである。サーバコンピュータ１は、たとえば、サーバアプリケーションプログラム（サーバアプリケーション）を実行することによって、他の装置に構造化文書を提供するコンピュータである。また、文書閲覧装置３は、たとえば、構造化文書閲覧用プログラム（ブラウザ）を実行することによって、構造化文書を閲覧するコンピュータである。構造化文書とは、たとえば、ＨＴＭＬ形式の文書である。
【００１５】
テスト支援プログラムは、コンピュータに、以下の処理を実行させることができる。本発明に係るテスト支援プログラムを実行するコンピュータは、テスト支援装置２として機能する。
【００１６】
テスト支援装置２は、まず、サーバコンピュータ１より構造化文書１ａを受け取ると、構造化文書１ａのデータ入力域１ｂの属性情報を取得する（ステップＳ１）。次に、テスト支援装置２は、データ入力域１ｂの属性情報に基づいて、データ入力域１ｂに入力するデータの候補データを生成する（ステップＳ２）。さらに、テスト支援装置２は、候補データの表示処理と、操作入力で選択された候補データをデータ入力域に入力させる入力処理とを、文書閲覧装置３に実行させるための処理記述を構造化文書１ａに挿入する（ステップＳ３）。そして、テスト支援装置は、処理記述が挿入された構造化文書３ａを文書閲覧装置３に引き渡す（ステップＳ４）。
【００１７】
これにより、サーバコンピュータ１から構造化文書１ａが出力されると、データ入力域の１ｂの属性情報が取得され、その属性情報に応じた候補データが生成される。そして、生成された候補データの表示処理と、操作入力で選択された候補データをデータ入力域に入力させる入力処理とを文書閲覧装置３に実行させるための処理記述が、構造化文書１ａに挿入される。処理記述が挿入された構造化文書３ａは、文書閲覧装置３に渡される。すると、文書閲覧装置３において、構造化文書３ａが表示される際に、候補データ３ｃが表示される。そして、操作入力により任意の候補データが選択されると、選択された候補データがデータ入力域３ｂに設定される。
【００１８】
このように、本発明によれば、サーバコンピュータ１の動作テストを行う際に、構造化文書１ａのデータ入力域１ｂへ入力するデータを、候補データから選択することができる。その結果、データ入力域に入力すべきデータの入力ミスを減らすことができ、サーバコンピュータ１の動作テストの際の手入力作業による作業負荷が軽減されると共に、テスト結果の信頼性を向上させることができる。これは、サーバコンピュータ１がサーバアプリケーションによって動作している場合には、サーバアプリケーションの動作テストにおけるテスト結果の信頼性が向上することを意味する。
【００１９】
しかも、この技術では、構造化文書に対して処理記述を挿入することでデータ入力の支援を行っているため、文書閲覧装置３側の機能を変更する必要がない。たとえば、文書閲覧装置３が、汎用的なＷＥＢブラウザによって機能が実現されている場合であっても、本発明を適用することができる。すなわち、独自のＷＥＢブラウザを使用せずに、運用時と同じＷＥＢブラウザを使用できる。そのため、テストの確認時と運用時で画面の表示や動作に相違が無いため、確実な品質保証が可能になる。
【００２０】
なお、図１には、関連技術として、テストデータの入力支援機能について説明したが、それ以外にも様々なテスト支援を行うことができる。たとえば、テスト操作の記録と再実行、レスポンス測定支援などである。以下、これらの機能を実装したテスト支援装置を用いて、ＷＥＢサーバで動作するサーバアプリケーションの動作確認を行う場合を例に採り、本発明の実施の形態を具体的に説明する。なお、以下の実施の形態では、テスト支援装置の処理内容を記載したプログラム（テスト支援プログラム）をクライアント側の装置（端末装置）に実装することで、端末装置をテスト支援装置として機能させる。
【００２１】
図２は、本実施の形態のシステム構成を示す図である。本実施の形態では、ＷＥＢサーバ３０と端末装置１００とがネットワーク１０を介して接続されている。ネットワーク１０は、ＬＡＮ(Local Area Network)やインターネットである。ＷＥＢサーバ３０は、開発中のサーバアプリケーションを実装したＷＥＢサーバである。端末装置１００は、ＷＥＢブラウザと、テスト支援部とが実装されている。テスト支援部とは、端末装置１００がテスト支援プログラムを実行することで、端末装置１００上で実現される処理機能である。端末装置１００は、たとえば、パーソナルコンピュータや携帯情報端末装置（ＰＤＡ：Personal Digital Assistants）である。
【００２２】
図３は、本実施の形態に用いる端末装置のハードウェア構成例を示すブロック図である。端末装置１００は、ＣＰＵ(Central Processing Unit)１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０７を介してＲＡＭ(Random Access Memory)１０２、ハードディスクドライブ（ＨＤＤ:Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、および通信インタフェース１０６が接続されている。
【００２３】
ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。ＨＤＤ１０３には、ＯＳやアプリケーションプログラムが格納される。
【００２４】
グラフィック処理装置１０４には、モニタ１１が接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ１１の画面に表示させる。入力インタフェース１０５には、キーボード１２とマウス１３とが接続されている。入力インタフェース１０５は、キーボード１２やマウス１３から送られてくる信号を、バス１０７を介してＣＰＵ１０１に送信する。
【００２５】
通信インタフェース１０６は、ネットワーク１０に接続されている。ネットワーク１０は、たとえばインターネットのような広域ネットワークである。通信インタフェース１０６は、ネットワーク１０を介して、ＷＥＢサーバ３０との間でデータの送受信を行う。
【００２６】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。なお、図３には、端末装置１００のハードウェア構成について示したが、ＷＥＢサーバ３０のハードウェア構成も同様である。
【００２７】
図４は、本実施の形態に係るシステムの機能ブロック図である。ＷＥＢサーバ３０は、サーバアプリケーション３１と通信制御部３２とを有している。
サーバアプリケーション３１は、インターネットなどのネットワーク１０を介してサービスを提供する。サーバアプリケーション３１のサービスの提供は、ＨＴＭＬ文書を利用して行われる。サーバアプリケーション３１は、サーバアプリケーションプログラムをＷＥＢサーバ３０が実行することで実現される機能である。このサーバアプリケーションプログラムが、動作確認の対象となるプログラムである。サーバアプリケーション３１は、たとえば、javaサーブレット、ＡＳＰ、JavaScriptでプログラミングされている。
【００２８】
通信制御部３２は、ＨＴＴＰ(HyperText Transfer Protocol)などの通信プロトコルにより、端末装置１００との間でネットワーク１０を介したデータ通信を行う。
端末装置１００には、表示装置１１ａと入力装置１２ａが接続されている。表示装置１１ａは、端末装置１００から出力される画像を表示する。表示装置１１ａは、具体的には、図３に示すモニタ１１である。入力装置１２ａは、テスト作業者からの操作入力を受け付け、操作内容に応じた情報を端末装置１００に入力する。入力装置１２ａは、具体的には、図３に示すキーボード１２やマウス１３が有する機能である。
【００２９】
端末装置１００は、通信制御部１１０、ＷＥＢブラウザ１２０およびテスト支援部１３０を有している。通信制御部１１０は、ＨＴＴＰなどの通信プロトコルにより、ＷＥＢサーバ３０との間でネットワーク１０を介したデータ通信を行う。
【００３０】
ＷＥＢブラウザ１２０は、ＨＴＭＬ文書の閲覧機能を有している。すなわち、ＷＥＢブラウザ１２０は、ＨＴＭＬ文書の内容を解釈し、そのＨＴＭＬ文書に従った画像を生成する。ＷＥＢブラウザ１２０が生成した画像は、表示装置１１ａの画面に表示される。また、ＷＥＢブラウザ１２０は、入力装置１２ａからの入力情報を、テスト支援部１３０を介して受け取る。そして、入力情報に基づいた処理の実行要求を、通信制御部１１０を介してサーバアプリケーション３１に送信する。実行要求の結果は、ＨＴＭＬ文書により、テスト支援部１３０を介して受け取る。
【００３１】
なお、ＷＥＢブラウザ１２０は、サーバアプリケーション３１の動作確認のために特別に作成されてものではない。すなわち、ＷＥＢブラウザ１２０は、インターネット上の様々なＷＥＢサーバ上の多種多様なＷＥＢページを閲覧するための一般的なブラウザである。
【００３２】
テスト支援部１３０は、外部属性情報記憶部１３１、画面ファイル記憶部１３２、ログファイル記憶部１３３、ユーザインタフェース１３４、データ入力支援部１３５、テスト操作記録部１３６、テスト再実行部１３７、テスト結果比較部１３８、およびレスポンス測定部１３９を有している。
【００３３】
外部属性情報記憶部１３１は、サーバアプリケーション３１から送信されるＨＴＭＬ文書に対応づけて、そのＨＴＭＬ文書内の入力フィールドの属性情報を記憶している。入力フィールドの属性情報は、サーバアプリケーション３１の動作確認を行う前に、サーバアプリケーション３１の開発者によって外部属性情報記憶部１３１に格納される。
【００３４】
画面ファイル記憶部１３２は、サーバアプリケーション３１から送られたＨＴＭＬ形式の画面ファイルを記憶する。この画面ファイルは、テスト操作記録部１３６によって、画面ファイル記憶部１３２に格納される。
【００３５】
ログファイル記憶部１３３は、テスト作業者の操作入力により指定されたテストパターンをログファイルとして記憶する。ログファイルは、テスト操作記録部１３６で生成され、ログファイル記憶部１３３に格納される。
【００３６】
ユーザインタフェース１３４は、テスト支援画面の画像情報を表示装置１１ａに対して出力し、表示装置１１ａにテスト支援画面を表示させる。また、ユーザインタフェース１３４は、キーボード１２などの入力装置１２ａから入力される入力情報に応じた処理要求を判断する。そして、ユーザインタフェース１３４は、各処理要求を、その処理を実行すべき相手に対して出力する。
【００３７】
さらに、ユーザインタフェース１３４は、ＷＥＢブラウザ１２０が表示装置１１ａに表示させた画面への操作入力が入力装置１２ａに対して行われると、ＷＥＢブラウザ１２０に対する入力情報を取得する（横取りする）。そして、ユーザインタフェース１３４は、取得した入力情報をテスト操作記録部１３６に渡す。
【００３８】
データ入力支援部１３５は、ＷＥＢブラウザ１２０が表示している画面ファイルを取得する。データ入力支援部１３５は、取得した画面ファイル内の属性情報または、外部属性情報記憶部１３１内の属性情報を参照し、画面ファイル内のデータ入力域の属性を判断する。そして、データ入力支援部１３５は、そのデータ入力域の入力候補データの入力画面を、画面ファイル内に挿入する。データ入力支援部１３５は、入力候補データの入力画面を挿入した画面ファイルをＷＥＢブラウザ１２０に渡す。
【００３９】
テスト操作記録部１３６は、ユーザインタフェース１３４から渡された入力情報によりログファイルを作成する。そして、テスト操作記録部１３６は、入力情報をＷＥＢブラウザ１２０に渡すと共に、作成したログファイルをログファイル記憶部１３３に格納する。また、テスト操作記録部１３６は、ＷＥＢブラウザ１２０からサーバアプリケーション３１に対して出された実行要求の実行結果である画面ファイルを取得し、画面ファイル記憶部１３２に格納する。
【００４０】
テスト再実行部１３７は、ユーザインタフェース１３４からのテスト再実行の処理要求に応じて、ログファイル記憶部１３３に格納されているログファイルを参照し、ＷＥＢブラウザ１２０に対する入力情報を再現する。そして、テスト再実行部１３７は、再現した入力情報をＷＥＢブラウザ１２０に渡す。
【００４１】
テスト結果比較部１３８は、ユーザインタフェース１３４からの処理要求に応答して、ＷＥＢブラウザ１２０からサーバアプリケーション３１に対して出された実行要求の実行結果を取得する。次に、テスト結果比較部１３８は、同様の実行要求に対する過去の実行結果を画面ファイル記憶部１３２から取得する。さらに、テスト結果比較部１３８は、サーバアプリケーション３１から送られた実行結果と画面ファイル記憶部１３２から取得した過去の実行結果とを比較し、相違点を検出する。そして、テスト結果比較部１３８は、サーバアプリケーション３１から送られた実行結果に対して、相違点を強調表示させる変更を行い、変更後の実行結果をＷＥＢブラウザ１２０に渡す。
【００４２】
レスポンス測定部１３９は、ユーザインタフェース１３４からの処理要求に応答して、サーバアプリケーション３１のレスポンス測定を行う。具体的には、レスポンス測定部１３９は、ＷＥＢブラウザ１２０に対する入力内容が決定されたことを検知すると共に、サーバアプリケーション３１からＷＥＢブラウザ１２０に対して実行結果が返されたことを検知する。そして、レスポンス測定部１３９は、入力内容の決定から実行結果の受信までの時間を計測し、計測結果を、ログファイル記憶部１３３内の対応するログファイルに追加格納する。
【００４３】
このような構成のシステムによって、テスト作業者は、ＷＥＢブラウザ１２０を用いたサーバアプリケーション３１の動作確認を、テスト支援部１３０による支援を受けながら行うことができる。
【００４４】
なお、テスト支援部１３０への入力は、ユーザインタフェース１３４が提供するテスト支援画面を介して行うことができる。
図５は、テスト支援画面の一例を示す図である。テスト支援画面４０には、レスポンス測定チェックボックス４０ａ、入力支援ボタン４０ｂ、自動実行ボタン４０ｃ、ステップ実行ボタン４０ｄ、ファイル所在入力域４０ｅ、ＧＯボタン４０ｆ、戻るボタン４０ｇ、進むボタン４０ｈ、中止ボタン４０ｉ、再読込ボタン４０ｊ、半透明化ボタン４０ｋ、およびログ表示画面４０ｌが設けられている。
【００４５】
レスポンス測定チェックボックス４０ａは、レスポンス測定処理を実行させるか否かを指定するためのチェックボックスである。レスポンス測定チェックボックス４０ａをマウスなどにより指定することで、チェックボックスの選択（チェックマークが表示された状態）、非選択を切り替えることができる。レスポンス測定チェックボックス４０ａが選択されていれば、ＷＥＢブラウザ１２０への入力内容が決定され、ＷＥＢブラウザ１２０からサーバアプリケーション３１に対して実行要求が出力される毎に、レスポンス測定部１３９においてレスポンス測定処理が行われる。
【００４６】
入力支援ボタン４０ｂは、入力支援処理を実行させるためのボタンである。入力支援ボタン４０ｂが押されると、ユーザインタフェース１３４からデータ入力支援部１３５に対して、入力支援の処理要求が出される。そして、データ入力支援部１３５によって入力支援処理が実行される。
【００４７】
自動実行ボタン４０ｃは、テストの再実行を自動で行わせるためのボタンである。自動による再実行とは、ログファイルに記録されている一連の処理を、テスト作業者に対する操作入力を要求せずに続けて実行することである。自動実行ボタン４０ｃが押されると、ユーザインタフェース１３４からテスト再実行部１３７に対して自動実行の処理要求が出される。すると、テスト再実行部１３７において、自動によりテストの再実行が行われる。
【００４８】
ステップ実行ボタン４０ｄは、テストの再実行を、ステップ毎に行わせるためのボタンである。ステップ毎の実行とは、ステップ実行ボタン４０ｄが押される毎に、ログファイルに記録されている１行分の処理記述に従った処理を実行することである。ステップ実行ボタン４０ｄが押されると、ユーザインタフェース１３４からテスト再実行部１３７に対してステップ実行の処理要求が出される。すると、テスト再実行部１３７において、ステップ毎のテストの再実行が行われる。
【００４９】
ファイル所在入力域４０ｅは、サーバアプリケーション３１が提供するＨＴＭＬ形式の画面ファイルの所在を入力するためのテキストボックスである。
ＧＯボタン４０ｆは、ファイル所在入力域４０ｅに入力された場所の画面ファイルの閲覧要求を出力するためのボタンである。ＧＯボタン４０ｆが押されると、ファイル所在入力域４０ｅに入力された場所の画面ファイルのページ読込の処理要求が、ユーザインタフェース１３４からＷＥＢブラウザ１２０に出される。すると、通信制御部１１０を介して、ＷＥＢブラウザ１２０からサーバアプリケーション３１に対して画面ファイルのページ読込要求が送信され、サーバアプリケーション３１からＷＥＢブラウザ１２０に対して画面ファイルが送られる。
【００５０】
戻るボタン４０ｇは、直前に読み込んだ画面ファイルを表示させるためのボタンである。戻るボタン４０ｇが押されると、現在ＷＥＢブラウザ１２０で表示されている画面ファイルの前に、ＷＥＢブラウザ１２０で表示されていた画面ファイルのページ読込要求が、ユーザインタフェース１３４からＷＥＢブラウザ１２０に出される。すると、通信制御部１１０を介して、ＷＥＢブラウザ１２０からサーバアプリケーション３１に対し、前に表示された画面ファイルのページ読込要求が送信され、サーバアプリケーション３１からＷＥＢブラウザ１２０に対して画面ファイルが送られる。
【００５１】
進むボタン４０ｈは、戻るボタン４０ｇにより前の画面ファイルを表示させた場合に、その画面ファイルの次に表示された画面ファイルを表示させるためのボタンである。進むボタン４０ｈが押されると、現在ＷＥＢブラウザ１２０で表示されている画面ファイルの次に、ＷＥＢブラウザ１２０で表示された画面ファイルのページ読込の処理要求が、ユーザインタフェース１３４からＷＥＢブラウザ１２０に対して出される。すると、通信制御部１１０を介して、ＷＥＢブラウザ１２０からサーバアプリケーション３１に対し、次に表示された画面ファイルのページ読込要求が送信され、サーバアプリケーション３１からＷＥＢブラウザ１２０に対して画面ファイルが送られる。
【００５２】
中止ボタン４０ｉは、画面ファイルの読み込みを中止させるためのボタンである。画面ファイルの読み込み中に中止ボタン４０ｉが押されると、ユーザインタフェース１３４からＷＥＢブラウザ１２０に対して、画面ファイル読込中止の処理要求が出される。すると、ＷＥＢブラウザ１２０により、画面ファイルの読み込みが中止される。
【００５３】
再読込ボタン４０ｊは、ＷＥＢブラウザ１２０に表示されている画面ファイルを再度読み込ませるためのボタンである。再読込ボタン４０ｊが押されると、ユーザインタフェース１３４からＷＥＢブラウザ１２０に対して、画面ファイルの再読込処理の処理要求が出される。すると、通信制御部１１０を介して、ＷＥＢブラウザ１２０からサーバアプリケーション３１に対し、表示中の画面ファイルのページ読込要求が送信され、サーバアプリケーション３１からＷＥＢブラウザ１２０に対して画面ファイルが送られる。
【００５４】
半透明化ボタン４０ｋは、テスト支援画面４０を半透明化させるためのボタンである。半透明化ボタン４０ｋが押されると、ユーザインタフェース１３４によって、テスト支援画面４０が半透明化される。半透明化とは、テスト支援画面４０の画像とテスト支援画面４０の裏に隠れていた画像とを合成して表示する処理である。
【００５５】
ログ表示画面４０ｌは、ＷＥＢブラウザ１２０の画面に対する操作入力内容を表示するための表示部である。ＷＥＢブラウザ１２０に対する操作入力が行われると、ユーザインタフェース１３４からテスト操作記録部１３６に入力情報が渡される。すると、テスト操作記録部１３６によってログファイルが作成、更新される。このログファイルがテスト操作記録部１３６からユーザインタフェース１３４に渡され、ログファイルの内容がログ表示画面４０ｌに表示される。
【００５６】
このようなテスト支援画面４０に対してテスト作業者が操作入力を行うことで、サーバアプリケーション３１の動作テストを容易に行うことができる。
以下、テスト支援部１３０によるテスト支援処理を、処理機能毎に説明する。
【００５７】
［データ入力支援］
まず、データ入力支援処理について説明する。データ入力支援処理では、外部属性情報記憶部１３１や表示されたＨＴＭＬ形式の画面ファイルに埋め込まれた属性情報から、データ入力域の属性（最大値／最小値など）を判断する。そして、データ入力域に対する入力候補データの一覧を生成／表示し、入力候補データから選択してデータ入力域にデータ入力できるように、画面ファイルを変更する。
【００５８】
図６は、データ入力支援処理の概念図である。図６には、サーバアプリケーション３１から送られた画面ファイルに基づく画面５０と、データ入力支援部１３５によって内容が変更された後の画面ファイルに基づく画面５０ａとが示されている。
【００５９】
図６の例では、サーバアプリケーション３１から送られた画面５０の例として、拡販支援システムのログイン画面が示されている。画面５０には、２つのデータ入力域５１，５２、ログインボタン５３および取消ボタン５４が表示されている。データ入力域５１は、ユーザＩＤを入力するためのテキストボックスである。データ入力域５２は、パスワードを入力するためのテキストボックスである。ログインボタン５３は、データ入力域５１，５２に入力されたデータによるユーザ認証処理の実行要求をサーバアプリケーション３１に対して送信するためのボタンである。取消ボタン５４は、データ入力域５１，５２に入力されたデータを消去するためのボタンである。
【００６０】
画面５０がＷＥＢブラウザ１２０によって表示されている時に、テスト支援画面４０の入力支援ボタン４０ｂが押されると、画面５０のデータ入力域５１，５２の属性情報が判断される。属性情報の判断モードには、外部定義情報参照モードと画面ページ内参照モードとがある。
【００６１】
外部定義情報参照モードの場合、データ入力支援部１３５は、外部属性情報記憶部１３１を参照し、画面５０の生成元となった画面ファイルに対応する属性情報を取得する。
画面ページ内参照モードの場合、データ入力支援部１３５は、画面５０の生成元となった画面ファイルの内の属性情報を取得する。たとえば、入力文字の最大長や、入力可能な文字の属性（数式、文字、全角（２バイトコード）、半角（１バイトコード）など）が、属性情報として取得される。
【００６２】
データ入力支援部１３５は、取得した属性情報に基づいて、入力候補データを生成する。たとえば、最大長が８文字であれば、７文字の入力候補データ（属性情報に適合するデータ）、８文字の入力候補データ（属性情報に適合するデータ）、９文字の入力候補データ（属性情報に適合しないデータ）などが生成される。そして、入力候補データの選択画面を表示させるための処理記述が画面ファイルに追加され、ＷＥＢブラウザ１２０に渡される。ＷＥＢブラウザ１２０では、内容変更後の画面５０ａが表示される。
【００６３】
画面５０ａには、入力候補選択用のプルダウンメニュー５１ａが表示されている。テスト作業者がプルダウンメニュー５１ａから入力候補データの１つを選択すると、選択された入力候補データがデータ入力域５１に設定される。図６の例では、「ＡＡＡＡＡＡＡ」という文字列の入力候補データが選択され、データ入力域５１に設定されている。
【００６４】
以下、画面ファイルの具体例について説明する。
図７は、画面ファイルの一例を示す図である。図７の画面ファイル５５は、図６の画面５０の元となるＨＴＭＬ形式のファイルである。画面ファイル５５内には、データ入力域５１，５２の属性情報５５ａ，５５ｂと、データ入力域５１，５２の定義情報５５ｃ，５５ｄが含まれている。
【００６５】
ＨＥＡＤ内（<HEAD>と</HEAD>とに囲まれた領域）に、データ入力域５１に対する属性情報５５ａが定義されている。「NAME=tx＿01」は、データ入力域５１の名称を示している。「TYPE=TEXT」は、テキストを入力できることを示している。「MAXLENGTH=8」は、最大８文字であることを示している。「KIND=ALPHANUMERIC」は英数字を入力できることを示している。「MINVALUE=0」は数値を入力する場合の最小値を示している。この例では、テキストが入力されるため無効な属性である。「MAXVALUE=0」は数値を入力する場合の最大値を示している。この例では、テキストを入力するため無効な属性である。
【００６６】
同様に、ＨＥＡＤタグ内にはデータ入力域５２に対する属性情報５５ｂが定義されている。属性情報５５ｂは、データ入力域５２の名称を示す「NAME=tx＿02」以外は、属性情報５５ａと同じである。
【００６７】
データ入力域５１の定義情報５５ｃは、ＩＮＰＵＴタグによって定義されている。「TYPE="text"」は、テキストが入力されることを示している。「NAME="tx＿01"」は、データ入力域５１の名称を示している。「size="19"」は、テキストボックスの横幅を示している。
【００６８】
同様に、データ入力域５２の定義情報５５ｄは、ＩＮＰＵＴタグによって定義されている。定義情報５５ｄは、データ入力域５２の名称を示す「NAME=tx＿02」以外は、定義情報５５ｃと同じである。
【００６９】
このような画面ファイル５５がＷＥＢブラウザ１２０に読み込まれ、テスト支援画面４０において入力支援ボタン４０ｂが押されると、データ入力域５１，５２に対応する入力候補データが生成され、入力候補データの選択画面を表示させるための処理記述が定義情報５５ｃ、５５ｄの次の行に挿入される。
【００７０】
図８は、入力候補データの選択画面を表示させるための処理記述の一例を示す図である。処理記述５６は、ＳＥＬＥＣＴタグによって定義されている。ＳＥＬＥＣＴタグでは、状態変更イベント(onChange)によって、所定の変数の値に、選択されたテキストデータが設定される。また、ＯＰＴＩＯＮタグによって、入力候補データが定義されている。
【００７１】
このような処理記述５６を画面ファイル５５の定義情報５５ｃ、５５ｄの次に挿入することにより、画面５０ａを表示させるためのＨＴＭＬ形式の画面ファイルが生成される。
以下に、入力支援処理の処理手順について説明する。
【００７２】
図９は、入力支援処理の手順を示すフローチャートである。以下、図９に示す処理をステップ番号に沿って説明する。なお、この処理は、ＷＥＢブラウザ１２０からサーバアプリケーション３１へページ読込要求が出された際に実行される。
【００７３】
［ステップＳ１１］データ入力支援部１３５は、ＷＥＢブラウザ１２０による画面ファイルの読込が完了したか否かを判断する。読込が完了した場合には、処理がステップＳ１２に進められる。読込が完了していなければステップＳ１１の処理が繰り返される。
【００７４】
［ステップＳ１２］データ入力支援部１３５は、入力支援機能を使用するか否かを判断する。入力支援機能を使用するか否かは、テスト支援画面４０の入力支援ボタン４０ｂが押されたか否かで判断される。入力支援機能を使用する場合には、処理がステップＳ１３に進められる。入力支援機能を使用しない場合には、処理が終了する。
【００７５】
［ステップＳ１３］データ入力支援部１３５は、属性情報モードを判別する。属性情報モードは、たとえば、読み込んだ画面ファイルに対応する属性情報定義が外部属性情報記憶部１３１に格納されている場合には外部定義モードとし、格納されていない場合には内部定義モードとすることができる。また、読み込んだ画面ファイル内に属性定義情報が含まれている場合には内部定義モードとし、属性定義情報が含まれない場合には外部定義モードとしてもよい。
【００７６】
外部定義モードの場合には、処理がステップＳ１４に進められる。内部定義モードの場合には、処理がステップＳ１５に進められる。
［ステップＳ１４］データ入力支援部１３５は、外部属性情報記憶部１３１を参照し、ＷＥＢブラウザ１２０が読み込んだ画面ファイルに対応する属性定義情報を取得する。その後、処理がステップＳ１６に進められる。
【００７７】
［ステップＳ１５］データ入力支援部１３５は、ＷＥＢブラウザ１２０が読み込んだ画面ファイル内を検索し、属性定義情報を取得する。
［ステップＳ１６］データ入力支援部１３５は、全てのデータ入力域に対してステップＳ１７〜Ｓ１９の処理が行われたか否かを判断する。全てのデータ入力域に対して処理が終了していれば、データ入力支援処理が終了する。未処理のデータ入力域があれば、処理がステップＳ１７に進められる。
【００７８】
［ステップＳ１７］データ入力支援部１３５は、処理対象のデータ入力域の属性に基づいて、入力候補データを生成する。
［ステップＳ１８］データ入力支援部１３５は、生成した入力候補データの表示と、選択された入力候補データのデータ入力域への設定とのための処理記述を生成する。
【００７９】
［ステップＳ１９］データ入力支援部１３５は、生成した処理記述に従った入力候補データが、処理対象のデータ入力域の近くに表示されるように、画面ファイル内に処理記述を埋め込む。その後、処理がステップＳ１６に進められる。
【００８０】
このようにして、サーバアプリケーション３１の動作テストの際のデータ入力域の入力候補データを表示させ、選択された入力候補データをデータ入力域に設定することができる。たとえば、各入力項目の属性（桁数，文字種など）をテストする際に、属性に適合した入力候補データと不適合の入力候補データとを含む、テストに最適なデータが生成され、そのリストが表示される。そのため、テスト作業者は、テキスト文などの文字入力を行う必要がなくなり、入力ミスの発生を防止することができる。しかも、テスト担当者ごとにテストデータが異なることを避けられるため、テスト品質の均質化が期待できる。また、入力作業自体の負荷も軽減される。
【００８１】
また、属性情報に適合する入力候補データばかりでなく、適合しない入力候補データも生成するため、意図的に間違ったデータを入力させて、エラーが発生することを確認するような動作確認も容易に行うことができる。
【００８２】
［テスト操作の記録］
次に、テスト操作の記録処理について説明する。テスト操作の記録処理では、サーバアプリケーション３１に対して処理を要求するための操作入力が、文書閲覧装置３に対して行われると、操作入力の内容を判断し、判断された操作入力の内容を記録したログファイルを生成する。操作入力の判断とは、データの入力場所の判断や、押下されたボタンの判断である。また、テスト操作の記録では、操作入力内容の記憶に加え、テストのために取得した画面ファイルを記録する。
【００８３】
図１０は、操作記録処理の概念図である。操作記録処理では、ＷＥＢブラウザ１２０に画面６０が表示されると、画面６０の元となる画面ファイルが、テスト操作記録部１３６によって、画面ファイル記憶部１３２に格納される。また、画面６０に対して行われた操作入力が、テスト操作記録部１３６によって取得され、ログファイル記憶部１３３に格納される。
【００８４】
図１０の例では、顧客から問い合わせ情報を検索するための画面６０が示されている。画面６０には、データ入力域６１〜６６、データ選択欄６７，６８および決定ボタン６９が設けられている。
【００８５】
データ入力域６１は、問い合わせ管理番号を入力するためのテキストボックスである。データ入力域６２は、同じ問い合わせ管理番号の複数の問い合わせに対して設定された整理番号を入力するためのテキストボックスである。データ入力域６３は、受付日時による検索における検索対象期間の開始日を入力するためのテキストボックスである。データ入力域６４は、受付日時による検索における検索対象期間の終了日を入力するためのテキストボックスである。データ入力域６５は、完了日時による検索における検索対象期間の開始日を入力するためのテキストボックスである。データ入力域６６は、完了日時による検索における検索対象期間の終了日を入力するためのテキストボックスである。データ選択欄６７は、受付区分を指定するための選択欄である。データ選択欄６８は、問い合わせ対象の製品名を選択するための選択欄である。決定ボタン６９は、検索実行の処理要求をサーバアプリケーション３１に出力するためのボタンである。
【００８６】
図１１は、操作内容が記録されたログファイルの一例を示す図である。このログファイル７０は、ログインから図１０に示す画面６０に対する操作入力までの操作内容を記録したものである。
【００８７】
ログファイル７０では、画面ファイルを取得するための操作入力が行われた場合には、「ＯＰＥＮ」で始まる操作記述が登録される。画面ファイルの取得が完了した場合には、「DocumentComplete」で始まる関連づけ記述（ＷＥＢサーバ３０や画面ファイル記憶部１３２内の関連する画面ファイルの所在やファイル名の記述）が登録される。データ入力域にデータが入力された場合には、「ＦＯＲＭ」で始まる操作記述が登録される。ボタンやリンクが押された場合には、「ＥＶＥＮＴ」で始まる操作記述が登録される。
【００８８】
たとえば、データ入力域６３への入力操作が、操作記述７１として記録されている。データ入力域６４への入力操作が、操作記述７２として記録されている。データ選択欄６７での選択操作が、操作記述７３として記録されている。データ選択欄６８での選択操作が、操作記述７４として記録されている。決定ボタン６９の押下操作が、操作記述７５として記録されている。
【００８９】
また、画面６０に基づいて出力された検索要求に応じてサーバアプリケーション３１から検索結果画面の画面ファイルが返されると、その画面ファイルの所在とファイル名を示すＵＲＬ(http://hogehoge.aaa.co.jp/sim＿servlets//ttd01)と、画面ファイル記憶部１３２に格納した画面ファイルのフレーム名(main)とファイル名(P9.html)とが、関連づけ記述７６として記録されている。
【００９０】
画面６０において検索条件が入力され、決定ボタン６９が押下されると、ＷＥＢブラウザ１２０からサーバアプリケーション３１へ検索処理の実行要求が出され、サーバアプリケーション３１において検索処理が行われる。そして、検索処理の実行結果を表すＨＴＭＬ文書がサーバアプリケーション３１からＷＥＢブラウザ１２０に返される。これにより、検索条件入力用の画面６０は、検索結果の表示画面に切り替えられる。
【００９１】
以下に、テスト操作記録処理の処理手順について説明する。
図１２は、テスト操作記録処理の手順を示すフローチャートである。以下、図１２に示す処理をステップ番号に沿って説明する。
【００９２】
［ステップＳ２１］テスト操作記録部１３６は、ＷＥＢブラウザ１２０による画面ファイルの読み込みが完了したか否かを判断する。画面ファイルの読み込みが完了していれば、処理がステップＳ２２に進められる。読込が完了していないか、読み込んだ画面ファイルが既に記憶されていれば処理がステップＳ２４に進められる。
【００９３】
［ステップＳ２２］テスト操作記録部１３６は、読み込んだ画面ファイルを画面ファイル記憶部１３２に書き出す。
［ステップＳ２３］テスト操作記録部１３６は、ログファイルに、保存した画面ファイルのファイル名を記録する。
【００９４】
［ステップＳ２４］テスト操作記録部１３６は、画面ファイル上でボタンやリンク（他の画面ファイルにリンクされた文字や画像）が押下されたか否かを判断する。ボタンやリンクが押下された場合には、処理がステップＳ２５に進められる。ボタンやリンクが押下されていない場合には、処理がステップＳ２７に進められる。
【００９５】
［ステップＳ２５］テスト操作記録部１３６は、フォーム内（テキストボックスなどのデータ入力域に入力されたデータや、データ選択欄で選択されたデータ）に入力された情報を判断し、その情報を示す操作記述をログファイルに書き出す。
【００９６】
［ステップＳ２６］テスト操作記録部１３６は、押下されたオブジェクト（ボタンまたはリンク）を判断し、ＷＥＢブラウザ１２０に対するボタンやリンクの押下処理を実行する。すなわち、入力装置１２ａからＷＥＢブラウザ１２０に対して入力されるべき操作入力を、テスト操作記録部１３６が横取りしているため、ログファイルの更新後、テスト操作記録部１３６が押下処理を実行する。これにより、操作入力の内容がＷＥＢブラウザ１２０に伝えられる。
【００９７】
［ステップＳ２７］テスト操作記録部１３６は、処理が終了か否かを判断する。処理が終了で有ればテスト操作記録処理を終了し、そうでなければ処理がステップＳ２１に進められる。
【００９８】
このようにして、テストの操作内容を記録しておくことができる。従来は画面のテストデータの記録ができず、テスト後の第三者による検証ができなかったが、上記のようなテスト操作記録処理を行うことで、動作確認の際に行った操作入力の内容を、後で確認することができる。
【００９９】
［テストの再実行処理］
次に、テストの再実行処理について説明する。再実行処理では、ログファイルとして記録された情報に基づいて入力データを順次自動的に画面ファイルに入力して、自動的にテストを実行する。
【０１００】
また、テストの再実行処理では、操作されるボタンやリンクを視覚的に明示する処理を行うことができる。また、再実行時の実行結果と、過去の実行結果とを比較し、相違点を抽出することもできる。
【０１０１】
なお、テストの再実行処理には、自動実行とステップ実行とがある。自動実行ボタン４０ｃが押された場合には、テスト再実行部１３７において自動実行による再実行が行われる。自動実行処理では、ログファイルの記述に沿って連続的にテストの再実行が行われる。ステップ実行ボタン４０ｄが押された場合には、テスト再実行部１３７においてステップ実行によるテストの再実行処理が行われる。ステップ実行では、ステップ実行ボタン４０ｄが押される毎に、ログの１つのイベント単位（ボタン／リンクの押下など）に処理が実行される。
【０１０２】
図１３は、テスト再実行処理の概念図である。テスト再実行部１３７は、テスト操作記録処理で記録されたログファイル７０をログファイル記憶部１３３から読み取り、記録内容を再現する。「ＦＯＲＭ」で始まる行であれば、データの設定を行う。「ＥＶＥＮＴ」で始まる行であれば、ボタンやリンクの押下処理を行う。
【０１０３】
たとえば、テスト再実行部１３７は、まず、ログファイル７０を読み込む。そして、自動実行ボタン４０ｃまたはステップ実行ボタン４０ｄが押下されると、ログファイル７０の記述に基づいて、ＷＥＢブラウザ１２０に対して画面６０の元となる画面ファイルをサーバアプリケーション３１から読み込ませ、画面６０を表示させる。そして、テスト再実行部１３７は、操作記述７１に従ってデータ入力域６３にデータを入力し、操作記述７２に従ってデータ入力域６４にデータを入力し、操作記述７３に従ってデータ選択欄６７からデータを選択し、操作記述７４に従ってデータ選択欄６８からデータを選択する。最後に、テスト再実行部１３７は、操作記述７５に従って、決定ボタン６９の押下操作を行う。
【０１０４】
テスト再実行のボタンやリンクの押下処理においては、処理対象の視覚的な明示が行うことができる。すなわち、テスト再実行部１３７は、ログファイルに基づいて再実行を行う際に、ボタンやリンクを押下する前に、操作対象のボタンやリンクのオブジェクトを視覚的に強調表示する。これにより、利用者は、操作対象のオブジェクトを確認することができる。
【０１０５】
図１４は、操作対象の視覚的明示処理を施した画面の一例を示す図である。図１４の例では、決定ボタン６９が押下される際に、テスト再実行部１３７により、決定ボタン６９を指し示す矢印アイコン８１が表示される。矢印アイコン８１は一定時間表示される。矢印アイコン８１が表示されている間は、決定ボタン６９の押下処理の進行は停止状態にあり、矢印アイコン８１が消えると、再実行処理が進行し、決定ボタン６９が押下される。
【０１０６】
これにより、決定ボタン６９が押される前に、矢印アイコン８１によって、テスト作業者に対して、操作対象が決定ボタン６９であるということが、視覚的に強調表示される。
なお、対象のボタンやリンクがＷＥＢブラウザ１２０の画面６０からはみ出しており、画面６０をスクロールさせる必要があるときは、テスト再実行部１３７がＷＥＢブラウザ１２０に対して画面６０のスクロールを指示する。
【０１０７】
また、矢印アイコン８１の表示に変えて、対象のボタンやリンクを適当な間、点滅（ブリンク）表示させてもよい。
さらに、操作対象の視覚的明示を行うかどうかは、モード設定によってテスト作業者が任意に設定することができる。画面を見て操作対象を確認しながらテストの再実行を行う場合には、操作対象の視覚的明示を行うことで、操作内容を逐次確認することができる。また、操作内容は把握しているためテストの再実行結果のみを取得したい場合には、操作対象の視覚的明示を行わないことで、途中で停止させずに迅速にテストを再実行させることができる。
【０１０８】
次に、図１５〜図１７を用いて、比較処理について説明する。比較処理では、前回の実行結果記録から再実行する場合に、前回の結果と比較して異なる場合は、異なる部分を指摘して、利用者に警告表示する。
【０１０９】
図１５は、操作入力によるテスト時の実行結果の一例を示す図である。図１５の例は、２０００年１月から２０００年４月までの売上状況照会処理の実行要求をサーバアプリケーション３１に対して送信した場合に、サーバアプリケーション３１から返された実行結果である。サーバアプリケーション３１からは、売上状況表示のＨＴＭＬ形式の画面ファイル９１がＷＥＢブラウザ１２０に送られる。ＷＥＢブラウザ１２０は、画面ファイル９１に基づいて、売上状況を示す画面９２を表示装置１１ａに表示させる。
【０１１０】
画面９２が表示されると、表示ファイル９１と同じ内容のＨＴＭＬ形式の画面ファイル９１ｂが、テスト操作記録部１３６によって、画面ファイル記憶部１３２に格納される。画面ファイル記憶部１３２に格納される際には、画面ファイル９１ｂに対して新たなファイル名「P9.html」が付与される。
【０１１１】
画面９２の表示が終了すると、テスト操作記録部１３６によって、ログファイル９３がログファイル記憶部１３３に格納される。また、このとき、ログファイル９３内には、関連づけ記述９３ａとして、画面ファイル９１のＵＲＬと、保存された画面ファイル９１ｂのフレーム名「main」とファイル名「P9.html」とが登録される。
【０１１２】
この実行結果では、たとえば、画面ファイル９１には、製品名「PrintTool」の２０００年２月の値９１ａとして「１４０」が設定されている。従って、画面９２においても、製品名「PrintTool」の２０００年２月の欄９２ａには、「１４０」が表示されている。
【０１１３】
図１６は、テスト再実行時の実行結果の一例を示す図である。図１６の例は、図１５に示した実行結果を受信した際に生成されたログファイル９３に基づいて再実行が行われときに、サーバアプリケーション３１から返された実行結果を示している。サーバアプリケーション３１からは、売上状況表示のＨＴＭＬ形式の画面ファイル９４がＷＥＢブラウザ１２０に送られる。ＷＥＢブラウザ１２０は、画面ファイル９４に基づいて、売上状況を示す画面９５を表示装置１１ａに表示させる。
【０１１４】
この実行結果では、たとえば、画面ファイル９４には、製品名「PrintTool」の２０００年２月の値９４ａとして「１５０」が設定されている。従って、画面９５においても、製品名「PrintTool」の２０００年２月の欄９５ａには、「１５０」が表示されている。
【０１１５】
このとき、テスト結果比較部１３８によって、画面ファイル記憶部１３２に格納されていた画面ファイル９１ｂの内容と図１６に示した画面ファイル９４の内容とが比較される。なお、画面ファイル９１の所在は、ログファイル９３に記録されている関連づけ記述９３ａによって判断することができる。すなわち、ＷＥＢブラウザ１２０で画面が切り替わって表示され、かつログファイル９３の関連づけ記述９３ａとして記録されたＵＲＬおよびフレーム名と、表示されている画面のＵＲＬおよびフレーム名が一致すれば、保存されている画面ファイル９１ｂと表示されている画面ファイル９４とが比較される。
【０１１６】
画面ファイル９１ｂと画面ファイル９４との比較の結果、製品名「PrintTool」の２０００年２月の値が「１４０」から「１５０」に変わっていると判断される。すると、テスト結果比較部１３８は、相異する内容を画面表示する。たとえば、テスト結果比較部１３８は、画面ファイル９４の内容を変更し、変更箇所を強調表示させると共に、マウスカーソルを当てた際に前回のデータが表示（ツールチップ表示）させるようにする。
【０１１７】
図１７は、テスト結果の比較処理の概念図である。画面ファイル９１ｂと画面ファイル９４とが、テスト結果比較部１３８によって比較されると、画面ファイル９４を元にして、相異点を強調した画面ファイル９６が生成される。そして、画面ファイル９６がＷＥＢブラウザ１２０に渡され、画面９７が表示装置１１ａに表示される。
【０１１８】
図１７の例では、画面ファイル９４の<TD>150</TD>という記載が、<TD align="right"><B STYLE="background:red" TITLE="前回値=140">150</B></TD>という記載９６ａに変更されている。これにより、画面９７の前回と内容が異なる欄９７ａの背景が赤で表示される。他の欄の背景が白であれば、欄９７ａが強調表示されることになる。また、欄９７ａにマウスカーソル９８当てると、ツールチップ表示部９７ｂが現れ、ツールチップ表示部９７ｂ内に前回の値が表示される。
【０１１９】
以下に、テストの再実行処理の手順について説明する。
図１８は、テスト再実行処理の手順を示すフローチャートの前半である。以下、図１８に示す処理をステップ番号に沿って説明する。
【０１２０】
［ステップＳ３１］テスト再実行部１３７は、ログファイル記憶部１３３よりログファイルを読み込む。
［ステップＳ３２］テスト再実行部１３７は、読み込んだログファイルの最初に記述されている画面ファイルを、ＷＥＢブラウザ１２０に開かせる。ＷＥＢブラウザ１２０は、サーバアプリケーション３１から該当する画面ファイルを取得し、画面ファイルに従った画面を表示する。
【０１２１】
［ステップＳ３３］テスト再実行部１３７は、画面ファイルの読み込みが完了したか否かを判断する。画面ファイルの読み込みが完了した場合には、処理がステップＳ３４に進められる。画面ファイルの読み込みが完了していない場合には、ステップＳ３３の処理が繰り返される。
【０１２２】
［ステップＳ３４］テスト再実行部１３７は、ログファイル中の表示する画面ファイルに関する記述以降の記述を順次、１行ずつ読み込む。
［ステップＳ３５］テスト結果比較部１３８は、ログファイル中の関連づけ記述に基づいて、前にテストを実行した際に保存した画面ファイルを取得し、表示された画面ファイルと、保存されていた画面ファイルとの内容を比較する。
【０１２３】
［ステップＳ３６］テスト結果比較部１３８は、比較された２つの画面ファイルの内容に相異箇所があったか否かを判断する。相異箇所があった場合には、処理がステップＳ３７に進められる。相異箇所が無かった場合には、処理が図１９に示すステップＳ３８に進められる。
【０１２４】
［ステップＳ３７］テスト結果比較部１３８は、画面ファイルの相異箇所を示す記述を、ＷＥＢブラウザ１２０に読み込んだ画面ファイルに挿入する。
図１９は、テスト再実行処理の手順を示すフローチャートの後半である。以下、図１９に示す処理をステップ番号に沿って説明する。
【０１２５】
［ステップＳ３８］テスト再実行部１３７は、ログファイル内の読み込んだ行の記述が、フォーム内要素の情報か否かが判断される。フォーム内要素の情報であれば処理がステップＳ３９に進められる。フォーム内要素の情報でなければ、処理がステップＳ４０に進められる。
【０１２６】
［ステップＳ３９］テスト再実行部１３７は、画面ファイル上のデータ入力域に、ログファイルより読み込んだ記述で示されている情報を設定する。
［ステップＳ４０］テスト再実行部１３７は、ログファイル内の読み込んだ行の記述が、ボタンやリンクの押下情報か否かを判断する。押下情報であれば処理がステップＳ４１に進められる。押下情報でなければ処理がステップＳ４５に進められる。
【０１２７】
［ステップＳ４１］テスト再実行部１３７は、ボタンやリンクの押下処理の視覚的表示を行うか否かを判断する。視覚的表示をするか否かは、テスト作業者によって、予め設定されている。視覚的表示を行う場合には、処理がステップＳ４２に進められる。視覚的表示を行わない場合には、処理がステップＳ４４に進められる。
【０１２８】
［ステップＳ４２］テスト再実行部１３７は、ボタンやリンクの押下処理の視覚的表示を行う。視覚的表示とは、操作対象のオブジェクトを指し示す矢印アイコンを表示したり、操作対象のオブジェクトを点滅表示させたりする処理である。
【０１２９】
［ステップＳ４３］テスト再実行部１３７は、所定の時間だけ待機する。所定の時間が経過したら、処理がステップＳ４４に進められる。
［ステップＳ４４］テスト再実行部１３７は、表示されている画面上のボタンやリンクの押下処理を、ＷＥＢブラウザ１２０に指示する。
【０１３０】
［ステップＳ４５］テスト再実行部１３７は、ログファイルの読み込みが完了したか否かを判断する。ログファイル内に、まだ読み込んでいない記述がある場合には、処理が図１８のステップＳ３３に進められる。ログファイル内の全ての記述が読み込まれた場合には、テスト再実行処理が終了する。
【０１３１】
このように、ログファイルに従ってテスト操作を再実行することにより、一度行ったテストは対象システムのバージョンアップや仕様変更などによる再テストが自動的に行える。そのため、テスト作業が効率化できる。しかも、再実行時に出力画面の検証を機械的に比較するため、確認ミスを防ぐことができる。
【０１３２】
［レスポンス測定支援］
次に、レスポンス測定支援処理について説明する。レスポンス測定支援処理では、他の画面へ移行させるための決定操作（ボタンやリンクの押下など）が行われてから（サーバアプリケーション３１に対して処理の実行要求が出されてからでもよい）、実行結果が返されるまでの時間（画面上でのボタンの押下イベントから実行結果の画面ファイルより込み完了イベントまでの時間）が計測され、表示される。計測された時間は、ログファイルに記録される。
【０１３３】
図２０は、レスポンス測定支援処理の概念図である。図２０では、キーワード検索を行ったときのレスポンスが測定されている。テスト支援画面４０において、レスポンス測定チェックボックス４０ａがチェックされていれば、サーバアプリケーション３１に対して、処理の実行要求が出される毎に、レスポンス測定部１３９によりレスポンス測定が行われる。
【０１３４】
たとえば、検索画面２１０の検索キー入力用のデータ入力域２１１に「Ｔおじさん」と入力され、検索ボタン２１２が押されると、ＷＥＢブラウザ１２０からサーバアプリケーション３１に対して、検索要求が出される。レスポンス測定部１３９は、検索ボタン２１２の操作入力処理を検出して、時間の計時を開始する。その後、サーバアプリケーション３１において検索が行われ、検索結果がＷＥＢブラウザ１２０に返される。レスポンス測定部１３９は、ＷＥＢブラウザ１２０による検索結果の読み込み完了を検出し、時間の計時を終了する。
【０１３５】
レスポンス測定部１３９は、計測したレスポンス時間４１を、テスト支援画面４０に表示させると共に、ログファイル２３０に、レスポンス時間を示す時間情報２３１を登録する。
【０１３６】
以下に、レスポンス測定処理の手順について説明する。
図２１は、レスポンス測定処理の手順を示すフローチャートである。以下、図２１に示す処理をステップ番号に沿って説明する。なお、レスポンス測定処理は、テスト支援画面４０においてレスポンス測定チェックボックス４０ａがチェックされている間実行される処理である。
【０１３７】
［ステップＳ５１］レスポンス測定部１３９は、画面ファイルが更新されるか否かを判断する。画面ファイルが更新される場合とは、ボタンやリンクの押下により別の画面ファイルの取得を伴う要求がＷＥＢブラウザ１２０からサーバアプリケーション３１に送信される場合である。画面ファイルが更新される場合には、処理がステップＳ５２に進められる。画面ファイルが更新されない場合には、ステップＳ５１の処理が繰り返される。
【０１３８】
［ステップＳ５２］レスポンス測定部１３９は、現在時刻を取得する。
［ステップＳ５３］レスポンス測定部１３９は、ＷＥＢブラウザ１２０によるサーバアプリケーション３１からの応答である画面ファイル読み込みが完了したか否かを判断する。画面ファイルの読み込みが完了した場合には処理がステップＳ５４に進められる。画面ファイルの読み込みが完了していない場合には、ステップＳ５３の処理が繰り返される。
【０１３９】
［ステップＳ５４］レスポンス測定部１３９は、ステップＳ５２で取得した時間から画面ファイルの読み込み完了までのレスポンス時間を計算する。そして、得られたレスポンス時間を、テスト支援画面４０に表示させると共に、レスポンス時間の時間情報をログファイルに設定する。
【０１４０】
［ステップＳ５５］レスポンス測定部１３９は、レスポンス測定支援モード終了か否かが判断される。レスポンス測定支援モードは、レスポンス測定チェックボックス４０ａのチェックが外されることにより終了する。レスポンス測定支援モードが終了していなければ処理がステップＳ５１に進められる。レスポンス測定支援モードが終了していれば、レスポンス測定処理が終了する。
【０１４１】
このようにして、レスポンス時間を自動的に計測し、記録することができる。従来レスポンスの測定は担当者がストップウォッチを使用して計測していたが、レスポンス測定支援機能により自動化されるために負荷が軽減される。しかも、機械的に計測できるため、正確な計測が可能となる。
【０１４２】
［テスト支援画面の半透明化処理」
次に、テスト支援画面の半透明化処理について説明する。テストの再実行時などにテスト支援画面とＷＥＢブラウザ画面とが重なると、ＷＥＢブラウザ画面が見にくくなる。これを避けるため、本実施の形態では、テスト支援画面を半透明化することにより、ブラウザ画面の表示内容の確認を容易にし、かつテスト支援部に対する操作を行えるようにする。
【０１４３】
図２２は、テスト支援画面の半透明化前の画面の例を示す図である。図２２の例では、ＷＥＢブラウザ画面２４１の上に重ねてテスト支援画面４０が表示されている。表示装置１１ａのスクリーンの広さの制約で、ＷＥＢブラウザ画面２４１とテスト支援画面４０とを並べて表示できない場合、テスト作業者は、半透明化ボタン４０ｋを押下する。すると、テスト支援画面４０が半透明になる。
【０１４４】
図２３は、テスト支援画面の半透明化後の画面の例を示す図である。半透明化されたテスト支援画面４２には、半透明化ボタン４０ｋに代えて、実体化ボタン４２ａ、透明度減少ボタン４２ｂ、および透明度増加ボタン４２ｃが設けられている。
【０１４５】
実体化ボタン４２ａは、テスト支援画面４２を実体化（不透明化）するためのボタンである。実体化ボタン４２ａが押されると、半透明化されたテスト支援画面４２は、透明化前のテスト支援画面４０に切り替えられる。
【０１４６】
透明度減少ボタン４２ｂは、テスト支援画面４２の透明度を減少させるためのボタンである。透明度減少ボタン４２ｂが押されると、テスト支援画面４２の透明度が減少する。透明度が減少するとは、テスト支援画面４２を表す画像の輝度が高くなり、逆に、テスト支援画面４２によって隠されている画像の輝度が低くなることである。
【０１４７】
透明度増加ボタン４２ｃは、テスト支援画面４２の透明度を増加させるためのボタンである。透明度増加ボタン４２ｃが押されると、テスト支援画面４２の透明度が増加する。透明度が増加するとは、テスト支援画面４２を表す画像の輝度が低くなり、逆に、テスト支援画面４２によって隠されている画像の輝度が高くなることである。
【０１４８】
図２４は、テスト支援画面半透明化処理による画面遷移の一例を示す図である。図２４（Ａ）は、半透明化前の画像を示しており、図２４（Ｂ）は半透明化後の画像を示している。
【０１４９】
半透明化前の画像２５０は、ＷＥＢブラウザ画面２５１の上にテスト支援画面４０が重ねて表示されており、ＷＥＢブラウザ画面２５１の左下を視認することができない。
一方、半透明化後の画像２５０ａは、ＷＥＢブラウザ画面２５１の上に、半透明化されたテスト支援画面４２が重ねて表示されている。テスト支援画面４２が半透明であることにより、ＷＥＢブラウザ画面２５１の左下も視認することができる。
【０１５０】
次に、テスト支援画面の半透明化処理の手順について説明する。
図２５は、テスト支援画面の半透明化処理の手順を示すフローチャートである。以下、図２５に示す処理をステップ番号に沿って説明する。なお、以下の処理は、半透明化ボタン４０ｋ、実体化ボタン４２ａ、透明度減少ボタン４２ｂ、および透明度増加ボタン４２ｃのいずれかが押されることで実行される処理である。
【０１５１】
［ステップＳ６１］ユーザインタフェース１３４は、テスト支援画面を既に半透明化しているか否かを判断する。既に半透明化していれば、処理がステップＳ６５に進められる。半透明化していなければ処理がステップＳ６２に進められる。
【０１５２】
［ステップＳ６２］ユーザインタフェース１３４は、半透明化ボタン４０ｋの名前を「半透明化」から「実体化」に変更し、半透明化ボタン４０ｋであったボタンを実体化ボタン４２ａとする。
【０１５３】
［ステップＳ６３］ユーザインタフェース１３４は、透明度調整ボタン（透明度減少ボタン４２ｂ、透明度増加ボタン４２ｃ）を、テスト支援画面内に表示する。
［ステップＳ６４］ユーザインタフェース１３４は、テスト支援画面のウィンドウ透過率を５０％に設定する。これにより、テスト支援画面が半透明化される。その後、半透明化の処理が終了する。
【０１５４】
［ステップＳ６５］ユーザインタフェース１３４は、既に半透明化されている場合には、押されたボタンが何で有るのかを判断する。実体化ボタン４２ａが押された場合には、処理がステップＳ６６に進められる。透過率減少ボタン４２ｂが押された場合には、処理がステップＳ６８に進められる。透過率増加ボタン４２ｃが押された場合には、処理がステップＳ６９に進められる。
【０１５５】
［ステップＳ６６］ユーザインタフェース１３４は、実体化ボタン４２ａの名前を「実体化」から「半透明化」に変更し、実体化ボタン４２ａであったボタンを半透明化ボタン４０ｋとする。
【０１５６】
［ステップＳ６７］ユーザインタフェース１３４は、テスト支援画面のウィンドウ透過率を０％に設定する。これにより、テスト支援画面が不透明となる。その後、処理が終了する。
【０１５７】
［ステップＳ６８］ユーザインタフェース１３４は、テスト支援画面のウィンドウ透過率を減らす。これにより、テスト支援画面の透明度が減少する。
［ステップＳ６９］ユーザインタフェース１３４は、テスト支援画面のウィンドウ透過率を増やす。これにより、テスト支援画面の透明度が増加する。
【０１５８】
以上のようにして、テスト支援画面の透明度を任意に変化させることができる。これにより、テスト対象の画面がモニタの画面全てを使って表示されるような場合でも、半透明化機能によりテスト支援画面を透かして対象画面を見ることができ、テスト作業を効率的に行うことができる。
【０１５９】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、テスト支援部が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ(Digital Versatile Disc)、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)、ＣＤ−Ｒ(Recordable)／ＲＷ(ReWritable)などがある。光磁気記録媒体には、ＭＯ(Magneto-Optical disc)などがある。
【０１６０】
プログラムを流通させる場合には、たとえば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１６１】
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１６２】
（付記１）  文書閲覧装置で閲覧可能な構造化文書を用いてサービスを提供するサーバコンピュータの動作テストを支援するテスト支援プログラムにおいて、
コンピュータに、
前記サーバコンピュータに対して処理を要求するための操作入力が、前記文書閲覧装置に対して行われると、当該操作入力の内容を判断し、
判断された前記操作入力の内容を記録したログファイルを生成し、
前記ログファイルに記録されている内容に従って、前記文書閲覧装置に対する操作入力を再現する、
処理を実行させることを特徴とするテスト支援プログラム。
【０１６３】
（付記２）  前記操作入力の再現の際には、操作対象となるオブジェクトを所定の時間だけ強調表示させることを特徴とする付記１記載のテスト支援プログラム。
（付記３）  前記操作入力の再現において、前記操作対象となるオブジェクトを強調表示させる際には、当該オブジェクトの強調表示が終了するまで、前記操作入力の再現を停止させることを特徴とする付記２記載のテスト支援プログラム。
【０１６４】
（付記４）  さらに、前記コンピュータに、前記操作入力が再現されたことで前記サーバコンピュータから処理結果が返されたときに、当該処理結果と、前記操作入力により前記サーバコンピュータから返された過去の処理結果とを比較し、異なる部分を表示させることを特徴とする付記１記載のテスト支援プログラム。
【０１６５】
（付記５）  さらに、前記コンピュータに、前記操作入力における前記サーバコンピュータに対する処理要求の決定操作から、前記サーバコンピュータから処理結果が返されるまでの時間を測定し、測定結果を表示させることを特徴とする付記１記載のテスト支援プログラム。
【０１６６】
（付記６）  さらに、前記コンピュータに、前記操作入力を行うための操作画面を、半透明化して表示させることを特徴とする付記１記載のテスト支援プログラム。
（付記７）  文書閲覧装置で閲覧可能な構造化文書を用いてサービスを提供するサーバコンピュータの動作テストを支援するためのテスト支援装置におけるテスト支援方法において、
前記サーバコンピュータに対して処理を要求するための操作入力が、前記文書閲覧装置に対して行われると、当該操作入力の内容を判断し、
判断された前記操作入力の内容を記録したログファイルを生成し、
前記ログファイルに記録されている内容に従って、前記文書閲覧装置に対する操作入力を再現する、
ことを特徴とするテスト支援方法。
【０１６７】
（付記８）  文書閲覧装置で閲覧可能な構造化文書を用いてサービスを提供するサーバコンピュータの動作テストを支援するためのテスト支援装置において、
前記サーバコンピュータに対して処理を要求するための操作入力が、前記文書閲覧装置に対して行われると、当該操作入力の内容を判断する判断手段と、
判断された前記操作入力の内容を記録したログファイルを生成する生成手段と、
前記ログファイルに記録されている内容に従って、前記文書閲覧装置に対する操作入力を再現する再現手段と、
を有することを特徴とするテスト支援装置。
【０１６８】
（付記９）  文書閲覧装置で閲覧可能な構造化文書を用いてサービスを提供するサーバコンピュータの動作テストを支援するテスト支援プログラムを記録したコンピュータ読み取り可能な記録媒体において、
前記コンピュータに、
前記サーバコンピュータに対して処理を要求するための操作入力が、前記文書閲覧装置に対して行われると、当該操作入力の内容を判断し、
判断された前記操作入力の内容を記録したログファイルを生成し、
前記ログファイルに記録されている内容に従って、前記文書閲覧装置に対する操作入力を再現する、
処理を実行させることを特徴とするテスト支援プログラムを記録したコンピュータ読み取り可能な記録媒体。
【図面の簡単な説明】
【０１６９】
【図１】本発明の関連技術を示す図である。
【図２】本実施の形態のシステム構成を示す図である。
【図３】本実施の形態に用いる端末装置のハードウェア構成例を示すブロック図である。
【図４】本実施の形態に係るシステムの機能ブロック図である。
【図５】テスト支援画面の一例を示す図である。
【図６】データ入力支援処理の概念図である。
【図７】画面ファイルの一例を示す図である。
【図８】入力候補データの選択画面を表示させるための処理記述の一例を示す図である。
【図９】入力支援処理の手順を示すフローチャートである。
【図１０】操作記録処理の概念図である。
【図１１】操作内容が記録されたログファイルの一例を示す図である。
【図１２】テスト操作記録処理の手順を示すフローチャートである。
【図１３】テスト再実行処理の概念図である。
【図１４】操作対象の視覚的明示処理を施した画面の一例を示す図である。
【図１５】操作入力によるテスト時の実行結果の一例を示す図である。
【図１６】テスト再実行時の実行結果の一例を示す図である。
【図１７】テスト結果の比較処理の概念図である。
【図１８】テスト再実行処理の手順を示すフローチャートの前半である。
【図１９】テスト再実行処理の手順を示すフローチャートの後半である。
【図２０】レスポンス測定支援処理の概念図である。
【図２１】レスポンス測定処理の手順を示すフローチャートである。
【図２２】テスト支援画面の半透明化前の画面の例を示す図である。
【図２３】テスト支援画面の半透明化後の画面の例を示す図である。
【図２４】テスト支援画面半透明化処理による画面遷移の一例を示す図である。図２４（Ａ）は、半透明化前の画像を示しており、図２４（Ｂ）は半透明化後の画像を示している。
【図２５】テスト支援画面の半透明化処理の手順を示すフローチャートである。
【符号の説明】
【０１７０】
１  サーバコンピュータ
１ａ  構造化文書
１ｂ  データ入力域
２  テスト支援装置
３  文書閲覧装置
３ａ  構造化文書
３ｂ  データ入力域
３ｃ  候補データ
１０  ネットワーク
１１  モニタ
１２  キーボード
１３  マウス
３０  ＷＥＢサーバ
３１  サーバアプリケーション
１００  端末装置
１０１  ＣＰＵ
１０２  ＲＡＭ
１０３  ハードディスクドライブ
１０４  グラフィック処理装置
１０５  入力インタフェース
１０６  通信インタフェース
１２０  ＷＥＢブラウザ
１３０  テスト支援部
【図１】
2006031722.tif 000003
【図２】
2006031722.tif 000004
【図３】
2006031722.tif 000005
【図４】
2006031722.tif 000006
【図５】
2006031722.tif 000007
【図６】
2006031722.tif 000008
【図７】
2006031722.tif 000009
【図８】
2006031722.tif 000010
【図９】
2006031722.tif 000011
【図１０】
2006031722.tif 000012
【図１１】
2006031722.tif 000013
【図１２】
2006031722.tif 000014
【図１３】
2006031722.tif 000015
【図１４】
2006031722.tif 000016
【図１５】
2006031722.tif 000017
【図１６】
2006031722.tif 000018
【図１７】
2006031722.tif 000019
【図１８】
2006031722.tif 000020
【図１９】
2006031722.tif 000021
【図２０】
2006031722.tif 000022
【図２１】
2006031722.tif 000023
【図２２】
2006031722.tif 000024
【図２３】
2006031722.tif 000025
【図２４】
2006031722.tif 000026
【図２５】
2006031722.tif 000027