(57)【要約】【課題】  Ｗｅｂサービスリクエスタのテスト支援システムにおいて、開発者によるスタブの開発作業を必要とすること無く、Ｗｅｂサービスプロバイダの環境に依存した正確なテストを行うことのできるテスト環境を提供することを目的とする。【解決手段】  テスト支援システム１００を構成するテスト環境構築装置１０１は、開発者１１０により作成されたＷｅｂサービスリクエスタ１２０のテスト環境として、Ｗｅｂサービスプロバイダ１６０からＷＳＤＬ文書１６２，アクセス条件ファイル１６３，スタブデータ１６４の各種情報を取得し、データ送受信モジュール１４１とともに、環境依存条件を定義したアクセス条件ファイル１６３に基づくチェックを行うアクセス条件チェックモジュール１０３を備えたスタブ１４０を生成する。【選択図】      図１
2005235094.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂサービスを提供するＷｅｂサービスプロバイダに対し要求を送信するＷｅｂサービスリクエスタのテスト環境として、Ｗｅｂサービスプロバイダに代わりＷｅｂサービスリクエスタからの要求を受信して所定の応答を返すデータ送受信手段を備えるスタブを生成するテスト環境構築装置であって、
前記テスト環境構築装置は、
前記Ｗｅｂサービスプロバイダの環境依存情報に基づくアクセス条件を定義したアクセス条件ファイルを取得し、前記スタブに対し、取得したアクセス条件ファイルに基づき前記Ｗｅｂサービスリクエスタからの要求のチェックを行うアクセス条件チェック手段を設けることを特徴とするテスト環境構築装置。
【請求項２】
Ｗｅｂサービスを提供するＷｅｂサービスプロバイダに対して要求を送信するＷｅｂサービスリクエスタのテスト環境として、予め環境構築装置によりＷｅｂサービスリクエスタの要求に対して所定の応答を返すスタブを生成するステップを備えるテスト環境構築方法であって、
前記環境構築装置が前記Ｗｅｂサービスプロバイダの環境依存情報に基づくアクセス条件を定義したアクセス条件ファイルを取得し、前記スタブに対し、取得したアクセス条件ファイルに基づき前記Ｗｅｂサービスリクエスタからの要求のチェックを行うアクセス条件チェック手段を設けるステップを備えることを特徴とするテスト環境構築方法。
【請求項３】
Ｗｅｂサービスを提供するＷｅｂサービスプロバイダに対し要求を送信するＷｅｂサービスリクエスタのテスト環境として、テスト環境構築装置により生成されたデータ送受信手段により、前記Ｗｅｂサービスプロバイダに代わりＷｅｂサービスリクエスタからの要求を受信して所定の応答を返すスタブを備えるテスト支援システムであって、
予め前記環境構築装置により生成され、前記Ｗｅｂサービスプロバイダの環境依存情報に応じたアクセス条件に基づき前記Ｗｅｂサービスリクエスタからの要求のチェックを行うアクセス条件チェック手段を前記スタブに設け、
当該アクセス条件チェック手段は、前記Ｗｅｂサービスリクエスタからの要求が、前記アクセス条件を満たさない場合に、エラー内容をエラー情報格納手段に格納することを特徴とするテスト支援システム。
【請求項４】
Ｗｅｂサービスを提供するＷｅｂサービスプロバイダに対し要求を送信するＷｅｂサービスリクエスタのテスト環境として、テスト環境構築装置により生成されたデータ送受信手段により、前記Ｗｅｂサービスプロバイダに代わりＷｅｂサービスリクエスタからの要求を受信して所定の応答を返すスタブによるテスト支援方法であって、
予め前記環境構築装置により、前記Ｗｅｂサービスプロバイダの環境依存情報に応じたアクセス条件に基づき前記Ｗｅｂサービスリクエスタからの要求のチェックを行うアクセス条件チェック手段を前記スタブに設けるステップと、
前記アクセス条件チェック手段により、前記Ｗｅｂサービスリクエスタからの要求をチェックし、当該要求が前記アクセス条件を満たさない場合に、エラー内容をエラー情報格納手段に格納するステップと
を備えることを特徴とするテスト支援システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、既存のＷｅｂサービスプロバイダに連携させるＷｅｂサービスリクエスタのテスト環境構築装置を備えたテスト支援システムに関する。
【背景技術】
【０００２】
近年、インターネット上でＸＭＬ（eXtensible Markup Language）形式のメッセージを送受信してシステムを連携させる技術であるＷｅｂサービスが注目され、多くの企業で採用されている。
Ｗｅｂサービスには、処理の要求を発信するＷｅｂサービスリクエスタと、Ｗｅｂサービスリクエスタからの要求を処理して結果を返すＷｅｂサービスプロバイダが存在する。ここで、サービスとは、Ｗｅｂサービスリクエスタの要求に対してＷｅｂサービスプロバイダが処理を行い、処理結果を返すという、Ｗｅｂサービスプロバイダで行われる処理と結果を合わせたものである。
Ｗｅｂサービスでは、ＷｅｂサービスリクエスタとＷｅｂサービスプロバイダ間のデータの授受にＸＭＬ技術を用いている。ＸＭＬは、インターネットやイントラネットなどのネットワークと親和性がよく、様々なプラットホーム間でデータ授受が可能である。この場合、ＳＯＡＰ（Simple  Object  Access  Protocol）と呼ばれる規約に従うことで、ＷｅｂサービスリクエスタおよびＷｅｂサービスプロバイダのシステムが異なる企業であっても、データ授受が可能になる。従って、様々なＷｅｂサービスリクエスタがＷｅｂサービスプロバイダに要求を送ることができる。そして、Ｗｅｂサービスプロバイダは、それらすべての要求に対して処理を行うことになる。
【０００３】
図１３は、Ｗｅｂサービスを利用した一般的なシステム構成を示すブロック図である。
図１３に示すようにＷｅｂサービスを利用したシステムは、Ｗｅｂサービス１３００を提供するＷｅｂサービスプロバイダ１３０１と、ユーザ１３１０に利用されるＷｅｂサービスリクエスタ１３０２とを備える。また、Ｗｅｂサービスプロバイダ１３０１の提供するＷｅｂサービス１３００の配置場所，Ｗｅｂサービス１３００を一意に特定するための文字列，Ｗｅｂサービスプロバイダの企業情報等の各種の情報を登録したＵＤＤＩ（Universal  Description,  Discovery,  and  Integration）レジストリ１３０３を備える。ここでＵＤＤＩレジストリ１３０３とは、Ｗｅｂサービス１３００を効果的に利用するために、Ｗｅｂサービス１３００の登録・公開・検索を行うための仕組みであり、Ｗｅｂサービスプロバイダ１３０１の提供するＷｅｂサービス１３００の配置場所、Ｗｅｂサービス１３００を一意に特定するための文字列、等の情報が格納されている。
Ｗｅｂサービス１３００を利用するＷｅｂサービスリクエスタ１３０２は、ＵＤＤＩレジストリ１３０３に登録された情報から、必要とするＷｅｂサービス１３００を特定するための検索条件を指定して検索し、該当するＷｅｂサービス１３００を提供するＷｅｂサービスプロバイダ１３０１にアクセスし、ユーザ１３１０に対してサービスの提供を行う。
このようなシステムとしては、例えば、企業ＡのＷｅｂサービスプロバイダが検索処理を行うＷｅｂサービスをインターネット上で公開し、他の企業ＢのＷｅｂサービスリクエスタから送信された検索要求に対して、企業Ａが保有しているデータベースを検索して、検索結果をＷｅｂサービスリクエスタのシステムに返すものが該当する。この例の場合では、「企業Ａ（Ｗｅｂサービスプロバイダ）が企業Ｂ（Ｗｅｂサービスリクエスタ）の要求を受取り、検索し結果を返す処理」がＷｅｂサービスとなる。
このようなＷｅｂサービスを利用したシステムの例としては、旅行プランの立案を支援するポータルサイトが考えられる。従来のＷｅｂサイトの場合、ユーザが旅行を計画する際には、航空券やホテル、レンタカーなどを予約するために、それぞれの企業のサイトで予約する必要がある。この場合、ユーザは別々に予約をして、自分自身で旅行プランを立てなければならない。しかしながら、航空会社やホテル、レンタカーなどの各企業が、予約システムなどをＷｅｂサービス化しており、旅行代理店がそれぞれの提供しているＷｅｂサイトを連携させ、公開したとする。先に述べたように、Ｗｅｂサービスでのデータ授受は、各サービス提供会社が企業内で使用するそれぞれ独自のシステムに依存しない。ポータルサイトで入力した個人情報や出発時刻などを入力すると、飛行機の発着時刻などの情報を渡して、タクシーの予約をしたりするように、企業間での連携が可能になる。その結果、ユーザは、旅行代理店のポータルサイトに必要な情報を入力するだけで、航空会社、ホテルの予約もまとめて行うことが可能になるので、利便性の高いサービスを受けることができる。
【０００４】
このようなＷｅｂサービスシステムでは、Ｗｅｂサービスを利用する企業等により、既存のＷｅｂサービスプロバイダにアクセスするＷｅｂサービスリクエスタの開発が行われる。
図１４は、Ｗｅｂサービスリクエスタの開発環境を示すブロック図であり、図１５は、Ｗｅｂサービスリクエスタの開発工程を示すフローチャートである。
Ｗｅｂサービスリクエスタの開発においては、前提として、開発するＷｅｂサービスリクエスタ１４００のアクセス先となるＷｅｂサービスプロバイダ１４１０と、ＵＤＤＩレジストリ１４２０とが存在する。
Ｗｅｂサービスプロバイダ１４１０は、提供するＷｅｂサービス１４１１と，インタフェース仕様を記述したＷＳＤＬ（Web  Service  Description  Language）文書１４１２と、環境依存情報１４１３を有する。ここで、環境依存情報１４１３とは、Ｗｅｂサービスプロバイダ１４１０のハードウエア環境に依存する情報を示し、例えば、Ｗｅｂサービスプロバイダ１４１０に１秒間当たりに送信可能な要求の数、一度の通信で送信できる最大データ量といった項目が挙げられている。
また、テスト環境として、開発者１４３０は、Ｗｅｂサービスプロバイダ１４１０に代わってＷｅｂサービスリクエスタ１４００の要求に対して応答を返すスタブ１４４０と、ＵＤＤＩレジストリ１４２０に登録されたＷｅｂサービスプロバイダ１４１０の情報を有するテストＵＤＤＩレジストリ１４５０とを構築する。
以上の構成において、Ｗｅｂサービスリクエスタを開発する工程を説明する。
まず、開発者１４３０は、Ｗｅｂサービスプロバイダ１４１０からＷＳＤＬ文書１４１２を取得し（ステップ１５０１）、ＷＳＤＬ文書１４１２に記述されている入出力情報に従いＷｅｂサービスリクエスタ１４００を実装する（ステップ１５０２）。ここで、ＷＳＤＬ文書１４１２とは、Ｗｅｂサービスリクエスタ１４００からＷｅｂサービスプロバイダ１４１０の提供するＷｅｂサービス１４１１を利用する際にやり取りするデータのフォーマット（入出力情報）を記述したＸＭＬファイルである。
その後、開発したＷｅｂサービスリクエスタ１４００について動作テストを行うため、開発したＷｅｂサービスリクエスタ１４００の要求に対して応答を返すスタブ１４４０を作成するとともに（ステップ１５０３）、ＵＤＤＩレジストリ１４２０に登録されたＷｅｂサービスプロバイダ１４１０の登録情報を取得し、テストＵＤＤＩレジストリ１４５０にコピーする（ステップ１５０４）。テストＵＤＤＩレジストリ１４５０にＷｅｂサービスプロバイダ１４１０の情報をコピーする際、Ｗｅｂサービスプロバイダ１４１０の提供するＷｅｂサービス１４１１の配置場所は、ステップ１５０３で作成したスタブ１４４０の配置場所を返すようにデータを書き換える。
Ｗｅｂサービスリクエスタ１４００の動作テストを行い（ステップ１５０５）、実行結果を取得してバグが無いかどうかを確認する（ステップ１５０６）。動作テストでは、開発者１４３０によりＷｅｂサービスリクエスタ１４００へ入力されたテストデータを要求としてスタブ１４４０に送信し、スタブ１４４０が要求に対して返すデータをＷｅｂサービスリクエスタ１４００が正しく処理しているかを確認する作業を行う。確認作業では、Ｗｅｂサービスリクエスタ１４００が仕様通りに動作しているか、またＷｅｂサービスプロバイダ１４１０の環境依存情報１４１３で提示している条件を満たすように動作しているかを確認する。
以上の確認作業の結果、バグが存在すれば、その箇所を修正する（ステップ１５０７）。
その後、テスト，チェック，修正を繰返し（ステップ１５０５〜１５０７）、バグが無くなった状態で開発が終了となる。
【０００５】
以上のように、Ｗｅｂサービスリクエスタ１４００の開発作業においては、開発者によりＷｅｂサービスプロバイダ１４１０の動作環境を考慮したスタブ１４４０の作成が行われていため、従来のテスト支援システムとして、スタブ１４４０の開発工程を削減するために、インタフェース定義等の定義情報からスタブを生成する手段を備えたシステムが公知となっている（例えば、特許文献１参照。）。
【特許文献１】特開２００２−３６６３８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、前記特許文献１に記載の発明により生成されるスタブは、Ｗｅｂサービスプロバイダの環境依存情報を考慮したものでは無いため、Ｗｅｂサービスリクエスタのテスト支援としては不十分なものとなっていた。即ち、Ｗｅｂサービスシステムの場合には、同一のＷｅｂサービスプロバイダにアクセスするＷｅｂサービスリクエスタが複数存在する場合もあるため、Ｗｅｂサービスプロバイダのハードウエア環境を考慮したＷｅｂサービスリクエスタの開発を行うことが必要となる。従って、前記特許文献１に記載のシステムを利用した場合であっても、さらに、開発者がＷｅｂサービスプロバイダの環境依存情報に基づくチェックを行うためのスタブ、その他のツールを作成する必要があるため、スタブ開発等に余計な工数を必要としていた。
【０００７】
本発明は、前記課題を解決するためのものであり、Ｗｅｂサービスリクエスタのテスト支援システムにおいて、開発者によるスタブ等の開発作業を必要とすること無く、Ｗｅｂサービスプロバイダの環境に依存した正確なテストを行うことのできるテスト環境を提供することを目的とする。
【課題を解決するための手段】
【０００８】
前記課題を解決するため、本発明は、Ｗｅｂサービスを提供するＷｅｂサービスプロバイダに対し要求を送信するＷｅｂサービスリクエスタのテスト環境として、Ｗｅｂサービスプロバイダに代わりＷｅｂサービスリクエスタからの要求を受信して所定の応答を返すデータ送受信手段を備えるスタブを生成するテスト環境構築装置であって、前記テスト環境構築装置は、前記Ｗｅｂサービスプロバイダの環境依存情報に基づくアクセス条件を定義したアクセス条件ファイルを取得し、前記スタブに対し、取得したアクセス条件ファイルに基づき前記Ｗｅｂサービスリクエスタからの要求のチェックを行うアクセス条件チェック手段を設けることを特徴とする。
また、本発明のテスト環境構築方法は、支援Ｗｅｂサービスを提供するＷｅｂサービスプロバイダに対して要求を送信するＷｅｂサービスリクエスタのテスト環境として、予め環境構築装置によりＷｅｂサービスリクエスタの要求に対して所定の応答を返すスタブを生成するステップを備えるテスト環境構築方法であって、前記環境構築装置が前記Ｗｅｂサービスプロバイダの環境依存情報に基づくアクセス条件を定義したアクセス条件ファイルを取得し、前記スタブに対し、取得したアクセス条件ファイルに基づき前記Ｗｅｂサービスリクエスタからの要求のチェックを行うアクセス条件チェック手段を設けるステップを備えることを特徴とする。
【０００９】
また、本発明のテスト支援システムは、Ｗｅｂサービスを提供するＷｅｂサービスプロバイダに対し要求を送信するＷｅｂサービスリクエスタのテスト環境として、テスト環境構築装置により生成されたデータ送受信手段により、前記Ｗｅｂサービスプロバイダに代わりＷｅｂサービスリクエスタからの要求を受信して所定の応答を返すスタブを備えるテスト支援システムであって、予め前記環境構築装置により生成され、前記Ｗｅｂサービスプロバイダの環境依存情報に応じたアクセス条件に基づき前記Ｗｅｂサービスリクエスタからの要求のチェックを行うアクセス条件チェック手段を前記スタブに設け、当該アクセス条件チェック手段は、前記Ｗｅｂサービスリクエスタからの要求が、前記アクセス条件を満たさない場合に、エラー内容をエラー情報格納手段に格納することを特徴とする。
また、本発明のテスト支援方法は、Ｗｅｂサービスを提供するＷｅｂサービスプロバイダに対し要求を送信するＷｅｂサービスリクエスタのテスト環境として、テスト環境構築装置により生成されたデータ送受信手段により、前記Ｗｅｂサービスプロバイダに代わりＷｅｂサービスリクエスタからの要求を受信して所定の応答を返すスタブによるテスト支援方法であって、予め前記環境構築装置により、前記Ｗｅｂサービスプロバイダの環境依存情報に応じたアクセス条件に基づき前記Ｗｅｂサービスリクエスタからの要求のチェックを行うアクセス条件チェック手段を前記スタブに設けるステップと、前記アクセス条件チェック手段により、当該要求が前記アクセス条件を満たさない場合に、エラー内容をエラー情報格納手段に格納するステップとを備えることを特徴とする。
【発明の効果】
【００１０】
以上の構成により、本発明では、環境依存情報に基づくチェック手段を備えるスタブを生成することとしたので、Ｗｅｂサービスリクエスタの動作テストにおいて、開発者によるスタブ開発工程を必要とすること無く、Ｗｅｂサービスプロバイダの環境に依存した正確なテストが可能となる。
この場合に、チェック手段によるチェック結果として、エラー内容をエラー情報格納手段に格納することとしたので、エラー箇所の確認，修正を容易なものとすることが可能となる。
従って、Ｗｅｂサービスリクエスタ開発における工数削減を図ることが可能となるとともに、Ｗｅｂサービスリクエスタの品質を向上させることができ、実稼動した際にＷｅｂサービスプロバイダ、Ｗｅｂサービスリクエスタで起こる障害を軽減させることができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の一実施の形態について、図面に基づき説明する。
図１は、本発明の一実施の形態に係るテスト環境構築装置１００を含むテスト支援システムの概略構成を示すブロック図である。
本実施の形態に係るテスト支援システム１００を構成するテスト環境構築装置１０１は、開発者１１０により作成されたＷｅｂサービスリクエスタ１２０のテスト環境として、テストＵＤＤＩレジストリ１３０へのデータ登録及びスタブ１４０の生成を行う。
テストＵＤＤＩレジストリ１３０については、従来と同様に、開発者１１０により入力された環境構築情報１１１に基づき、既存のＵＤＤＩレジストリ１５０からＷｅｂサービスプロバイダ１６０の登録情報を取得して、テストＵＤＤＩレジストリ１３０にコピーする。
スタブ１４０の生成では、Ｗｅｂサービス１６１の提供を行う既存のＷｅｂサービスプロバイダ１６０からＷＳＤＬ文書１６２，アクセス条件ファイル１６３，スタブデータ１６４の各種情報を取得し、データ送受信モジュールテンプレート１０２及びアクセス条件チェックモジュール１０３を用いてスタブ１４０を生成する。
生成したスタブ１４０は、データ送受信モジュール１４１，アクセス条件チェックモジュール１０３を備えると共に、スタブデータ格納手段１４２，エラー情報格納手段１４３に対してアクセス可能なように構成されている。
データ送受信モジュール１４１は、Ｗｅｂサービスリクエスタ１２０からの要求を受付け、スタブデータ格納手段１４３に格納されたスタブデータ１６４に基づき応答を返す。
アクセス条件チェックモジュール１０３は、Ｗｅｂサービスリクエスタ１２０からの要求がアクセス条件ファイル１６３に記述されている項目通りかをチェックする。具体的には、１秒間当りの要求数が指定範囲内に収まっているか、Ｗｅｂサービスリクエスタ１２０からの要求のデータ容量が指定範囲内に収まっているか、Ｗｅｂサービスリクエスタ１２０による以前の要求の送信からの経過時間が指定時間内に収まっているか、Ｗｅｂサービスリクエスタ１２０によるスタブ１４０への接続から要求送信までの時間が指定時間内であるか（指定時間内に接続が切断されているか）等をチェックする。
スタブデータ格納手段１４２は、Ｗｅｂサービス１６１への入力データに対し、どのような出力データが期待できるかを示すテストデータの一覧としてのスタブデータ１６４を格納している。
エラー情報格納手段１４３は、Ｗｅｂサービスリクエスタ１２０の動作テストにおいて、Ｗｅｂサービスプロバイダ１６０のアクセス条件を満たさないエラー情報を格納する。
以上の構成により、本実施の形態では、開発対象となるＷｅｂサービスリクエスタ１２０の動作テストにおいて、スタブ１４０のアクセス条件チェックモジュール１０３が、アクセス条件ファイル１６３に基づき、Ｗｅｂサービスリクエスタ１２０からの要求が環境依存情報に基づくアクセス条件を満たすか否かをチェックする。
【００１２】
図２は、本実施の形態に係るテスト環境構築装置１００を利用した開発工程を示すフローチャートである。
まず、従来と同様に、Ｗｅｂサービスプロバイダ１６０からＷＳＤＬ文書１６２を取得して（ステップ２０１）、ＷＳＤＬ文書１６２に記述されている入出力情報に従いＷｅｂサービスリクエスタ１２０を実装する（ステップ２０２）。
その後、本実施の形態では、開発者１１０が環境構築情報１１１をテスト環境構築装置１０１に入力し（ステップ２０３）、テスト環境構築装置１０１により後述するスタブ生成処理を行うとともに（ステップ２０４）、テストＵＤＤＩレジストリ生成処理として、ＵＤＤＩレジストリ１５０に登録されたＷｅｂサービスプロバイダ１６０の登録情報を取得し、テストＵＤＤＩレジストリ１３０にコピーする（ステップ２０５）。テストＵＤＤＩレジストリ１３０にＷｅｂサービスプロバイダ１６０の情報をコピーする際、Ｗｅｂサービスプロバイダ１６０の提供するＷｅｂサービス１６１の配置場所については、スタブ１４０の配置場所を返すようにデータを書き換える。
開発者１１０は、テスト環境構築装置１０１により構築されたテスト環境を利用して、後述するＷｅｂサービスリクエスタ１２０の動作テストを行い（ステップ２０６）、実行結果を取得してシステムの仕様にバグが無いかどうか、エラー情報格納手段にエラー情報が格納されていないかを確認する（ステップ２０７）。この場合、仕様のバグ又はエラー情報が存在すれば、その箇所を修正する（ステップ１５０８）。
その後、テスト，チェック，修正を繰返し（ステップ２０６〜２０８）、仕様のバグ及びエラー情報が無くなった状態で開発が終了となる。
【００１３】
図３は、本実施の形態に係るテスト環境構築装置１００によるスタブ生成処理を示すフローチャートである。
テスト環境構築装置１００は、開発者１１０により入力された環境構築情報１１１に基づきＷｅｂサービスプロバイダ１６０の場所を特定する（ステップ３０１）。具体的には、環境構築情報１１１に含まれるＵＤＤＩレジストリ１５０のＵＲＬとＷｅｂサービスプロバイダ１６０を特定するための検索条件を利用して、Ｗｅｂサービスプロバイダ１６０の場所を特定する。
テスト環境構築装置１０１は、場所の特定されたＷｅｂサービスプロバイダ１６０からＷＳＤＬ文書１６２，アクセス条件ファイル１６３，スタブデータ１６４の各データを取得し（ステップ３０２）、取得したスタブデータ１６４については、スタブデータ格納手段１４２に格納する（ステップ３０３）。
また、テスト環境構築装置１０１は、取得したＷＳＤＬ文書１６２に基づき、データ送受信モジュールテンプレート１０２を用いて生成したデータ送受信モジュール１４１と、アクセス条件チェックモジュール１０３とにより、スタブ１４０を生成して処理を終了する（ステップ３０４）。この場合、データ送受信モジュール１４１については、データ送受信モジュールテンプレート１０２に、ＷＳＤＬ文書１６２に定義されたインタフェース仕様を記述する。また、アクセス条件チェックモジュール１０３については、予め生成されたアクセス条件チェックモジュール１０３をスタブ１４０内にコピーする。
【００１４】
図４は、本実施の形態に係るテスト環境構築装置１００を利用したＷｅｂサービスリクエスタ１２０のテスト処理を示すフローチャートである。
まず、Ｗｅｂサービスリクエスタ１２０が、開発者１１０によるテストデータの入力を受け付ける（ステップ４０１）。
Ｗｅｂサービスリクエスタ１２０は、テストＵＤＤＩレジストリ１３０からスタブ１４０の配置場所を取得して、スタブ１４０に対しテストデータに基づく要求を送信する（ステップ４０２）。
スタブ１４０のデータ送受信モジュール１４１がＷｅｂサービスリクエスタ１２０からの要求を受信した際に、アクセス条件チェックモジュール１０３が要求をアクセス条件ファイル１６３に定義された条件を満たすか否かをチェックし、アクセス条件を満たさない場合にはエラーが発生したものとして、エラー情報格納手段１４３にエラー情報を格納する（ステップ４０３）。
スタブ１４０のデータ送受信モジュール１４１は、Ｗｅｂサービスリクエスタ１２０の要求に対して、対応する応答をスタブデータ格納手段１４２から取得して、Ｗｅｂサービスリクエスタ１２０に返す（ステップ４０４）。
開発者は、以上のテストの結果として取得した応答に基づきＷｅｂサービスリクエスタ１２０が仕様通りに動作しているかを判定するとともに、エラー情報格納手段１４３の内容を確認して、Ｗｅｂサービスプロバイダ１６０の環境条件を満たすように動作しているかをチェックする。
【００１５】
以上の構成に基づき、本実施の形態に係るテスト支援システム１００を利用したＷｅｂサービスリクエスタ１２０のテスト支援方法の具体例を説明する。
図５は、Ｗｅｂサービスリクエスタ１２０の表示画面の一例として、検索条件入力画面と検索結果表示画面を示す図である。
本例では、書籍の商品ＩＤを入力した場合に、その書籍の値段を出力するＷｅｂサービスを提供するＷｅｂサービスプロバイダ１６０に対し、リクエストを送信するＷｅｂサービスリクエスタ１２０の一例を示している。
Ｗｅｂサービスリクエスタ１２０の検索条件入力画面５１０は、商品ＩＤ入力欄５１１と、送信ボタン５１２とを備え、商品ＩＤが商品ＩＤ入力欄５１１に入力された状態で、送信ボタン５１２が押下されると、Ｗｅｂサービスプロバイダ１６０へ要求を送信する。
検索結果表示画面５２０は、商品ＩＤ表示欄５２１と、値段表示欄５２２とを備え、Ｗｅｂサービスプロバイダ１６０からの応答として、商品ＩＤ表示欄５２１に示された商品の値段を値段表示欄５２２に表示する。
従って、動作テストを行う場合には、商品ＩＤ入力欄５１１にテストデータを入力させた状態で送信ボタン５１２を押下させてスタブ１４０に要求を送信し、スタブ１４０からの返答を値段表示欄５２２に表示する。
【００１６】
図６は、テスト環境構築装置１００によるスタブ生成処理に用いられるＷｅｂサービスプロバイダ１６０のＷＳＤＬ文書１６２の一例を示す図である。
図６に示すＷＳＤＬ文書６００は、Ｗｅｂサービスプロバイダ１６０への入力情報６１０，Ｗｅｂサービスプロバイダ１６０からの出力情報６２０，Ｗｅｂサービス１６１が持つメソッド名６３０，Ｗｅｂサービス名６４０の各情報を示している。
入力情報６１０には、入力データの型６１１及び変数名６１２を示している。
出力情報６２０には、出力データの型６２１及び変数名６２２を示している。
【００１７】
図７は、テスト環境構築装置１００によるスタブ生成処理に用いられるＷｅｂサービスプロバイダ１６０の環境構築情報の一例を示す図である。
図７に示す環境構築情報７００は、Ｗｅｂサービス１６１を特定するための検索条件７０１と、Ｗｅｂサービス１６１の場所を取得するためのＵＤＤＩレジストリ１５０のＵＲＬ７０２と、Ｗｅｂサービスリクエスタ１２０の動作テストに用いるテストＵＤＤＩレジストリ１３０のＵＲＬ７０３とを含んでいる。
本実施の形態では、検索条件７０１に、Ｗｅｂサービス１６１の場所を一意に判別する文字列として、ＵＤＤＩレジストリ１５０に含まれる情報の一つであるｔＭｏｄｅｌＮａｍｅを示している。
【００１８】
図８は、テスト環境構築装置１０１により生成されるスタブデータ格納手段１４２のデータ構造の一例を示す図である。
図８に示すスタブデータ格納手段８００は、サービス名８０１と、メソッド名８０２と、入力データ８０３と、出力データ８０４の各データから構成されている。
サービス名８０１は、Ｗｅｂサービスプロバイダ１６０の提供するＷｅｂサービス１６１の名前を示し、メソッド名８０２は、Ｗｅｂサービス１６１に含まれる、Ｗｅｂサービスリクエスタ１２０がＷｅｂサービス１６１を利用する際に呼び出すメソッド名を示している。
また、入力データ８０３は、Ｗｅｂサービスプロバイダ１６０への入力データを示し、出力データ８０４は、スタブ１４０からの出力データを示している。
例えば、「ＳａｍｐｌｅＳｅｒｖｉｃｅ」という名前のＷｅｂサービス１６１の、「ＧｅｔＰｒｉｃｅ」メソッドに対して、要求として入力データ「１０１０１１２０」を送信した場合、出力データ「２０００」がスタブ１４０から返信されることを示している。
【００１９】
図９は、テスト環境構築装置１００によるスタブ生成処理に用いられるアクセス条件ファイル１６３のソースコードの一例を示す図である。
図９に示すアクセス条件ファイル９００は、環境依存情報として予め定義された項目に対し、Ｗｅｂサービスプロバイダ１６０の環境等に応じた値を入力したファイルであり、Ｗｅｂサービス１６１の配置場所及びＷｅｂサービスの名称９０１と、Ｗｅｂサービスプロバイダ１６０の持つメソッド名９０２と、１秒間に処理可能な最大要求数９０３と、１秒間に必要とする最低限要求数９０４と、１回の通信で送信できる最大容量９０５と、１回の通信で必要とする最低限容量９０６と、必要な更新頻度９０７と、接続継続可能時間９０８の各情報を示している。
本例では、Ｗｅｂサービス１０１の配置場所が「ｈｔｔｐ：／／ｓａｍｐｌｅ」で、Ｗｅｂサービス１６１の名前が「ＳａｍｐｌｅＳｅｒｖｉｃｅ」で、「ＧｅｔＰｒｉｃｅ」のメソッドを持ち、１秒間に可能な最大要求の数が「１５」、１回の通信容量が「１０００」バイト以下、「１８００」秒に１度は呼出し、Ｗｅｂサービスプロバイダ１６０から取得する情報をＷｅｂサービスリクエスタ１２０に反映する必要があることを示している。また、Ｗｅｂサービスプロバイダ１６０との接続が「９００」秒に達したときに通信が切断されることを示している。
なお、本例において、最低限要求数９０４，最低限容量９０６は「＊」となっているが、これは、最低限要求数及び最低限容量を特に制限していないことを示している。
【００２０】
図１０は、テスト環境構築装置１０１によるスタブ生成処理に用いられるデータ送受信モジュールテンプレート１０２のソースコードの一例を示す図であり、図１１は、テスト環境構築装置１００により生成されるデータ送受信モジュール１４１のソースコードの一例を示す図である。
図１０に示すテンプレート１０００は、ＷＳＤＬ文書１６２に含まれる情報を対応させるものであり、Ｗｅｂサービス名記述部１００１〜１００３と、出力情報記述部１００４，１００７，１００８と、メソッド名記述部１００５と、入力情報記述部１００６とを有する。
図１１に示すデータ送受信モジュール１１００は、テンプレート１０００の各記述部１００１〜１００８に対し、図６に示すＷＳＤＬ文書６００の各情報を記述した各記述部１１０１〜１１０８を有する。
【００２１】
図１２は、スタブ１４０により生成されるエラー情報格納手段１４３に格納する情報のデータ構造の一例を示す図である。
図１２に示すエラー情報格納手段１２００は、エラー内容１２０１と、エラーコード１２０２と、対策方針１２０３と、エラー出力時間１２０４とを有する。
エラー内容１２０１は、エラーの内容を示し、エラーコード１２０２は、アクセス条件ファイル１６３に記述されているエラーを判別するための文字列を示している。この場合、エラー内容１２０１について、例えば、予めエラー内容のテンプレートを設けておき、そのテンプレートに、アクセス条件ファイル９００に記述しているアクセス条件、アクセス条件をチェックした結果得られた値を埋め込んでエラー内容を作成する機能をアクセス条件チェックモジュール１０３に実装する。
対策方針１２０３は、エラー内容を修正するための対策を示し、エラー出力時間１２０４は、エラーが発生した日時を示している。この場合、対策方針１２０３について、例えば、予めエラーコードと対策方針を示すメッセージとの対応関係を定義したテーブルを設けておき、当該テーブルからエラーコードに対応するメッセージを取得して対策方針１２０３を作成する機能をアクセス条件チェックモジュール１０３に実装する。
本例では、スタブ１４０との通信の際、１回の通信容量を表すアクセス条件が「１０００」に対して、アクセス条件をチェックした結果得られた値が「１４２３」となっているため、通信容量の限界を超えていることを表している。従って、この場合、開発者は対策方針に従いＷｅｂサービスプロバイダ１６０へ要求を送信する箇所を修正し、テストを再度行う。
【００２２】
以上のように、本実施の形態に係るテスト支援システム１００では、Ｗｅｂサービスプロバイダ１６０の環境依存情報に基づくアクセス条件ファイル１６３を取得し、当該アクセス条件ファイルに基づくテストを可能とするアクセス条件チェックモジュール１０３を備えたスタブ１４０を生成することとしたので、Ｗｅｂサービスリクエスタ１２０の動作テストにおいて、Ｗｅｂサービスプロバイダ１６０の環境に依存した正確なテストが可能となる。
また、アクセス条件に関するエラーがあった場合に、エラー内容をエラー情報格納手段１４３に格納することとしたので、アクセス条件に関するバグの確認を容易に行うことが可能となる。この場合、エラー情報格納手段に格納する情報として、エラー内容に応じた対策方針を示すメッセージを含めることとしたので、バグに対する修正作業を容易なものとすることができる。
また、データ送受信モジュールテンプレート１０２を用いて、Ｗｅｂサービスプロバイダ１６０の提供するＷＳＤＬ文書１６２に対応したデータ送受信モジュール１４１を生成することとしたので、簡易な構成によりスタブ１４０の生成が可能となる。
従って、開発者１１０によるスタブ１４０の作成工程が不要となり、工数削減を図ることが可能となるとともに、Ｗｅｂサービスプロバイダ１６０のハードウエア環境に適したＷｅｂサービスリクエスタ１２０の開発を容易なものとすることが可能となる。これにより、Ｗｅｂサービスリクエスタ１２０の品質が向上し、実稼動した際にＷｅｂサービスプロバイダ１６０、Ｗｅｂサービスリクエスタ１２０で起こる障害を軽減できることとなる。
【００２３】
なお、本実施の形態では、開発者（Ｗｅｂサービスリクエスタ）側の環境としてテスト支援システムを構築した例を示しているが、これに限られるものでは無く、例えば、Ｗｅｂサービスプロバイダ側にテスト環境構築装置を備えることとし、開発者からの要求に応じて、Ｗｅｂサービスプロバイダの環境等に応じたスタブを生成して開発者に提供することとしてもよい。
また、本発明のテスト支援システムの構成としては、前記実施の形態に限られるものではなく、例えば、テストＵＤＤＩレジストリへの登録情報のコピーは、テスト環境構築装置とは別の装置により行うこととしてもよく、また、各情報格納手段のデータ構造等も種々に変更可能なものとする。
また、ＵＤＤＩレジストリを介すること無く、直接にＷｅｂサービスプロバイダにアクセスをするＷｅｂサービスリクエスタを開発する場合には、テストＵＤＤＩレジストリを省略することが可能となる。
【図面の簡単な説明】
【００２４】
【図１】本発明の一実施の形態に係るテスト支援システムの概略構成を示すブロック図である。
【図２】本発明の一実施の形態に係るテスト支援システムを利用したＷｅｂサービスリクエスタの開発工程を示すフローチャートである。
【図３】本発明の一実施の形態に係るテスト環境構築装置によるスタブ生成処理手順を示すフローチャートである。
【図４】本発明の一実施の形態に係るテスト環境構築装置により生成されたスタブを利用したＷｅｂリクエスタの動作テスト処理手順を示すフローチャートである。
【図５】開発対象となるＷｅｂサービスリクエスタの画面構成の一例を示す図である。
【図６】Ｗｅｂサービスプロバイダの提供するＷＳＤＬ文書の一例を示す図である。
【図７】開発者によりテスト環境構築装置に入力される環境構築情報のデータ構造の一例を示す図である。
【図８】Ｗｅｂサービスプロバイダの提供するスタブデータを格納したスタブデータ格納手段のデータ構造の一例を示す図である。
【図９】Ｗｅｂサービスプロバイダの提供するアクセス条件ファイルの一例を示す図である。
【図１０】テスト環境構築装置の利用するデータ送受信モジュールテンプレートの一例を示す図である。
【図１１】テスト環境構築装置により生成されたデータ送受信モジュールの一例を示す図である。
【図１２】スタブの生成するエラー情報を格納するエラー情報格納手段のデータ構造の一例を示す図である。
【図１３】Ｗｅｂサービスシステムの概略構成を示すブロック図である。
【図１４】従来のＷｅｂサービスリクエタのテスト環境を示すブロック図である。
【図１５】従来のＷｅｂサービスリクエスタの開発工程を示すフローチャートである。
【符号の説明】
【００２５】
１００  テスト支援システム、１０１  テスト環境構築装置、１０２  データ送受信モジュールテンプレート、１０３  アクセス条件チェックモジュール、１１０  開発者、１１１  環境構築情報、１２０  Ｗｅｂサービスリクエスタ、１３０  テストＵＤＤＩレジストリ、１４０  スタブ、１４１  データ送受信モジュール、１４２  スタブデータ格納手段、１４３  エラー情報格納手段、１５０  ＵＤＤＩレジストリ、１６０  Ｗｅｂサービスプロバイダ、１６１  Ｗｅｂサービス、１６２  ＷＳＤＬ文書、１６３  アクセス条件ファイル、１６４  スタブデータ。
【図１】
2005235094.tif 000003
【図２】
2005235094.tif 000004
【図３】
2005235094.tif 000005
【図４】
2005235094.tif 000006
【図５】
2005235094.tif 000007
【図６】
2005235094.tif 000008
【図７】
2005235094.tif 000009
【図８】
2005235094.tif 000010
【図９】
2005235094.tif 000011
【図１０】
2005235094.tif 000012
【図１１】
2005235094.tif 000013
【図１２】
2005235094.tif 000014
【図１３】
2005235094.tif 000015
【図１４】
2005235094.tif 000016
【図１５】
2005235094.tif 000017