(57)【要約】【課題】  インターネットシステム開発のブラウザ画面上の入力項目のテストは、直接ブラウザ画面から手作業によるテスト値の投入またはスクリプトによるテスト値を生成する従来の手法では、テスト値の文字データ種類や範囲・長さによる組み合わせを考慮しながらテスト値を投入するため、人的ミスによるテスト漏れやテスト値の投入ミスが発生する。【解決手段】  システム仕様や設計書に記載されているブラウザ画面上の入力項目をデータ長・文字データ種類・データ範囲などの項目属性を持つオブジェクトとして捉えた場合、仕様や設計書に記載されている入力項目の属性をそのまま設定するだけで正常または異常系のテスト値の自動で生成する入力項目に対応したオブジェクトを用意すれば、テストを自動で実施、記録を残すテストシステムが可能となる。【選択図】        図２
2006113993.tif 000002
【特許請求の範囲】
【請求項１】
ブラウザのフォーム機能を利用した画面ユーザインターフェイスを有するインターネットアプリケーションシステム開発のテスト工程のブラウザ画面上の入力項目の入力テストにおいて、システム仕様や設計書に記述されている入力項目のデータ長・文字データ種類・データの範囲の属性情報をコンポーネントオブジェクトに投入するだけで、このコンポーネントオブジェクトが正常またはセキュリティ攻撃を含む異常値の入力項目の入力テスト値からリクエストメッセージを編集し、テスト対象システムサーバに送信し、返ってきたレスポンスメッセージの中からテストの判定を行し、テスト結果作成までを自動で実行する事が可能な  入力項目の属性情報設定による入力テスト値生成コンポーネントオブジェクトを有したインターネットシステムのためのテストシステム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、システム開発のテストの工程で、ブラウザのフォーム機能の画面ユーザインターフェイスを有するインターネットアプリケーションシステムの画面上の入力項目の入力テストを実施するシステムに関する。
【背景技術】
【０００２】  従来インターネットアプリケーションシステムのブラウザ画面上の入力項目の入力テストは、テスト時に入力する文字や数値などのテスト値のデータ種類や範囲・長さによる組み合わせを考慮しながらテストシナリオの検討してテストケースを作成し、実際にブラウザ画面から直接テスト値を手作業で投入するか、テスト値を生成するスクリプトを作成してテストを実施する方法が取られていた。
【発明の開示】
【発明が解決しようとする課題】
【０００３】  しかしながら、上記テスト方法では、テストシナリオ検討，テストケース作成，直接テスト値の投入，スクリプト作成のいずれも手作業が基本となっているため、テストケース洗い出し漏れや投入値の誤りなど人的ミスによりテスト段階でのシステム障害の発見を見逃して高度な品質を確保できないだけでなく、システム開発の費用・期間とも縮小の傾向にある中で作業工数の低減化が手作業主体のため図れない事が課題とになっていた。
【課題を解決するための手段】
【０００４】  上記課題を解決するために本発明に係わるインターネットシステムのためのテストシステムは、ブラウザ画面上の入力項目のテストを行うためのテスト値を自動生成するコンポーネントオブジェクトを備え、このコンポーネントオブジェクトにシステム仕様や設計書に記述されている入力項目のデータ長・文字データ種類・データの範囲の属性情報を投入するだけで、正常またはセキュリティ攻撃を含む異常系の入力項目の入力テスト値からリクエストメッセージを編集し、テスト対象システムサーバに送信し、返ってきたレスポンスメッセージの中からテストの判定を行し、テスト結果作成までを自動で実行する。
【発明の効果】
【０００５】  本発明は、ブラウザのフォーム機能を利用した画面ユーザインターフェイスを有するインターネットアプリケーションシステムのテスト工程において、ブラウザ上の入力項目についてシステム仕様や設計書の記載情報をもとに入力項目に対する数値や文字などの具体的なテスト値を、ブラウザ画面から直接投入する方法ではなく、システム仕様や設計書の入力項目の属性に着目し、データ長・文字データ種類・データの範囲の属性情報を設定することにより入力項目の入力テスト値を自動生成するオブジェクトを利用し自動テスト実施を行う方法とする。この方法により、テスト項目の設定および自動化したテスト実施の作業の手間を効率化できる。
【発明の実施するための最良の形態】
【０００６】  図２を参照して、テスト対象のインターネットシステムの端末画面を構成するブラウザ機能を有した端末機器とテスト対象のインターネットシステムのＷｅｂサーバ機能が動作するサーバ機器との間に、ネットワークで接続したプロキシサーバ機器を設け、このプロキシサーバ機器上に本発明に係わるインターネットシステムのためのテストシステムを設ける。本発明のテストシステムは、リクエストメッセージ解析コンポーネントオブジェクト，入力項目属性管理コンポーネント，テストデータの作成コンポーネント，入力項目のテスト値生成コンポーネント，テスト結果の作成コンポーネントのサブコンポーネントと、ブラウザＷｅｂサーバ間のメッセージを中継するリクエストメッセージ中継コンポーネント、テスト対象のブラウザ画面の入力項目についてシステム仕様や設計書に記載されている入力項目の属性情報を設定するための入力項目属性設定コンポーネント、テスト対象のブラウザ画面の入力項目についてテストを実施するテストケース実行コンポーネントで構成する。
【０００７】  図３を参照して、リクエストメッセージ中継コンポーネントは、ブラウザからテスト対象システムに送信するリクエストメッセージをリクエストメッセージ中継コンポーネントオブジェクトで受信し、リクエストメッセージ解析コンポーネントオブジェクトを使用して受信したリクエストメッセージからテスト対象システムのＷｅｂサーバのＵＲＬを含むヘッダー情報とブラウザ上の入力項目の名前・値をリクエストメッセージから抽出し、入力項目属性管理コンポーネントオブジェクトを使用して抽出した情報を保存する。リクエストメッセージ中継コンポーネントオブジェクトは、リクエストメッセージをテスト対象システムのＷｅｂサーバに送信し、応答として受信したレスポンスメッセージを端末上のブラウザに返信する。
【０００８】図４を参照して、テスト対象のブラウザ画面の入力項目について、システム仕様や設計書に記載されている入力項目の属性情報を設定するために、ブラウザから入力項目属性設定コンポーネントオブジェクトにアクセスする。入力項目属性設定コンポーネントオブジェクトは、入力項目属性管理コンポーネントオブジェクトを使用してプロキシサーバ上に保存された入力項目の情報を読み出し、ブラウザに表示情報として返しブラウザ上に表示する。次に、ブラウザ上でシステム仕様や設計書の入力項目の記述に基づき、データ長・文字種・データの範囲と正常または異常の場合の判断となるテスト対象システムのＷｅｂサーバからのレスポンスメッセージ部分のキーワードについて設定し、入力項目属性設定コンポーネントオブジェクトを介して入力項目属性管理コンポーネントオブジェクトを使用して、設定した情報を保存する。
【０００９】  図５を参照して、テスト対象のブラウザ画面の入力項目についてテストを実施するには、端末上のブラウザからプロキシサーバ上のテストケース実行コンポーネントオブジェクトにアクセスする。テストケース実行コンポーネントオブジェクトは、テストデータ作成コンポーネントオブジェクトを使用し、テスト対象システムのＷｅｂサーバへ送信するリクエストメッセージを作成するため、入力項目属性管理コンポーネントオブジェクトからのテストの対象となる入力項目の属性情報とテスト対象以外の入力項目全ての正常系の入力値を取得する。入力項目のテスト値生成コンポーネントオブジェクトに対して入力項目の属性情報を与えて、正常およびセキュリティ攻撃を含む異常値の入力テストを実施するためのテスト値を生成させる。そして、テストデータ作成コンポーネントオブジェクトは、テスト値生成コンポーネントオブジェクトが生成したテスト値と入力項目属性管理コンポーネントオブジェクトから取得したテスト対象以外入力項目全ての正常系のテスト値からリクエストメッセージを作成し、テストケース実行コンポーネントオブジェクトに返す。次に、テストケース実行コンポーネントオブジェクトは、作成したリクエストメッセージをテスト対象システムのＷｅｂサーバへ送信し、テスト対象システムのＷｅｂサーバからレスポンスメッセージを受信する。受信したレスポンスメッセージは、テスト結果作成コンポーネントオブジェクトによってテスト実行結果の作成に使用される。テスト結果作成コンポーネントオブジェクトは、正常系のリクエストメッセージを送信に対して、正常系のレスポンスメッセージを受信できれば、テスト結果をＯＫとし、正常系のレスポンスメッセージを受信できなければ、テスト結果をＮＧとする。また、異常系のリクエストメッセージを送信に対して、異常系のレスポンスメッセージを受信できれば、テスト結果をＯＫとし、異常系のレスポンスメッセージを受信できなければ、テスト結果をＮＧとするテスト結果を作成する。作成したテスト結果は、テストケース実行コンポーネントオブジェクトに戻され、最終的にブラウザに返信される。この１サイクルの処理を画面上の各入力項目に対して、テスト値生成コンポーネントオブジェクトがテスト値を生成しなくなるまで繰り返す。
【００１０】入力項目のテスト値生成コンポーネントオブジェクトの具体的な実装例として、図５のクラス図を始めとし、図１７までのステートチャート図、アクティビティ図を用意する。
【図面の簡単な説明】
【００１１】
【図１】ユースケース図
【図２】本発明にかかるテストシステムを示す配置図
【図３】リクエストメッセージ中継のコラボレーション図
【図４】入力項目属性設定のコラボレーション図
【図５】テストケース実行のコラボレーション図
【図６】入力項目のテスト値生成コンポーネントのクラス図
【図７】入力項目のテスト値生成コンポーネント内のクラスの基本的なステートチャート図
【図８】入力項目の属性情報からのテスト値生成クラスのアクティビティ図
【図９】基本テスト生成クラスのアクティビティ図
【図１０】ＮＵＬＬ値生成クラスのアクティビティ図
【図１１】ＮＵＬＬ値以外の生成クラスのアクティビティ図
【図１２】文字種別クラスのアクティビティ図
【図１３】文字テスト値生成クラスのアクティビティ図
【図１４】カナテスト値生成クラスのステートチャート図
【図１５】カナテスト値生成クラスのアクティビティ図
【図１６】テスト値生成クラスのステートチャート図
【図１７】テスト値生成クラスのアクティビティ図
【図１】
2006113993.tif 000003
【図２】
2006113993.tif 000004
【図３】
2006113993.tif 000005
【図４】
2006113993.tif 000006
【図５】
2006113993.tif 000007
【図６】
2006113993.tif 000008
【図７】
2006113993.tif 000009
【図８】
2006113993.tif 000010
【図９】
2006113993.tif 000011
【図１０】
2006113993.tif 000012
【図１１】
2006113993.tif 000013
【図１２】
2006113993.tif 000014
【図１３】
2006113993.tif 000015
【図１４】
2006113993.tif 000016
【図１５】
2006113993.tif 000017
【図１６】
2006113993.tif 000018
【図１７】
2006113993.tif 000019