JP2006227820A - プログラムテストシステム及びプログラムテスト方法 - Google Patents
プログラムテストシステム及びプログラムテスト方法 Download PDFInfo
- Publication number
- JP2006227820A JP2006227820A JP2005039487A JP2005039487A JP2006227820A JP 2006227820 A JP2006227820 A JP 2006227820A JP 2005039487 A JP2005039487 A JP 2005039487A JP 2005039487 A JP2005039487 A JP 2005039487A JP 2006227820 A JP2006227820 A JP 2006227820A
- Authority
- JP
- Japan
- Prior art keywords
- test
- program
- data
- test data
- virtual table
- 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.)
- Pending
Links
Images
Abstract
【課題】 プログラムテストの所要時間を短縮し、自動化する。
【解決手段】 データ生成プログラム50により、オリジナルデータ60から実テーブル110〜130を生成し、データベース40に記憶させる(S1)。これにより、テストの準備が完了する。テストプログラム10は、テスト手順に基づいて、テストに使用する実テーブルを選択し、データ切替プログラム30に指示を出す(S2)。データ切替プログラム30は、指定された実テーブルについて仮想テーブル100を生成する(S3)。仮想テーブル100は、選択された実テーブルのシノニムとして生成される。テストプログラム10は、テスト対象のアプリケーションプログラム20にテスト実行を指示する(S4)。プログラム20は、仮想テーブル100を介して実テーブルにアクセスする(S5,S6)。テストプログラム10は、プログラム20の処理結果を取得し、検証可能である(S7)。
【選択図】 図1
【解決手段】 データ生成プログラム50により、オリジナルデータ60から実テーブル110〜130を生成し、データベース40に記憶させる(S1)。これにより、テストの準備が完了する。テストプログラム10は、テスト手順に基づいて、テストに使用する実テーブルを選択し、データ切替プログラム30に指示を出す(S2)。データ切替プログラム30は、指定された実テーブルについて仮想テーブル100を生成する(S3)。仮想テーブル100は、選択された実テーブルのシノニムとして生成される。テストプログラム10は、テスト対象のアプリケーションプログラム20にテスト実行を指示する(S4)。プログラム20は、仮想テーブル100を介して実テーブルにアクセスする(S5,S6)。テストプログラム10は、プログラム20の処理結果を取得し、検証可能である(S7)。
【選択図】 図1
Description
本発明は、プログラムテストシステム及びプログラムテスト方法に関する。
例えば、ウェブアプリケーションプログラムのようなプログラム製品は、概要設計、基本設計及び詳細設計等を経てプログラムコードが作成される。そして、このプログラム製品は、種々のテストによって動作が検証され、必要な修正が行われた後で製品として出荷され、実際に使用される。
プログラム製品が正常に動作するか否かをテストするために、プログラム製品は、データベースに接続される。プログラム製品は、データベースに格納されたデータを用いて処理を行う。この処理結果を解析することにより、プログラム製品に修正が必要か否か等を判断することができる(特許文献1)。
特開2004−220356号公報
プログラム製品にテスト用のデータを供給する方法としては、例えば、テスト実施者が人為的にテストデータを作成し、このテストデータをデータベースにセットする方法や、既に稼働している実アプリケーションプログラムで使用されている実データの全部または一部をテストデータとして使用する方法が知られている。
また、テストの自動化を考慮して、例えば、CSV(Comma Separated Values)形式やXML(eXtensible Markup Language)形式等のテストファイルを予め用意しておき、このテストファイルをデータベースにインポートさせる方法も知られている。
しかし、テストデータを人為的に用意する場合は、異なる処理結果が得られるように複数種類のテストデータをそれぞれ作成しなければならず、しかも手動操作でデータを入れ替える必要がある。従って、テスト作業の作業性が低く、効率的にプログラムをテストすることができない。
これに対し、例えば、実在のデータを用いてCSV形式のファイルを生成し、データベースにインポートする場合は、人為的にテストデータを作成する手間がいらず、作業性は若干改善される。しかし、この場合でも、テスト実施者によるデータファイルのインポート作業やデータ切替時のデータ消去作業に手間がかかるため、作業効率が低い。
プログラム製品をテストする場合は、できるだけ多種類のテストデータを用いて、多方面から繰り返しテストを行うことが好ましい。従来技術では、各回のテストの作業性が低いため、テスト作業の完了までに長時間を必要とする。また、テスト中は、テスト実施者の存在を必要とするため、プログラム製品のテストに要するコストも増大する。
そこで、本発明の目的は、効率的にプログラムのテストを行うことができるようにしたプログラムテストシステム及びプログラムテスト方法を提供することある。本発明の他の目的は、プログラムのテストを自動的に、かつ比較的短時間で行うことができるようにしたプログラムテストシステム及びプログラムテスト方法を提供することにある。本発明の更なる目的は、後述する実施形態の記載から明らかになるであろう。
上記課題を解決すべく、本発明の一つの観点に従うプログラムテストシステムは、複数種類のテストデータを記憶するデータベースと、予め設定されたテスト条件に基づいて、データベースに記憶された各テストデータをテスト対象プログラムにそれぞれ供給し、テスト対象プログラムに所定の処理を実行させるテスト制御部と、テスト制御部からの指示に基づいて、テスト対象プログラムによりアクセスされる仮想テーブルを各テストデータのいずれか一つと論理的に接続させるテストデータ切替部と、を備える。
ここで、テストデータとは、テスト対象プログラムをテストするために使用されるデータであり、例えば、テーブル形式のデータセットとして構築することができる。テストデータは、例えば、テストデータ生成部によって生成可能である。テストデータ生成部は、テスト条件に基づいて、オリジナルデータから各テストデータをそれぞれ生成し、これら生成した各テストデータをデータベースにそれぞれ記憶させることができる。テスト条件とは、例えば、テスト項目や各テスト項目で使用するテストデータの種類等のような、テストに必要な条件や手順を示す情報である。所定の処理とは、テスト対象プログラムによって実行される一つまたは複数の情報処理を意味する。テスト対象プログラムは、単体プログラムとして構成することもできるし、複数の単体プログラムを結合または連携させたプログラムとして構成することもできる。
仮想テーブルとは、テスト対象プログラムによってアクセスされる仮想的なテーブルであり、その実体は存在しない。仮想テーブルは、実体であるテストデータにアクセスするための窓口である。つまり、テスト対象プログラムの直接のアクセス先は、仮想テーブルであるが、アクセス対象のテストデータは仮想テーブルとは異なる別の物理的な記憶位置に記憶されている。
仮想テーブルは、例えば、データベース技術で使用されるシノニムやエイリアス等のような代替名技術を用いることにより、実現可能である。即ち、テストデータ切替部は、各テストデータのうちテスト制御部により指示されたテストデータに基づいて仮想テーブルを生成させることができる。あるいは、仮想テーブルと実際のデータを記憶するテーブルとをマッピングすることにより、仮想テーブルを介してテスト対象プログラムにテストデータを供給することもできる。
テストデータ切替部は、テスト制御部から各テストデータの切替を指示される度に、既に生成されている仮想テーブルを削除し、テスト制御部から指示されたテストデータに基づいて仮想テーブルを新たに生成させることもできる。つまり、各テストデータ毎にそれぞれ異なる仮想テーブルが生成され、いずれか一つの仮想テーブルがテスト対象プログラムのアクセス先として使用される。
本発明の他の観点に従うプログラムテスト方法は、予め設定されたテスト条件に基づいて、オリジナルデータから複数種類のテストデータをそれぞれ生成し、これら生成した各テストデータをデータベースにそれぞれ記憶させるステップと、テスト条件に基づいて、各テストデータのうちテスト対象プログラムに供給すべきテストデータを選択するステップと、テスト対象プログラムによりアクセスされる仮想テーブルを、選択されたテストデータに基づいて生成するステップと、仮想テーブルを介してアクセスされる前記選択されたテストデータを用いて、テスト対象プログラムに所定の処理を実行させるステップと、テスト対象プログラムによる所定の処理の実行結果を記憶するステップと、を含む。
本発明の機能、手段、ステップの全部または一部は、例えば、マイクロコンピュータにより実行されるコンピュータプログラムとして構成可能な場合がある。そして、このコンピュータプログラムは、例えば、ハードディスク、光ディスク、半導体メモリ等の記憶媒体に固定して配布することができる。または、コンピュータプログラムをインターネット等の通信ネットワークを介して、配信することもできる。
以下、図面に基づき、本発明の実施の形態を説明する。本実施形態では、以下に詳述するように、複数種類のテストデータ(110-130)を記憶するデータベース(40)と、予め設定されたテスト条件(11)に基づいて、データベース(40)に記憶された各テストデータ(110-130)をテスト対象プログラム(20)にそれぞれ供給し、テスト対象プログラム(20)に所定の処理を実行させるテスト制御部(10)と、テスト制御部(10)からの指示に基づいて、テスト対象プログラム(20)によりアクセスされる仮想テーブル(100)を各テストデータ(110-130)のいずれか一つと論理的に接続させるテストデータ切替部(30)と、を備えたプログラムテストシステムが開示される。
また、本システムは、テスト条件(11)に基づいて、オリジナルデータ(60)から各テストデータ(110-130)をそれぞれ生成し、これら生成した各テストデータ(110-130)をデータベース(40)にそれぞれ記憶させるテストデータ生成部(50)を備えている。
図1は、プログラムテストシステムの全体構成を示すブロック図である。このシステムは、例えば、テストプログラム10と、アプリケーションプログラム20と、データ切替プログラム30と、データベース40と、データ生成プログラム50と、オリジナルデータ60とを備えて構成することができる。
テストプログラム10は、アプリケーションプログラム(以下、「プログラム」)20のテストを行うためのプログラムである。プログラム20は、例えば、ウェブアプリケーションに利用されるプログラムである。より具体的には、例えば、プログラム20は、顧客管理プログラム、社員管理プログラム、売上げ管理プログラム、在庫管理プログラム、利息計算プログラム、予約管理プログラム、財務管理プログラム等のような種々のアプリケーションプログラムとして生成される。
データ切替プログラム30は、プログラム20に供給するテスト用のデータセットを切り替えるためのプログラムであり、テストプログラム10により使用される。データベース40は、プログラム20によって使用されるテスト用データを格納した複数種類の実テーブル110,120,130がそれぞれ記憶されている。
データ生成プログラム50は、例えば、図外の他のアプリケーションプログラムにより使用されている既存のオリジナルデータ60に基づいて、実テーブル110〜130をそれぞれ生成する。オリジナルデータ60は、本システムとは異なる別のコンピュータシステム内に存在してもよい。即ち、データ生成プログラム50は、例えば、通信ネットワークを介して他のデータベースにアクセスし、そのデータベースから取得したデータセットに基づいて実テーブル110〜130をそれぞれ生成することもできる。
また、データ生成プログラム50は、実テーブル110〜130の全部または一部を自動的に生成可能である。テスト実施者がデータ生成プログラム50を利用して、半自動的に実テーブル110〜130を生成する構成でもよい。データ生成プログラム50は、テストプログラム10からの指示に基づいて作動する構成でもよく、テストプログラム10とは独立してデータ生成プログラム50のみを単独で作動させる構成でもよい。
仮想テーブル100と実テーブル110〜130との関係はさらに後述するが、仮想テーブル100は、例えば、実テーブル110〜130のシノニムとして生成することができる。仮想テーブル100は、実テーブル110〜130へアクセスするための窓口であり、実テーブル110〜130と論理的に接続されている。仮想テーブル100は、各実テーブル110〜130のそれぞれについて、一対一で生成される。本実施例では、実テーブル110に対応する仮想テーブル101と、実テーブル120に対応する仮想テーブル102と、実テーブル130に対応する仮想テーブル103の全体を総称して、仮想テーブル100と呼ぶ。
先に全体動作の概要を説明すると、まず最初に、データ生成プログラム50を用いて、オリジナルデータ60から実テーブル110〜130を生成し、実テーブル110〜130をデータベース40に記憶させる(S1)。実テーブル110〜130をデータベース40に記憶させることにより、テスト開始の準備が完了する。
次に、テストプログラム10は、テスト手順に基づいて、テストに使用する実テーブル110を選択し、データ切替プログラム30に指示を出す(S2)。データ切替プログラム30は、テストプログラム10から指定された実テーブルについて仮想テーブル100を生成する(S3)。
テストプログラム10は、仮想テーブル100を生成させた後、プログラム20に対して情報処理の実行を指示する(S4)。プログラム20は、仮想テーブル100を介して実テーブルにアクセスし(S5)、実テーブルからデータを読出し(S6)、この読出したデータを処理する。例えば、プログラム20は、所定の検索条件を満たすデータ群を実テーブルから読出し、このデータ群を所定の順序で配置して画面を生成する。
テストプログラム10は、プログラム20の処理結果を取得し、その処理結果について評価することができる(S7)。例えば、テストプログラム10は、その実テーブルを用いた場合に予測される処理結果との差分を算出することができる。あるいは、処理結果の自動的な評価を行わず、単に処理結果を記憶するだけでもよい。
図2は、本システムとコンピュータ資源との関係を模式的に示す説明図である。本システムは、少なくとも一つ以上のコンピュータシステムを用いて構成可能である。コンピュータシステムは、ハードウェア資源及びソフトウェア資源を備えている。ハードウェア資源としては、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)やRAM(Random Access Memory)等の内部記憶装置、HDD(Hard Disk Drive)等の補助記憶装置、通信インターフェース等を挙げることができる。ソフトウェア資源としては、例えば、OS(Operating System)、デバイスドライバ、ファイルシステム、その他のプログラムモジュール等を挙げることができる。
補助記憶装置220には、例えば、種々のプログラムデータ221とデータ群222とが記憶されている。このプログラムデータ221をデータ処理装置210が読み込んで実行することにより、テストプログラム10,プログラム20,データ切替プログラム30及びデータ生成プログラム50の各機能がそれぞれ実現される。
内部記憶装置230には、例えば、データベース40を構築することができる。データベース40は、補助記憶装置220に記憶されたデータ群を管理する。なお、データベース40の少なくとも一部を、補助記憶装置220内に構築することもできる。
プログラム20は、既に述べたように、単体プログラムとして構成してもよいし、図2に示すように、複数のプログラムを結合または連携させた多層のプログラム集合体として構成することもできる。例えば、プログラム20は、ユーザインターフェース(UI)層21と、イベントハンドラ層22と、ロジック層23と、データアクセス層24とから複数階層の構造で構成することもできる。
UI層21は、例えば、ウェブブラウザ等への情報の出力及びウェブブラウザ等からの情報入力を行うためのプログラムである。イベントハンドラ層22は、例えば、ユーザによる画面操作等のようなUI層21で生じたイベント(ユーザ要求)を検出するためのプログラムである。ロジック層23は、例えば、データのチェックや演算等を行うためのプログラムである。データアクセス層24は、例えば、データベース40へのデータ入出力を行うためのプログラムである。なお、これら各層21〜24は、それぞれ複数のプログラムから構成することができる。
図3は、テスト管理テーブル11とオリジナルデータ60及び実テーブル110〜130との関係を模式的に示す説明図である。
テスト管理テーブル11は、テストプログラム10により使用される。テスト管理テーブル11には、プログラム20のテストを制御するための情報が記憶される。例えば、テスト管理テーブル11は、テスト項目と、テスト内容と、そのテスト項目で使用されるシノニム名と、そのテスト項目で使用される実テーブル名と、そのテスト項目のテスト結果とをそれぞれ対応付けることにより、構成することができる。ここで、シノニム名は仮想テーブルを特定するための仮想テーブル識別情報と、実テーブル名は実テーブルを特定するための実テーブル識別情報と、それぞれ呼び変えることもできる。
テスト管理テーブル11は、テストプログラム10により使用される。テスト管理テーブル11には、プログラム20のテストを制御するための情報が記憶される。例えば、テスト管理テーブル11は、テスト項目と、テスト内容と、そのテスト項目で使用されるシノニム名と、そのテスト項目で使用される実テーブル名と、そのテスト項目のテスト結果とをそれぞれ対応付けることにより、構成することができる。ここで、シノニム名は仮想テーブルを特定するための仮想テーブル識別情報と、実テーブル名は実テーブルを特定するための実テーブル識別情報と、それぞれ呼び変えることもできる。
テストプログラム10は、例えば、テスト管理テーブル11に登録されている各テスト項目を上から順番に実行することができる。各テスト項目毎に、それぞれ異なるテストデータのセット(実テーブル)が使用される。あるいは、共通のテストデータセットを複数のテスト項目で共通に使用することもできる。
ここでは、第1番目のテスト項目に実テーブル110を、第2番目のテスト項目に実テーブル120を、第3番目のテスト項目に実テーブル130をそれぞれ使用する場合を例に挙げて説明する。他のテスト項目では、実テーブル110〜130のいずれかを使用するものとする。
そこで、テスト実施者は、テスト開始前に、予めオリジナルデータ60に基づいて、実テーブル110〜130をそれぞれ生成させ、データベース40に記憶させておく。オリジナルデータ60は、実テーブル110〜130と同様に、テーブルデータとして構成することができる。このテーブルは、例えば、カラム名と、型と、必須属性と、キーと、内容とをそれぞれ対応付けることにより、構成することができる。
カラム名には、例えば、氏名、年齢、性別、職業、職種、配偶者の有無、郵便番号、国名、都道府県名、市町村名、それ以外の詳細住所、電話番号、電子メールアドレス、銀行口座番号等がセットされる。型には、例えば、各カラムの内容として登録される情報が数字であるか文字であるか等を区別するための情報がセットされる。必須属性には、そのカラムの内容登録が必須であるか否かを示す情報がセットされる。キーは、検索時に使用される優先順位を示す情報がセットされる。内容には、カラムに登録される具体的な情報がセットされる。
実テーブル110〜130は、各テスト項目の意図に沿うように、オリジナルデータ60の一部を抽出することにより、生成することができる。実テーブル110〜130は、オリジナルデータ60と同一のテーブル構造を備えて生成することもできるし、オリジナルデータ60とは異なるテーブル構造で生成することもできる。また、実テーブル110〜130は、共通のオリジナルデータ60からそれぞれ生成することもできるし、それぞれ異なるオリジナルデータから生成することもできる。
図4は、オリジナルデータ60,実テーブル110〜130及び仮想テーブル101〜103の関係を模式的に示す説明図である。上述のように、実テーブル110〜130は、共通の又は異なるオリジナルデータ60から生成することができる。そして、各実テーブル110〜130にそれぞれ一対一で対応する仮想テーブル101〜103がそれぞれ生成される。実テーブル110のデータを利用する場合、プログラム20は、仮想テーブル101を介して実テーブル110にアクセスする。同様に、実テーブル120,130のデータを利用する場合、プログラム20は、仮想テーブル102,103を介して実テーブル120,130にアクセスする。
例えば、実テーブル110→実テーブル120→実テーブル130の順番で使用される場合、まず最初に仮想テーブル101が生成される。実テーブル110から実テーブル120へテストデータセットを切り替える場合、仮想テーブル101は削除され、仮想テーブル102が生成される。同様に、実テーブル120から実テーブル130へ切り替える場合、仮想テーブル102は削除され、仮想テーブル103が生成される。再び実テーブル110を使用する場合は、仮想テーブル103に代えて仮想テーブル101が新たに生成される。なお、仮想テーブルの削除とは、その仮想テーブルにアクセスするための情報(シノニム名)を消去等することを意味する。
図5は、テスト処理の全体概要を示すフローチャートである。まず、テスト実施者は、データ生成プログラム50を用いて、テストに使用する予定の実テーブル110〜130をそれぞれ生成し、データベース40に記憶させる(S11)。
テスト開始の準備が整うと、テスト実施者は、テスト開始をテストプログラム10に指示する。テストプログラム10は、データ切替プログラム30を呼び出し(S12)、既に作成済みの仮想テーブル100が存在するか否かを確認する(S13)。
既に作成済みの仮想テーブル100が存在する場合(S13:YES)、テストプログラム10は、データ切替プログラム30によって、その作成済みの仮想テーブル100を削除させる(S14)。なお、テスト開始直後は、まだ仮想テーブル100が生成されていないので、S13では「NO」と判定されてS15に移る。
テストプログラム10は、テスト管理テーブル11を参照し、実行すべきテスト項目に応じた実テーブルを選択する(S15)。テストプログラム10は、この選択した実テーブルをプログラム20が利用できるようにするために、データ切替プログラム30によって仮想テーブル100を生成させる(S16)。
テストプログラム10は、仮想テーブル100の生成を指示した後、プログラム20に対して情報処理の実行を指示する(S17)。テストプログラム10は、例えば、所定の地域に住んでいるユーザ全員を抽出させる等の処理の実行をプログラム20に対して指示する。
テストプログラム10は、プログラム20の処理結果(応答)を取得し、その内容を検証する(S18)。そして、テストプログラム10は、テスト管理テーブル11に登録されている全てのテスト項目についてテストを完了したか否かを判定する(S19)。
実施されていないテスト項目が残っている場合(S19:NO)、テストプログラム10は、S12に戻り、S12〜S18の各ステップを繰り返す。ここで、最初のテスト項目を実施するために既に仮想テーブル100がS16で生成されている。従って、S13では、「YES」と判定され、作成済みの仮想テーブル100は削除される(S14)。
図6は、テストプログラム10の一部を示す説明図である。このように、テストプログラム10は、データ切替プログラム30を呼び出し、シノニム名及び実テーブル名を指定することにより、データ切替プログラム30に仮想テーブル100を作成させる。また、テストプログラム10は、プログラム20に対して、テスト実行を指示する。
本実施例は、上述のように構成されるので、以下の効果を奏する。本実施例では、テスト対象のアプリケーションプログラム20に接続させる実テーブル110〜130を、仮想テーブル100を介して自動的に切り替える構成を採用した。従って、実テーブル110〜130を用意するだけで、以後のテストを自動的に実施することができ、プログラムテストの作業効率を向上させることができる。これにより、例えば、製品開発までに多数のテストが行われる比較的大規模なウェブアプリケーションプログラムについて、そのプログラムテストを効率的に行うことができ、開発工程を合理化することができる。
本実施例では、仮想テーブル100を介して、プログラム20と実テーブル110〜130を論理的に接続する構成とした。従って、テストデータをテスト用のデータベースにインポートする方式に比べて、テスト時間を短縮することができ、テスト作業の作業性を向上させることができる。本実施例では、インポート作業は不要であり、また、各回のテスト終了後に、インポートしたデータを消去する作業も行う必要がないためである。本実施例では、前回のテストで使用した仮想テーブルを削除し、次回のテストで使用する仮想テーブルを生成するだけでよく、テストに要する時間を短縮できる。
本実施例では、実テーブル110〜130のシノニム(仮想テーブル100)を生成し、プログラム20は、シノニムを介して実テーブル110〜130のいずれか一つにアクセスする構成とした。従って、比較的簡易な構成で、テスト作業の自動化及び効率改善を図ることができる。
本実施例では、オリジナルデータ60から実テーブル110〜130をそれぞれ生成するデータ生成プログラム50を備える構成とした。従って、テスト準備の段階も自動化または半自動化することができ、作業効率を向上させることができる。
図7に基づいて、第2実施例を説明する。本実施例では、共通の仮想テーブル100を各実テーブル110〜130とそれぞれ論理的に接続させる。図7は、仮想テーブル100と実テーブル110〜130の関係を示す模式図である。仮想テーブル100は、アプリケーションプログラム20からのアクセスを受け付ける共通の窓口であり、全ての実テーブル110〜130について共通に使用される。
仮想テーブル100と各実テーブル110〜130とは、データ切替プログラム30Aによって切替可能に接続される。データ切替プログラム30Aにより使用されるマッピングテーブル31には、仮想テーブル100と実テーブル110〜130とのマッピング関係が定義されている。このマッピングテーブル31を参照することにより、データ切替プログラム30Aは、仮想テーブル100へのアクセスを仮想テーブル100に接続された実テーブルに引き渡す。また、データ切替プログラム30Aは、テストプログラム10からの指示に基づいてマッピングテーブル31を書き換えることにより、仮想テーブル100を別の実テーブルに接続させることもできる。
このように構成される本実施例でも前記実施例と同様の効果を得られる。
このように構成される本実施例でも前記実施例と同様の効果を得られる。
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。例えば、当業者であれば、前記各実施例を適宜組み合わせることができる。
10…テストプログラム、11…テスト管理テーブル、20…アプリケーションプログラム、21…ユーザインターフェース層、22…イベントハンドラ層、23…ロジック層、24…データアクセス層、30,30A…データ切替プログラム、31…マッピングテーブル、40…データベース、50…データ生成プログラム、60…オリジナルデータ、100,101,102,103…仮想テーブル、110,120,130…実テーブル、210…データ処理装置、220…補助記憶装置、221…プログラムデータ、222…データ群、230…内部記憶装置
Claims (6)
- 複数種類のテストデータを記憶するデータベースと、
予め設定されたテスト条件に基づいて、前記データベースに記憶された前記各テストデータをテスト対象プログラムにそれぞれ供給し、前記テスト対象プログラムに所定の処理を実行させるテスト制御部と、
前記テスト制御部からの指示に基づいて、前記テスト対象プログラムによりアクセスされる仮想テーブルを前記各テストデータのいずれか一つと論理的に接続させるテストデータ切替部と、
を備えたプログラムテストシステム。 - 前記テスト条件に基づいて、オリジナルデータから前記各テストデータをそれぞれ生成し、これら生成した前記各テストデータを前記データベースにそれぞれ記憶させるテストデータ生成部をさらに備えた請求項1に記載のプログラムテストシステム。
- 前記テストデータ切替部は、前記各テストデータのうち前記テスト制御部により指示されたテストデータに基づいて前記仮想テーブルを生成させる請求項1に記載のプログラムテストシステム。
- 前記テストデータ切替部は、前記テスト制御部から前記各テストデータの切替を指示される度に、既に生成されている前記仮想テーブルを削除し、前記テスト制御部から指示されたテストデータに基づいて前記仮想テーブルを新たに生成させる請求項1に記載のプログラムテストシステム。
- 予め設定されたテスト条件に基づいて、オリジナルデータから複数種類のテストデータをそれぞれ生成し、これら生成した前記各テストデータをデータベースにそれぞれ記憶させるステップと、
前記テスト条件に基づいて、前記各テストデータのうちテスト対象プログラムに供給すべきテストデータを選択するステップと、
前記テスト対象プログラムによりアクセスされる仮想テーブルを、前記選択されたテストデータに基づいて生成するステップと、
前記仮想テーブルを介してアクセスされる前記選択されたテストデータを用いて、前記テスト対象プログラムに所定の処理を実行させるステップと、
前記テスト対象プログラムによる前記所定の処理の実行結果を記憶するステップと、
を含むプログラムテスト方法。 - 予め設定されたテスト条件に基づいて、データベースに記憶された各テストデータをテスト対象プログラムにそれぞれ供給し、前記テスト対象プログラムに所定の処理を実行させるテスト制御機能と、
前記テスト制御機能からの指示に基づいて、前記テスト対象プログラムによりアクセスされる仮想テーブルを前記各テストデータのいずれか一つと論理的に接続させるテストデータ切替機能と、
をコンピュータ上で実現させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005039487A JP2006227820A (ja) | 2005-02-16 | 2005-02-16 | プログラムテストシステム及びプログラムテスト方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005039487A JP2006227820A (ja) | 2005-02-16 | 2005-02-16 | プログラムテストシステム及びプログラムテスト方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006227820A true JP2006227820A (ja) | 2006-08-31 |
Family
ID=36989169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005039487A Pending JP2006227820A (ja) | 2005-02-16 | 2005-02-16 | プログラムテストシステム及びプログラムテスト方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006227820A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010123030A (ja) * | 2008-11-21 | 2010-06-03 | Fujitsu Ltd | 更新関数検証プログラム,更新関数検証方法及び情報処理装置 |
CN109783168A (zh) * | 2018-12-13 | 2019-05-21 | 平安科技(深圳)有限公司 | 个性化选择用户界面元素的方法、装置、介质、电子设备 |
JP2021077307A (ja) * | 2019-11-11 | 2021-05-20 | 財團法人資訊工業策進會 | テストデータ作成システムおよびテストデータ作成方法 |
-
2005
- 2005-02-16 JP JP2005039487A patent/JP2006227820A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010123030A (ja) * | 2008-11-21 | 2010-06-03 | Fujitsu Ltd | 更新関数検証プログラム,更新関数検証方法及び情報処理装置 |
CN109783168A (zh) * | 2018-12-13 | 2019-05-21 | 平安科技(深圳)有限公司 | 个性化选择用户界面元素的方法、装置、介质、电子设备 |
CN109783168B (zh) * | 2018-12-13 | 2023-07-18 | 平安科技(深圳)有限公司 | 个性化选择用户界面元素的方法、装置、介质、电子设备 |
JP2021077307A (ja) * | 2019-11-11 | 2021-05-20 | 財團法人資訊工業策進會 | テストデータ作成システムおよびテストデータ作成方法 |
JP6992039B2 (ja) | 2019-11-11 | 2022-01-13 | 財團法人資訊工業策進會 | テストデータ作成システムおよびテストデータ作成方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10565095B2 (en) | Hybrid testing automation engine | |
US6651240B1 (en) | Object-oriented software development support apparatus and development support method | |
CA2639549C (en) | Data mapping design tool | |
US8839107B2 (en) | Context based script generation | |
US11775262B2 (en) | Multi-technology visual integrated data management and analytics development and deployment environment | |
JPWO2006098031A1 (ja) | キーワード管理装置 | |
US20070204216A1 (en) | System and method for creating layouts using a layout editor | |
US8185562B2 (en) | Business object browser for business query language | |
JP2019525373A (ja) | テストケースの生成方法 | |
KR20090089601A (ko) | 문서 작성용 응용 프로그램을 이용하여 문서의 양식과 입력데이터를 결합하여 자동으로 문서를 작성하는 문서 작성자동화 시스템 및 문서 작성 자동화 방법 | |
JP5426938B2 (ja) | 情報処理装置、情報処理方法 | |
US8433729B2 (en) | Method and system for automatically generating a communication interface | |
JP2006227820A (ja) | プログラムテストシステム及びプログラムテスト方法 | |
US7849442B2 (en) | Application requirement design support system and method therefor | |
JP2005055978A (ja) | 情報処理装置及び情報処理システム | |
CN111722881B (zh) | 一种容器云平台的资源扩展方法、系统及装置 | |
WO2017148376A1 (zh) | 应用程序用户界面自动化测试方法、电子设备、系统及存储介质 | |
EP4154129A1 (en) | Database management methods and associated apparatus | |
JP5048537B2 (ja) | ワークフロー処理装置 | |
JP2009122985A (ja) | サブプロセス実行システム及びサブプロセス実行プログラム | |
JP6677809B2 (ja) | アダプタ生成装置及び方法 | |
JP5682452B2 (ja) | 変更管理支援装置、変更管理支援方法及び変更管理支援プログラム | |
JP2006146385A (ja) | 電子フォーム処理方法、システム及びプログラム | |
US20230214316A1 (en) | System and method for autonomous cognitive test stratagem (acts) | |
US20150046358A1 (en) | Importing tested objects into benefits programs deployed on production systems |