JP4977681B2 - データパターン/テストデータ生成・蓄積方法及びシステム - Google Patents

データパターン/テストデータ生成・蓄積方法及びシステム Download PDF

Info

Publication number
JP4977681B2
JP4977681B2 JP2008314563A JP2008314563A JP4977681B2 JP 4977681 B2 JP4977681 B2 JP 4977681B2 JP 2008314563 A JP2008314563 A JP 2008314563A JP 2008314563 A JP2008314563 A JP 2008314563A JP 4977681 B2 JP4977681 B2 JP 4977681B2
Authority
JP
Japan
Prior art keywords
data
data pattern
test data
new
pattern
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008314563A
Other languages
English (en)
Other versions
JP2010140166A (ja
Inventor
孝至 溝呂木
陽一郎 土屋
正志 元田
裕之 堀江
実優 杉山
宏久 安立
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Systems Ltd
Original Assignee
Hitachi Systems Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Systems Ltd filed Critical Hitachi Systems Ltd
Priority to JP2008314563A priority Critical patent/JP4977681B2/ja
Publication of JP2010140166A publication Critical patent/JP2010140166A/ja
Application granted granted Critical
Publication of JP4977681B2 publication Critical patent/JP4977681B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データパターン/テストデータ生成・蓄積方法及びシステムに係り、詳しくはシステム開発でプログラミングされたプログラムをテストする工程で用いて好適なデータパターン/テストデータを生成・蓄積するデータパターン/テストデータ生成・蓄積方法及びシステムに関する。
従来、システム開発では、概要設計、基本設計、及び詳細設計等の仕様書を参照してプログラミングすることによりプログラムが作成されている。作成されたプログラムは、仕様書に基づいた機能を持つか否かを確認するためのテストが実施される。
係るテストには、テストに使用するテストデータを生成する必要がある。テストデータを生成する技術として、例えば、仕様上有り得ないデータパターンの禁則パターンを予め指定し、指定通りの禁則パターンを除外することによって、全データパターンよりも少ないデータパターンを対象にしてテストデータを生成する方法(特許文献1参照)が知られている。
特開2006−22758号公報
上述した特許文献1に係るテストデータの生成方法は、禁則パターンを予め除外してテストデータを生成するため、作業上の入力ミス等によって発生し得る禁則パターンに対するテストデータは生成されず、こうした機会が多くなれば、熟練者によってもテスト漏れを起こす危険がある。
また、特許文献1記載の従来技術は、テストデータの生成に供される複数データ間には、相関性や関連付けが考慮されていないため、相関性を意識したテストデータの生成には、不向きであるという欠点がある。
さらに、特許文献1記載の従来技術は、機能拡張されるシステムにおいて、エンハンスの都度、保証された実績のあるデータを利用してテストデータを生成するものでなく、新規にテストデータを生成する。このため、生成されたテストデータは、テストデータとして信頼性が保証されていない可能性がある。信頼性が保証されていないテストデータを使用してテストを実施すると、エラーとなる可能性がある他、想定していなかった機能に処理が流れてしまう可能性がある。後者の場合のように、想定していなかった機能に処理が流れてしまうと、正常に処理が流れるように修正作業の必要が発生してしまい、工数や手間がかかってしまう。
本発明は、このような問題点を解決すべくなされたもので、その技術的課題(目的)は、テスト漏れを回避でき、データ間での相関性が高く、しかも効率良く生成でき、信頼性が保証されたデータパターン/テストデータを生成することができるデータパターン/テストデータ生成・蓄積方法及びシステムを提供することにある。
上記技術的課題を解決するため、本発明の第1の手段は、システム開発でプログラミングされたプログラムをテストする工程で用いられるテストデータ生成用のデータパターンを対象にしてテストデータを生成するときに適用されるデータパターン/テストデータ生成・蓄積方法であって、仕様書ファイルから前記データパターンの生成に必要な仕様書情報を取得して中間ファイルを生成する中間ファイル生成ステップと、外部ファイルに定義された前記データパターンの網羅条件を示す属性情報、並びに前記中間ファイルの前記仕様書情報を入力すると共に、仕様上有り得ない禁則パターンを含む過去のデータパターンを蓄積したデータパターン用データベースを参照して取得した当該過去のデータパターンと当該仕様書情報とを突合して差分を判定した結果、差分があれば当該属性情報並びに当該仕様書情報に基づいて当該過去のデータパターンを反映させて新たなデータパターンを生成して出力し、差分がなければ当該過去のデータパターンをそのまま新たなデータパターンとして出力するデータパターン生成ステップと、前記生成された新たなデータパターンを端末処理して特定したテストで確認したい他の新たなデータパターンを入力して過去のテストデータを蓄積したテストデータ用データベースを入力元としてデータ生成するか否かを判定した結果、入力元とすれば新規項目又は変更したい項目がなければ当該過去のテストデータをそのまま新たなテストデータとして出力し、当該新規項目又は当該変更したい項目があれば手作業か、或いは初期値ファイルから取得した初期値情報に基づいて新たなテストデータを生成して出力し、入力元としなければ手作業での全項目のデータ設定か、或いは当該初期値ファイルから取得した当該初期値情報に基づいて新たなテストデータを生成して出力し、更に、前記他の新たなデータパターンを加工したことに伴い別の新たなデータパターンを出力するテストデータ生成ステップと、前記別の新たなデータパターンの出力、並びに前記新たなテストデータの出力に応じて前記データパターン用データベースの前記過去のデータパターンと前記テストデータ用データベースの前記過去のテストデータとを更新する更新ステップと、を有することを特徴とする。
本発明によれば、仕様上有り得ない禁則パターンを含む全データパターンの情報によるテストデータを生成することが可能となり、その結果としてテスト漏れを回避できる。また、従来に無く相関性の高いテストデータを効率良く生成することができる。さらに、従来技術のようなテスト実施時にエラーとなる可能性や、或いは想定していない機能に処理が流れてしまう可能性を極力抑制でき、その結果としてテストデータの修正作業を顕著に低減または不要にすることができる。
以下に、本発明のデータパターン/テストデータ生成・蓄積方法及びシステムについて、図面を参照して詳細に説明する。
最初に、本発明のデータパターン/テストデータ生成・蓄積方法の技術的概要を簡単に説明する。
本発明のデータパターン/テストデータ生成・蓄積方法は、システム開発でプログラミングされたプログラムをテストする工程で用いられるテストデータ生成用のデータパターンを対象にしてテストデータを生成するときに適用されるもので、仕様書ファイルからデータパターンの生成に必要な仕様書情報を取得して中間ファイルを生成する中間ファイル生成ステップと、外部ファイルに定義されたデータパターンの網羅条件を示す属性情報、並びに中間ファイルの仕様書情報を入力すると共に、仕様上有り得ない禁則パターンを含む過去のデータパターンを蓄積したデータパターン用データベース(DB)を参照して取得した過去のデータパターンと仕様書情報とを突合して差分を判定した結果、差分があれば属性情報並びに仕様書情報に基づいて過去のデータパターンを反映させて新たなデータパターンを生成して出力し、差分がなければ過去のデータパターンをそのまま新たなデータパターンとして出力するデータパターン生成ステップと、生成された新たなデータパターンを端末処理して特定したテストで確認したい他の新たなデータパターンを入力して過去のテストデータを蓄積したテストデータ用データベース(DB)を入力元としてデータ生成するか否かを判定した結果、入力元とすれば新規項目又は変更したい項目がなければ過去のテストデータをそのまま新たなテストデータとして出力し、新規項目又は変更したい項目があれば手作業か、或いは初期値ファイルから取得した初期値情報に基づいて新たなテストデータを生成して出力し、入力元としなければ手作業での全項目のデータ設定か、或いは初期値ファイルから取得した初期値情報に基づいて新たなテストデータを生成して出力し、更に、他の新たなデータパターンを加工したことに伴い別の新たなデータパターンを出力するテストデータ生成ステップと、別の新たなデータパターンの出力、並びに新たなテストデータの出力に応じてデータパターン用データベースの過去のデータパターンとテストデータ用データベースの過去のテストデータとを更新する更新ステップと、を有するものである。
但し、ここでのテストデータ生成ステップは、データパターン生成ステップで生成した新たなデータパターンを示す第1のデータパターンに対して外部の端末装置からの操作指示に応じて端末処理を行って生成された他の新たなデータパターンを示す第2のデータパターンを対象にして新たなテストデータを生成するものであることが好ましい。さらに、テストデータ生成ステップは、初期値ファイルから取得した初期値情報に基づいて第2のデータパターンを対象にして新たなテストデータを生成すると共に、チェックリスト、並びに別の新たなデータパターンを示す第3のデータパターンを生成するものであり、更新ステップは、チェックリストを蓄積するチェックリスト用データベース(DB)のチェックリストを更新すると共に、第3のデータパターンに基づいてデータパターン用データベース(DB)の過去のデータパターンを更新することが好ましい。
以下、本発明の実施形態によるデータパターン/テストデータ生成・蓄積方法及びシステムを図面により詳細に説明する。
図1は、本発明の一実施形態に係るデータパターン/テストデータ生成・蓄積システム100の基本構成を動作環境全体を含めて示した概要図である。
このデータパターン/テストデータ生成・蓄積システム100は、上述したデータパターン/テストデータ生成・蓄積方法を具現したもので、データパターンとして、仕様上有り得ない禁則パターンを含む過去のデータパターンを蓄積したデータパターン用DB6と、過去のテストデータを蓄積したテストデータ用DB12とを備えている。なお、データパターン/テストデータ生成・蓄積システム100は、よく知られている情報処理装置が持つ基本的な構成部分、すなわち、CPU、主メモリ、HDD等による記憶装置、表示装置、キーボードマウス等の入出力装置を備えて構成されている。
また、データパターン/テストデータ生成・蓄積システム100は、仕様書ファイル1からデータパターンの生成に必要な仕様書情報を取得して中間ファイル3を生成する情報取得部2と、外部ファイル5に定義されたデータパターンの網羅条件を示す属性情報、並びに中間ファイル3の仕様書情報を入力すると共に、データパターン用DB6を参照して取得した過去のデータパターンと仕様書情報とを突合して差分を判定した結果、差分があれば属性情報並びに仕様書情報に基づいて過去のデータパターンを反映させて新たなデータパターンを生成して出力し、差分がなければ過去のデータパターンをそのまま新たなデータパターンとして出力するデータパターン生成部4と、生成された新たなデータパターンが端末処理されて特定されたテストで確認したい他の新たなデータパターンを入力して過去のテストデータを蓄積したテストデータ用DB12を入力元としてデータ生成するか否かを判定した結果、入力元とすれば新規項目又は変更したい項目がなければ過去のテストデータをそのまま新たなテストデータとして出力し、新規項目又は変更したい項目があれば手作業か、或いは初期値ファイル13から取得した初期値情報に基づいて新たなテストデータを生成して出力し、入力元としなければ手作業での全項目のデータ設定か、或いは初期値ファイル13から取得した初期値情報に基づいて新たなテストデータを生成して出力し、更に、他の新たなデータパターンを加工したことに伴い別の新たなデータパターンを出力するテストデータ生成部11と、別の新たなデータパターンの出力、並びに新たなテストデータの出力に応じてデータパターン用DB6の過去のデータパターンとテストデータ用DB12の過去のテストデータとを更新する更新処理部17と、データパターン生成部4で生成した新たなデータパターンに対して外部の端末装置9からの操作指示に応じて端末処理を行う端末処理部8と、を備えている。
このうち、端末処理部8は、端末装置9からの操作指示に応じて、データパターン生成部4で生成した新たなデータパターンを示す第1のデータパターン(データパターンファイルA7にファイルされる)に対して端末処理を行うことにより他の新たなデータパターンを示す第2のデータパターン(データパターンファイルB10にファイルされる)を生成する。なお、端末装置9についても、汎用的な情報処理装置としての基本構成部分を有するものである。
テストデータ生成部11は、データパターン生成部4で生成された新たなデータパターンのファイルであるデータパターンファイルA7の第1のデータパターンを端末処理部8で端末処理して得られた他の新たなデータパターンのファイルであるデータパターンファイルB10の第2のデータパターンを対象にしてテストデータ用DB12を参照して新たなテストデータ14を生成する。このとき、初期値ファイル13から取得した初期値情報に基づいてデータパターンファイルB10の第2のデータパターンを対象にして新たなテストデータ14を生成すると共に、チェックリスト15、並びに別の新たなデータパターンを示す第3のデータパターンを生成し、第3のデータパターンをファイルしたデータパターンファイルC16を生成する。
更新処理部17は、チェックリスト15を蓄積するチェックリスト用DB18のチェックリストを更新すると共に、データパターンファイルC16の情報である第3のデータパターンに基づいてデータパターン用DB6の情報である過去のデータパターン(データパターンファイルD19の情報)を更新する。
すなわち、図1に示すテストデータ及びデータパターン生成・蓄積システム100において、情報取得部2、データパターン生成部4、端末処理部8、テストデータ生成部11、及び更新処理部17は、能動的に働く構成部分であり、データパターン/テストデータ生成・蓄積システム100を構成する情報処理装置の主メモリ内にプログラムとしてロードされ、CPUに実行されるように構築される。
それ以外の中間ファイル3、データパターン用DB6、データパターンファイルA7、データパターンファイルB10、テストデータ用DB12、テストデータ14、チェックリスト15、データパターンファイルC16、及びチェックリスト用DB18は、受動的に働く構成部分となっており、HDDに格納されるものである。
そこで、以下は能動的に働く構成部分を中心として動作機能を説明する。但し、ここでは説明を簡単にするため、項目に対する属性のパターンを網羅しているものとし、また属性には数字9及び文字列Cしか存在しないものとして説明する。
図1において、情報取得部2は、仕様書ファイル1に設定されている仕様情報を取得し、中間ファイル3を生成する。
データパターン生成部4は、中間ファイル3、外部データファイル5、及びデータパターン用DB6に蓄積したデータパターンファイルD19の情報を取得し、属性のパターンを網羅したデータパターンファイルA7を生成する。
端末処理部8は、データパターンファイルA7の情報に基づいて、テストで確認したいデータパターンを決定し、データパターンファイルB10を生成する。このとき、必要に応じて外部の端末装置9との間で操作指定入力のデータが授受される。
テストデータ生成部11は、データパターンファイルB10、テストデータ用DB12、及び初期値ファイル13の情報を取得してテストデータの生成方法を選択し、テストデータ14及びチェックリスト15を生成すると共に、データパターンファイルC16を生成する。ここでも、必要に応じて外部の端末装置9との間で操作指定入力のデータが授受される。
更新処理部17は、テストデータ14、チェックリスト15、及びデータパターンファイルC16から取得した情報をテストデータ用DB12、チェックリスト用DB18、及びデータパターン用DB6にそれぞれ更新可能として格納する。
以下、データパターン生成及びテストデータ生成に寄与する各構成部分について、詳細に説明する。
図2−1は、情報取得部2へ提供される仕様書ファイル1の情報例を説明する図である。この仕様書ファイル1は、項目の情報を定義した仕様書となるもので、例えば項目とそれに対する属性、桁数、項目日本語名称、備考等の情報が各々定義されている。ここでは、特に項目、属性、及び桁数がデータパターン生成に必要な情報であるとする。情報取得部2は、こうした仕様書ファイル1を入力情報とし、項目、属性、及び桁数の情報を取得することが可能となっている。
図2−2は、情報取得部2で生成される中間ファイル3の情報例を説明する図である。この中間ファイル3は、情報取得部2により仕様書ファイル1から取得した情報に基づいて生成、出力されるもので、項目名、属性、及び桁数が関連付けられた形態となっている。
図2−3は、データパターン生成部4へ提供される外部ファイル5の情報例を説明する図である。外部ファイル5は、データパターンの網羅条件を定義するものである。一例として、項目に対する属性のパターンを網羅するため、外部ファイル5には、属性に関する情報を定義する。なお、本実施形態での全属性としては、上述したように数字9と文字列Cが定義されているものとする。
図2−4は、テストデータ生成部11へ提供される初期値ファイル13の情報例を説明する図である。初期値ファイル13は、項目に対する各属性の初期値を定義したものである。例えば数字9であれば「0」、文字列Cであれば「ア(半角カタカナ)」を初期値として定義している。
図3は、データパターン生成部4の動作処理を例示したフローチャートである。
(1)データパターン生成部4によるデータパターン生成処理は、最初に中間ファイル3、並びに外部ファイル5の情報入力を行う(ステップS1)。
(2)次に、データパターン生成部4は、データパターン用DB6におけるデータパターンファイルD19の情報を取得する。具体的には、データパターン用DB6から過去の開発で使用したデータパターンファイルD19の項目、属性、桁数の情報を取得する(ステップS2)。
(3)そこで、データパターン生成部4は、中間ファイル3とデータパターンファイルD19の情報を突合する処理を行った後、差分があるか否かの判定を行う。差分があるか否かの判定は、具体的には項目、属性、桁数の変更(追加、削除を含む)の有無の判断である(ステップS3、S4)。
(4)ステップS4の結果、差分がある(変更が有る)とき、例えば新規項目が追加された場合を想定すれば、外部ファイル5と中間ファイル3の情報に基づいてデータパターンファイルD19の情報を反映させてデータパターンファイルA7として出力し、ここでの処理を終了する(ステップS5)。
(5)ステップS4の結果、差分がない(変更が無い)とき、データパターンファイルD19の情報をそのままデータパターンファイルA7として出力し、ここでの処理を終了するする(ステップS6)。
図4は、テストデータ生成部11の動作処理を例示したフローチャートである。
(1)テストデータ生成部11によるテストデータ生成処理は、最初にデータパターンファイルB10の情報を入力した後、テストデータ用DB12の情報を入力元としてデータを生成するか否かの判定を行う(ステップS7、S8)。
(2)ステップS8の結果、テストデータ用DB12の情報を利用してテストデータ14を生成するとき、テストデータ生成部11は、引き続いてテストデータ用DB12にデータパターンファイルB10と一致するデータキーがあるかをキー検索し、キーがあるか否かの判定を行う(ステップS9)。
(3)ステップS9の結果、データキーがあるとき、テストデータ生成部11は、引き続いて新規項目またはデータ内容を変更したい項目があるか否かの判定により、新規に項目が追加されたか、或いはデータ内容を変更したい項目が存在するか否かを判定する(ステップS10)。
(4)ステップS10の結果、新規項目またはデータ内容を変更したい項目が存在するとき、テストデータ生成部11は、引き続いて新規項目またはデータ内容を変更したい項目を手作業で設定するか否かの判定を行う(ステップS11)。
(5)ステップS11の結果、手作業で新規項目またはデータ内容を変更したい項目のデータを生成するとき、端末装置9から開発者が任意に手作業でデータを設定して、テストデータ用DB12内の既存項目に対するデータと合わせて出力することにより、手作業でデータを設定して出力する処理を行う(ステップS12)。
(6)ステップS11の結果、手作業でデータを生成しないとき、初期値ファイル13の情報でデータを設定して出力する処理を行う。具体的には、初期値ファイル13の情報に従い、新規項目またはデータ内容を変更したい項目に対して初期値データを設定して、テストデータ用DB12内の既存項目と合わせて出力する(ステップS13)。
(7)一方、先のステップS10の結果、新規項目またはデータ内容を変更したい項目が存在しないとき、データキーに基づいて、テストデータ用DB12に蓄積された情報のテストデータをそのまま出力する(ステップS8)。
(8)他方、先のステップS8の結果、テストデータ用DB12を利用してテストデータ14を生成しないとき、並びに先のステップS9の結果、データキーがテストデータ用DB12の情報に存在しないときには、何れもその後は手作業で全項目のデータを設定するか否かの判定を行う(ステップS15)。
(9)ステップS15の結果、手作業で全項目のデータを設定するとき、手作業でデータを設定して出力し、手作業で全項目のデータを設定しないとき、初期値ファイル13の情報でデータを設定して出力する(ステップS16、S17)。
(10)上述した手作業でデータを設定して出力(ステップS12)する処理、初期値ファイル13の情報でデータを設定して出力(ステップS13)する処理、手作業でデータを設定して出力(ステップS16)する処理、初期値ファイル13の情報でデータを設定して出力(ステップS17)する処理を選択的に行った後、テストデータ生成部11は、テストデータに対する一意のデータキーを設定する処理を行う(ステップS18)。
(11)テストデータ生成部11は、先のステップS14、ステップS18の後、データパターンファイルC16を出力する処理を行い、処理を終了する。データパターンファイルC16の情報には、テストデータを生成した情報(データキーや実施回数)が反映されている(ステップS19)。
データパターン生成部4は、上述したように、情報取得部2で生成した中間ファイル3、並びにデータパターンの網羅条件が定義された外部ファイル5からの情報を入力とすると共に、データパターン用DB6からデータパターンファイルD19の情報を取得して中間ファイル3の情報と突合させ、突合結果に応じて、外部ファイル5の定義情報に基づいて、データパターンファイルD19の情報に反映させて属性を網羅したデータパターンを生成する。
図5は、データパターン生成部4で生成される属性を網羅したデータパターンの情報例を説明する図である。このデータパターンは、図2−1を参照して説明した仕様書ファイル1の項目の情報に対応するように属性の数字9及び文字列Cの組み合わせの情報から成る。
データパターン用DB6は、過去の開発で生成したデータパターンファイルD19の情報として、画面イメージ等を蓄積している。
図6−1は、データパターン用DB6のデータパターンファイルD19の情報例を説明する図である。データパターンファイルD19は、例えばデータパターンのそれぞれに対して、テストを実施した回数や、テストデータをテストデータ用DB12から抽出するための一意のデータキー情報(DBアドレス)といった情報を保持した画像イメージを示している。
図6−2は、データパターン生成部で生成直後のデータパターンファイルA7の情報例を説明する図である。このデータパターンファイルA7は、項目を追加していないため、データパターンファイルD19の情報をそのまま出力した画面イメージ(図6−1に示されるものと同一)となっている。
図6−3は、端末処理部8で処理途中前半のデータパターンファイルA7の情報例を説明する図である。このデータパターンファイルA7の画面イメージには、入力されるデータパターンファイルA7のデータパターンの情報として、テスト実施回数でソート、作成要否、作成数の入力を行ったことを示している。具体的には、テスト実施回数の多い順に並び替え、各々のデータパターンに対するテストデータ14の生成要否を任意に「○」、「×」で選択し、さらに例えば項番1のデータパターンに対してテストデータを新たにもう一つ生成したい場合、作成数「2」を入力した様子を示している。
図6−4は、端末処理部8で処理途中後半のデータパターンファイルA7の情報例を説明する図である。このデータパターンファイルA7の画面イメージには、先のデータパターンの情報に対するテストデータ14の生成要否及びテストデータ作成数を入力した後、さらに入力処理を行って項番1が項番1−1と項番1−2になった様子を示している。具体的には、項番1のデータパターンの情報に対して新たにもう一つテストデータを生成するため、項番1を項番1−1と項番1−2となるように拡張しており、それらの作成要否に「○」を、さらに項番1−1及び項番1−2の作成数に「1」を入力した上、項番1−2には「name」項目のデータにスペースを設定したい旨を備考欄に追加入力した様子を示している。
図6−5は、先述の端末処理部8で処理後のデータパターンファイルB10の情報例を説明する図である。このデータパターンファイルB10の画面イメージには、作成要否「○」のみ表示する様子を示している。具体的には、図6−4の項番3に示されるように、データパターンの情報に対してテストデータを生成しないため、生成要否に「×」と入力したデータパターンの情報については、非表示とした様子を示している。
図6−6は、テストデータ生成部11で処理後のデータパターンファイルC16の情報例を説明する図である。このデータパターンファイルC16の画面イメージには、テストデータ14を生成した後の情報をデータパターンファイルB10の情報に反映させることにより、実施回数がカウントされた様子を示している。具体的には、項番1−2に示されるように、テストデータ生成部11でテストデータ14を生成し、一意のデータキーを反映させると共に、テストデータ生成としたデータパターンの情報に対して各々の作成数にプラス1、カウントした数を反映させた様子を示している。
図6−7は、更新処理部17で更新後のデータパターンファイルD19の情報例を説明する図である。このデータパターンファイルD19の画面イメージには、テストデータ生成部11で出力されたデータパターンファイルC16の情報がデータパターン用DB6に蓄積されたデータパターンファイルD19(図6−1に示したもの)の情報に反映された様子を示している。具体的には、図6−1に示したデータパターンファイルC16と比べると、項番1を項番1−1と項番1−2として拡張した情報が反映されており、実施回数も増加した様子を示している。
図7は、テストデータ生成部11で生成したテストデータ14の例を説明する図である。テストデータ14は、図2−1を参照して説明した仕様書ファイル1の項目の情報に対応するように、データパターン生成部4や端末処理部8での動作処理を反映した内容の情報を有している。
図8−1は、テストデータ用DB12内に蓄積された格納情報例を説明する図である。また、図8−2は、端末処理部8で更新した後のテストデータ用DB12内の格納情報例を説明する図である。これらの例では、図8−1に示されるテストデータ用DB12内に蓄積された格納情報に対して図8−2に示すような新規なテストデータを追加しており、具体的には、データキー「17」を追加している。
図9は、テストデータ生成部11で生成したチェックリスト15の情報例を説明する図である。チェックリスト15は、テストデータ生成部11で生成、出力されるものである。チェックリスト15自体は、例えば条件、確認観点、チェック日付のフォーマットから成るものである。このうち、条件や確認観点の情報は、データパターンファイルC16の情報を利用して転記するものである。チェック日付は、テストを実施した日付を記入するものである。
すなわち、端末処理部8は、データパターン生成部4で出力したデータパターンファイルA7の情報を入力すると共に、外部に接続された端末装置9を用いてテストデータ生成対象となるデータパターンを選択してデータパターンファイルB10を生成、出力する。端末装置9の画面上でデータパターンの選択条件を開発者に任意に指定し、例えば「テスト実施回数が3回以上」と指定した場合を想定する。このとき、端末処理部8は、端末処理としてテストを実施した回数が3回以上のデータパターンをデータパターンファイルA7から検索して自動で選択することができる他、開発者によりテスト観点等の情報から作成要否を任意に選択することが可能である。
また、端末処理部8は、同一のデータパターンで複数のテストデータを生成したいとき、そのデータパターンの情報に対する作成数を指定し、その数に合わせてデータキーや備考等の情報を設定する領域を追加することが可能である。例えば正常状態であるnameのデータ「ヤマダタロウ」と、システム上エラーとなるデータ「△△△・・・(スペース)」のテストデータとを生成したければ、データ作成数を2と指定し、データキーや備考等の情報を設定する領域を一つ追加すれば良い。さらに、端末処理部8は、例えば任意で複数のデータ間の相関を確認した旨を備考欄に入力したとき、その情報を参照することができる。
テストデータ生成部11は、端末処理部8で生成、出力したデータパターンファイルB10の第2のデータパターンを入力し、生成したい第3のデータパターンに対して各々テストデータ生成方法を指定することができ、その指定内容により例えば図7に示したようなテストデータ14を生成して更新処理部17へ出力する。また、テストデータ生成部11は、新たに生成したテストデータ14に対して一意のデータキーを与え、データパターンファイルB10の第2のデータパターンにデータキーを反映させた第3のデータパターンを生成してデータパターンファイルC16にファイルし更新処理部17へ出力する。さらに、テストデータ生成部11は、テストデータ14、及び対象とする第2のデータパターンに基づいて、例えば図9に示したようなチェックリスト15を生成更新処理部17へ出力する。
更新処理部17は、テストデータ生成部11で生成されたテストデータ14、チェックリスト15の情報をそれぞれテストデータ用DB12、チェックリストDB18に対して更新可能に格納する。また、更新処理部17は、データパターンファイルC16の情報をデータパターンファイルDB6に格納されているデータパターンファイルD19の情報に反映させて更新可能に格納する。
このような構成の本実施形態のデータパターン/テストデータ生成・蓄積システム100によれば、過去に蓄積されたデータパターンファイルの情報やテストデータを利用してテストデータを生成しているため、効率良く、信頼性の高いテストデータを生成することができる。また、テストデータは、仕様上有り得ない禁則パターンを含む全データパターンの情報に基づいて生成されるため、テスト漏れを回避できる。さらに、蓄積されたテストデータは、次回にテスト対象を選択する際の判断材料として提供し、テスト実施者が有効に簡便利用できる。
なお、上述した本実施形態に係るデータパターン/テストデータ生成・蓄積システム100の基本構成、並びに各模式図に例示した細部情報は、あくまでも一形態に関するものであって、これらは容易に変更可能であるため、本発明は開示した一実施形態のものに限定されない。例えば、前述した本発明の実施形態での各処理は、プログラムにより構成し、本発明が備えるCPUに実行させることができ、また、それらのプログラムは、FD、CDROM、DVD等の記録媒体に格納して提供することができ、またネットワークを介してディジタル情報により提供することができる。
本発明の一実施形態に係るデータパターン/テストデータ生成・蓄積システムの基本構成を動作環境全体を含めて示した概要図である。 図1に示すシステムに備えられる情報取得部へ提供される仕様書ファイルの情報例を説明する図である。 図1に示すシステムに備えられる情報取得部で生成される中間ファイルの情報例を説明する図である。 図1に示すシステムに備えられるデータパターン生成部へ提供される外部ファイルの情報例を説明する図である。 図1に示すシステムに備えられるテストデータ生成部へ提供される初期値ファイルの情報例を説明する図である。 図1に示すシステムに備えられるデータパターン生成部の動作処理を例示したフローチャートである。 図1に示すシステムに備えられるテストデータ生成部の動作処理を例示したフローチャートである。 図1に示すシステムに備えられるデータパターン生成部で生成される属性を網羅したデータパターンの情報例を説明する図である。 図1に示すシステムに備えられるデータパターン用DBのデータパターンファイルDの情報例を説明する図である。 図1に示すシステムに備えられるデータパターン生成部で生成直後のデータパターンファイルAの情報例を説明する図である。 図1に示すシステムに備えられる端末処理部で処理途中前半のデータパターンファイルAの情報例を説明する図である。 図1に示すシステムに備えられる端末処理部で処理途中後半のデータパターンファイルAの情報例を説明する図である。 図1に示すシステムに備えられる端末処理部で処理後のデータパターンファイルBの情報例を説明する図である。 図1に示すシステムに備えられるテストデータ生成部で処理後のデータパターンファイルCの情報例を説明する図である。 図1に示すシステムに備えられる更新処理部で更新後のデータパターンファイルDの情報例を説明する図である。 図1に示すシステムに備えられるテストデータ生成部で生成したテストデータの例を説明する図である。 図1に示すシステムに備えられるテストデータ用DB内に蓄積された格納情報例を説明する図である。 図1に示すシステムに備えられる端末処理部で更新した後のテストデータ用DB内の格納情報例を説明する図である。 図1に示すシステムに備えられるテストデータ生成部で生成したチェックリストの情報例を説明する図である。
符号の説明
1 仕様書ファイル
2 情報取得部
3 中間ファイル
4 データパターン生成部
5 外部ファイル
6 データパターン用DB
7 データパターンファイルA
8 端末処理部
9 端末装置
10 データパターンファイルB
11 テストデータ生成部
12 テストデータ用DB
13 初期値ファイル
14 テストデータ
15 チェックリスト
16 データパターンファイルC
17 更新処理部
18 チェックリスト用DB
19 データパターンファイルD
100 データパターン/テストデータ生成・蓄積システム

Claims (6)

  1. システム開発でプログラミングされたプログラムをテストする工程で用いられるテストデータ生成用のデータパターンを対象にしてテストデータを生成するときに適用されるデータパターン/テストデータ生成・蓄積方法であって、
    仕様書ファイルから前記データパターンの生成に必要な仕様書情報を取得して中間ファイルを生成する中間ファイル生成ステップと、
    外部ファイルに定義された前記データパターンの網羅条件を示す属性情報、並びに前記中間ファイルの前記仕様書情報を入力すると共に、仕様上有り得ない禁則パターンを含む過去のデータパターンを蓄積したデータパターン用データベースを参照して取得した当該過去のデータパターンと当該仕様書情報とを突合して差分を判定した結果、差分があれば当該属性情報並びに当該仕様書情報に基づいて当該過去のデータパターンを反映させて新たなデータパターンを生成して出力し、差分がなければ当該過去のデータパターンをそのまま新たなデータパターンとして出力するデータパターン生成ステップと、
    前記生成された新たなデータパターンを端末処理して特定したテストで確認したい他の新たなデータパターンを入力して過去のテストデータを蓄積したテストデータ用データベースを入力元としてデータ生成するか否かを判定した結果、入力元とすれば新規項目又は変更したい項目がなければ当該過去のテストデータをそのまま新たなテストデータとして出力し、当該新規項目又は当該変更したい項目があれば手作業か、或いは初期値ファイルから取得した初期値情報に基づいて新たなテストデータを生成して出力し、入力元としなければ手作業での全項目のデータ設定か、或いは当該初期値ファイルから取得した当該初期値情報に基づいて新たなテストデータを生成して出力し、更に、前記他の新たなデータパターンを加工したことに伴い別の新たなデータパターンを出力するテストデータ生成ステップと、
    前記別の新たなデータパターンの出力、並びに前記新たなテストデータの出力に応じて前記データパターン用データベースの前記過去のデータパターンと前記テストデータ用データベースの前記過去のテストデータとを更新する更新ステップと、を有することを特徴とするデータパターン/テストデータ生成・蓄積方法。
  2. 請求項1記載のデータパターン/テストデータ生成・蓄積方法において、前記テストデータ生成ステップは、前記データパターン生成ステップで生成した前記新たなデータパターンを示す第1のデータパターンに対して外部の端末装置からの操作指示に応じて前記端末処理を行って生成された前記他の新たなデータパターンを示す第2のデータパターンを対象にして前記新たなテストデータを生成するものであることを特徴とするデータパターン/テストデータ生成・蓄積方法。
  3. 請求項2記載のデータパターン/テストデータ生成・蓄積方法において、前記テストデータ生成ステップは、前記初期値ファイルから取得した前記初期値情報に基づいて前記第2のデータパターンを対象にして前記新たなテストデータを生成すると共に、チェックリスト、並びに前記別の新たなデータパターンを示す第3のデータパターンを生成するものであり、前記更新ステップは、前記チェックリストを蓄積するチェックリスト用データベースの当該チェックリストを更新すると共に、前記第3のデータパターンに基づいて前記データパターン用データベースの前記過去のデータパターンを更新することを特徴とするデータパターン/テストデータ生成・蓄積方法。
  4. システム開発でプログラミングされたプログラムをテストする工程で用いられるテストデータ生成用のデータパターンを対象にしてテストデータを生成するときに適用されるデータパターン/テストデータ生成・蓄積システムであって、
    前記データパターンとして、仕様上有り得ない禁則パターンを含む過去のデータパターンを蓄積したデータパターン用データベースと、過去のテストデータを蓄積したテストデータ用データベースと、仕様書ファイルから前記データパターンの生成に必要な仕様書情報を取得して中間ファイルを生成する情報取得部と、外部ファイルに定義された前記データパターンの網羅条件を示す属性情報、並びに前記中間ファイルの前記仕様書情報を入力すると共に、前記データパターン用データベースを参照して取得した前記過去のデータパターンと当該仕様書情報とを突合して差分を判定した結果、差分があれば当該属性情報並びに当該仕様書情報に基づいて当該過去のデータパターンを反映させて新たなデータパターンを生成して出力し、差分がなければ当該過去のデータパターンをそのまま新たなデータパターンとして出力するデータパターン生成部と、前記生成された新たなデータパターンが端末処理されて特定されたテストで確認したい他の新たなデータパターンを入力して過去のテストデータを蓄積したテストデータ用データベースを入力元としてデータ生成するか否かを判定した結果、入力元とすれば新規項目又は変更したい項目がなければ当該過去のテストデータをそのまま新たなテストデータとして出力し、当該新規項目又は当該変更したい項目があれば手作業か、或いは初期値ファイルから取得した初期値情報に基づいて新たなテストデータを生成して出力し、入力元としなければ手作業での全項目のデータ設定か、或いは当該初期値ファイルから取得した当該初期値情報に基づいて新たなテストデータを生成して出力し、更に、前記他の新たなデータパターンを加工したことに伴い別の新たなデータパターンを出力するテストデータ生成部と、前記別の新たなデータパターンの出力、並びに前記新たなテストデータの出力に応じて前記データパターン用データベースの前記過去のデータパターンと前記テストデータ用データベースの前記過去のテストデータとを更新する更新処理部と、を備えたことを特徴とするデータパターン/テストデータ生成・蓄積システム。
  5. 請求項4記載のデータパターン/テストデータ生成・蓄積システムにおいて、前記データパターン生成部で生成した前記新たなデータパターンを示す第1のデータパターンに対して外部の端末装置からの操作指示に応じて端末処理を行う端末処理部を備え、前記端末処理部は、前記データパターン生成部で生成した前記第1のデータパターンに対して前記端末処理を行うことにより前記他の新たなデータパターンを示す第2のデータパターンを生成することを特徴とするデータパターン/テストデータ生成・蓄積システム。
  6. 請求項5記載のデータパターン/テストデータ生成・蓄積システムにおいて、前記テストデータ生成部は、前記初期値ファイルから取得した前記初期値情報に基づいて前記第2のデータパターンを対象にして前記新たなテストデータを生成すると共に、チェックリスト、並びに前記別の新たなデータパターンを示す第3のデータパターンを生成するものであり、前記更新処理部は、前記チェックリストを蓄積するチェックリスト用データベースの当該チェックリストを更新すると共に、前記第3のデータパターンに基づいて前記データパターン用データベースの前記過去のデータパターンを更新することを特徴とするデータパターン/テストデータ生成・蓄積システム。
JP2008314563A 2008-12-10 2008-12-10 データパターン/テストデータ生成・蓄積方法及びシステム Expired - Fee Related JP4977681B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008314563A JP4977681B2 (ja) 2008-12-10 2008-12-10 データパターン/テストデータ生成・蓄積方法及びシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008314563A JP4977681B2 (ja) 2008-12-10 2008-12-10 データパターン/テストデータ生成・蓄積方法及びシステム

Publications (2)

Publication Number Publication Date
JP2010140166A JP2010140166A (ja) 2010-06-24
JP4977681B2 true JP4977681B2 (ja) 2012-07-18

Family

ID=42350272

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008314563A Expired - Fee Related JP4977681B2 (ja) 2008-12-10 2008-12-10 データパターン/テストデータ生成・蓄積方法及びシステム

Country Status (1)

Country Link
JP (1) JP4977681B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6228418B2 (ja) * 2013-10-08 2017-11-08 株式会社日立製作所 試験仕様書生成装置、方法及びコンピュータプログラム
WO2018142477A1 (ja) 2017-01-31 2018-08-09 三菱電機株式会社 要求分析装置、要求分析方法および要求分析プログラム
CN113419774A (zh) * 2021-05-31 2021-09-21 西南电子技术研究所(中国电子科技集团公司第十研究所) 自动遍历被测产品不同测试参数的测试方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05134896A (ja) * 1991-11-11 1993-06-01 Toshiba Corp プログラムテストデータ自動作成装置
JP2005043931A (ja) * 2003-07-22 2005-02-17 Hitachi Ltd プログラム自動生成システム及びプログラム自動生成方法
JP4395761B2 (ja) * 2005-03-04 2010-01-13 日本電気株式会社 プログラムテスト支援装置およびその方法

Also Published As

Publication number Publication date
JP2010140166A (ja) 2010-06-24

Similar Documents

Publication Publication Date Title
CN108762743B (zh) 一种数据表操作代码生成方法及装置
JP2016048470A (ja) アプリケーションテスト支援装置、そのデータ処理方法、およびプログラム
JP2019021341A (ja) アプリケーションテスト支援装置、そのデータ処理方法、およびプログラム
JP4783235B2 (ja) Hmi開発支援装置、hmi開発支援方法およびプログラム
JP4977681B2 (ja) データパターン/テストデータ生成・蓄積方法及びシステム
JP2007323219A (ja) Fmea支援装置、その装置、そのプログラム及びその媒体
JP2006285707A (ja) 業務仕様作成支援システム及び方法
JP5045042B2 (ja) 業務フロー編集プログラム、業務フロー編集装置および業務フロー編集方法
JP6097231B2 (ja) プログラム生成装置および方法
JP2006163855A (ja) Webアプリケーション開発支援装置及び開発支援方法
JP2006209521A (ja) テスト項目自動生成装置
JPH02148168A (ja) 編集支援方法
JP4484148B2 (ja) Si対象ファイルおよびsi関連ファイル管理システム
JP2008117029A (ja) 運用作業手順作成時の不正手順チェックアウト方法、障害発生防止のためのコマンド生成方法、および自動実行コマンド生成システム、ならびにそのプログラム
JP6789776B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2009211143A (ja) 情報処理装置および情報処理プログラム
JP2009169731A (ja) マニュアル作成支援システム
JP2007034806A (ja) 情報処理装置及びプログラム
JP2009042951A (ja) プログラム中のデータ抽出方法及び装置
JP2007094453A (ja) プログラム開発支援システム、プログラム開発支援方法およびプログラム
JP5316273B2 (ja) プログラム自動生成装置およびプログラム自動生成方法
JP2007034807A (ja) 情報処理装置及びプログラム
JP2008234379A (ja) ソフトウェア生成装置ならびにソフトウェア生成方法
US7743076B2 (en) Extensible action sequences coordinating independently created components
JP2006268292A (ja) テンプレート編集装置およびテンプレート編集用プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110816

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110912

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20111208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120223

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120403

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120416

R150 Certificate of patent or registration of utility model

Ref document number: 4977681

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150420

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees