JP2010122959A - テスト支援システム、方法、及び、プログラム - Google Patents

テスト支援システム、方法、及び、プログラム Download PDF

Info

Publication number
JP2010122959A
JP2010122959A JP2008296711A JP2008296711A JP2010122959A JP 2010122959 A JP2010122959 A JP 2010122959A JP 2008296711 A JP2008296711 A JP 2008296711A JP 2008296711 A JP2008296711 A JP 2008296711A JP 2010122959 A JP2010122959 A JP 2010122959A
Authority
JP
Japan
Prior art keywords
test
source code
module
test item
item
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
Application number
JP2008296711A
Other languages
English (en)
Inventor
Yushi Hayakawa
祐志 早川
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2008296711A priority Critical patent/JP2010122959A/ja
Publication of JP2010122959A publication Critical patent/JP2010122959A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】プログラムの詳細な解析を必要とせず、また、ユーザが変更箇所を指定しなくても、修正後のソースコードについて実行すべきテスト項目を抽出できるテスト支援システムを提供する。
【解決手段】ソースコード比較手段106は、修正前ソースコード記憶手段102が記憶する修正前ソースコードと、修正後ソースコード記憶手段103が記憶する修正後のソースコードとを比較し、変更が行われたモジュールを特定する。通過モジュール情報記憶手段105は、修正前のソースコードに対して複数のテスト項目のテストを実行した際に処理が通過するモジュールを、テスト項目と対応付けて記憶する。テスト項目抽出手段107は、通過モジュール情報記憶手段105を参照し、変更が行われたモジュールを通過するテスト項目を抽出する。
【選択図】図1

Description

テスト支援システム、方法、及び、プログラムに関し、更に詳しくは、ソースコードに対するテストを支援するテスト支援システム、方法、及び、プログラムに関する。
近年のソフトウェア開発は、新規開発だけでなく、既存システムの保守・改善開発も多い。保守・改善開発では、修正で仕様が変わらない箇所が、修正後に修正前と同じ動作をすることを確認するために、修正前に実施したものと同じテスト項目を実施する。このようなテストは、回帰テストと呼ばれる(非特許文献1)。
回帰テストでは、修正前に実施した全てのテスト項目を再度実施し、修正で仕様が変わっていない全てのテスト項目の合格を確認することが、品質面で理想的である。しかし、その場合、多くの作業時間が必要となり、効率的でない。回帰テストでは、修正内容に関連するテスト項目のみを抽出し、そのテスト項目のテストを行うことが望ましい。
回帰テストに際して、回帰テストでどのテスト項目をテストするかは、人間の判断に任されている。このため、本来ではあれば回帰テストで実施すべきテスト項目が、回帰テスト対象から外れることがあるという問題が生じている。
回帰テストに関する技術として、特許文献1に記載の技術がある。特許文献1では、ソフトウェアプログラムにおける各ステートメントの依存関係を参照して、変更されたステートメントと依存関係にあるステートメントを抽出する。その後、抽出されたステートメントと関連付けられたテストケースを、過去に実行されたテストケースと、ソフトウェアプログラムにおける各ステートメントとの対応についての情報から検出する。テストケースの検出後、検出されたテストケースを実行する。
特開2008−204405号公報 松本吉弘監訳「ソフトウェアエンジニアリング知識体系 SWEBOK」オーム社、2003年6月19日、P114−115
特許文献1では、ソフトウェアプログラムを詳細に解析し、各ステートメントの依存関係を求める必要がある。このため、プログラムを解析する手段の実装が不可欠である。また、ソフトウェアプログラムの解析には時間がかかるという問題もある。更に、特許文献1では、回帰テストの実行に際して、ユーザが、プログラムの修正・変更したステートメントを指定する。ユーザが、手入力で修正・変更したステートメントを入力する必要があるので、手間がかかる。また、入力ミスし、或いは、入力漏れがあることも考えられる。
本発明は、プログラムの詳細な解析を必要とせず、また、ユーザが変更箇所を指定しなくても、修正後のソースコードについて実行すべきテスト項目を抽出できるテスト支援システム、方法、及び、プログラムを提供することを目的とする。
上記目的を達成するために、本発明のテスト支援システムは、複数のモジュールを含む第1のソースコードと、該第1のソースコードに含まれるモジュールの少なくとも一部に変更が加えられた第2のソースコードとを比較し、変更が行われたモジュールを特定するソースコード比較手段と、前記第1のソースコードに対して複数のテスト項目のテストを実行した際に処理が通過するモジュールを、テスト項目と対応付けて記憶する通過モジュール情報記憶手段を参照し、前記変更が行われたモジュールを通過するテスト項目を抽出するテスト項目抽出手段とを備えることを特徴とする。
本発明のテスト支援方法は、コンピュータが、複数のモジュールを含む第1のソースコードを記憶する第1のソースコード記憶手段と、前記第1のソースコードに含まれるモジュールの少なくとも一部に変更が加えられた第2のソースコードを記憶する第2のソースコード記憶手段とを参照し、前記第1のソースコードと前記第2のソースコードとで変更が行われたモジュールを特定するステップと、前記コンピュータが、前記第1のソースコードに対して複数のテスト項目のテストを実行した際に処理が通過するモジュールを、テスト項目と対応付けて記憶する通過モジュール情報記憶手段を参照し、前記変更が行われたモジュールを通過するテスト項目を抽出するステップとを有することを特徴とする。
本発明のプログラムは、コンピュータに、複数のモジュールを含む第1のソースコードを記憶する第1のソースコード記憶手段と、前記第1のソースコードに含まれるモジュールの少なくとも一部に変更が加えられた第2のソースコードを記憶する第2のソースコード記憶手段とを参照し、前記第1のソースコードと前記第2のソースコードとで変更が行われたモジュールを特定する処理と、前記第1のソースコードに対して複数のテスト項目のテストを実行した際に処理が通過するモジュールを、テスト項目と対応付けて記憶する通過モジュール情報記憶手段を参照し、前記変更が行われたモジュールを通過するテスト項目を抽出する処理とを実行させることを特徴とする。
本発明のテスト支援システム、方法、及び、プログラムは、プログラムの詳細な解析を必要とせず、また、ユーザが変更箇所を指定しなくても、修正後のソースコードについて実行すべきテスト項目を抽出することができる。
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図1は、本発明の第1実施形態のテスト支援システムを示している。テスト支援システムは、テスト項目記憶手段101、修正前ソースコード記憶手段102、修正後ソースコード記憶手段103、通過モジュール記録手段104、通過モジュール情報記憶手段105、ソースコード比較手段106、テスト項目抽出手段107、及び、テスト項目表示手段108を有する。通過モジュール記録手段104、ソースコード比較手段106、及び、テスト項目抽出手段107の機能は、例えば、コンピュータ上で所定のプログラムを実行することで実現できる。
テスト項目記憶手段101は、ソースコードのテストに用いる複数のテスト項目を記憶する。修正前ソースコード記憶手段102は、修正前のソースコード(第1のソースコード)を記憶する。修正後ソースコード記憶手段103は、修正後のソースコード(第2のソースコード)を記憶する。ソースコードは、複数のモジュールを含む。モジュールは、ソースコード内で定義されたプログラムの論理的構成要素である。修正後のソースコードは、修正前のソースコードのモジュールの少なくとも一部が修正・変更されている。
ソースコードの記述には、C言語などのプログラミング言語や、オブジェクト指向のプログラミング言語を用いることができる。ソースコードは、ソフトウェアプログラムのソースコードには限定されず、ハードウェア記述言語(HDL)などで記述されたハードウェアのソースコードであってもよい。
通過モジュール情報記憶手段105は、修正前のソースコードに対して複数のテスト項目のテストを実行した際に処理が通過するモジュールを、テスト項目と対応付けて記憶する。通過モジュール記録手段104は、修正前のソースコードのテストを実行したときに、テスト対象のテスト項目がどのモジュールを通過するかを示す情報を通過モジュール情報記憶手段105に記録する。
通過モジュール記録手段104は、テスト項目記憶手段101が記憶するテスト項目のそれぞれについて通過モジュールを求め、通過モジュール情報記憶手段105に記録する。通過モジュール記録手段104は、テスト項目記憶手段101からテスト項目を1つ選択し、修正前のソースコードに対して、選択したテスト項目のテストを実行するテスト項目実行手段を兼ねていてもよい。その場合、テスト項目実行手段(通過モジュール記録手段104)は、選択したテスト項目のテストを実行しつつ、そのテスト項目の通過モジュール情報を、通過モジュール情報記憶手段105に記録する。
ソースコード比較手段106は、修正前ソースコード記憶手段102が記憶するソースコードと、修正後ソースコード記憶手段103が記憶するソースコードとを比較する。ソースコード比較手段106は、修正前後のソースコードを比較し、修正前後で変更があったモジュールを特定する。テスト項目抽出手段107は、通過モジュール情報記憶手段105が記憶する各テスト項目の通過モジュール情報と、ソースコード比較手段106が出力する修正されたモジュールとに基づいて、回帰テストとして実行すべきテスト項目を抽出する。テスト項目表示手段108は、ディスプレイ等の表示手段であり、テスト項目抽出手段107が出力するテスト項目を表示する。
ユーザは、ソースコードの作成後、テスト項目記憶手段101が記憶するテスト項目のテストを実行し、ソースコードが仕様通りに動くことを確認する。その際、通過モジュール記録手段104は、各テスト項目で通過するモジュールの情報を、テスト項目ごとに通過モジュール情報記憶手段105に記録する。通過モジュール記録手段104は、テスト実行以外のタイミングで、通過モジュール情報を通過モジュール情報記憶手段105に記録してもよい。或いは、ユーザが、あらかじめ、作成したソースコードの内容に従って、通過モジュール情報記憶手段105に通過モジュール情報を記録しておいてもよい。
ユーザは、ソースコードに修正を加える。ユーザは、例えば、修正前のソースコードをエディタなどを用いて編集し、ソースコードに含まれるモジュールの一部の内容に変更を加える。ユーザは、修正前のソースコードを修正前ソースコード記憶手段102に記憶し、修正後のソースコードを修正後ソースコード記憶手段103に記憶する。ユーザは、修正後のソースコードに対して回帰テストを行う。ユーザは、回帰テストでは、テスト項目抽出手段107が抽出したテスト項目のテストを行う。
図2は、回帰テストにおけるテスト項目抽出の手順を示している。ユーザがテスト項目抽出を指示すると、ソースコード比較手段106は、修正前ソースコード記憶手段102から修正前のソースコードを取得し、修正後ソースコード記憶手段103から修正後のソースコードを取得し、両者を比較する(ステップS11)。ソースコード比較手段106は、修正前後で変更があったモジュールを特定し、変更があったモジュールの一覧をテスト項目抽出手段107に出力する(ステップS12)。
テスト項目抽出手段107は、ソースコード比較手段106が出力する変更があったモジュール一覧を受け取る。テスト項目抽出手段107は、ソースコードの修正前後で変更があったモジュール一覧と、通過モジュール情報記憶手段105が記憶する通過モジュール情報とを照らし合わせ、変更があったモジュールを通過するテスト項目を抽出する(ステップS13)。テスト項目表示手段108は、テスト項目抽出手段107が抽出したテスト項目を表示し、ユーザに提示する(ステップS14)。テスト項目が人間の入力を必要とせず、自動的に実行可能なものであれば、テスト項目抽出手段107が抽出したテスト項目を自動的に実行してもよい。
以下、具体例を用いて説明する。図3に、修正前のソースコードを示す。ここでは、ソースコードの記述に、Java(R)言語を用いている。図3では、ソースコードには、fclass.Main、classA、classB、classCの4つのモジュールが記述されている。
図4に、テスト項目記憶手段101が記憶するテスト項目を示す。テスト項目記憶手段101は、テスト内容が異なる5つのテスト項目を記憶している。修正前のソースコードに対して、図4に示す5つのテスト項目のテストを行う。例えば、“テスト項目1”のテスト時は、Mainクラスのfunc関数を、引数=0で呼び出し、ソースコードに記述された処理を行う。また、“テスト項目2”のテスト時は、Mainクラスのfunc関数を、引数=4で呼び出し、ソースコードに記述された処理を行う。
通過モジュール記録手段104は、各テスト項目で通過するモジュールを、テスト項目ごとに、通過モジュール情報記憶手段105に記録する。例えば、テスト項目1は、Mainクラスのfunc関数が引数=0で呼び出されるので、3行目の条件式(a<=0)が真になり、A.func関数が引数=0で呼び出される。A.func関数では、関数内の条件式(a<0)が満たされないので、B.func関数の呼び出しはない。このため、テスト項目1で通過するモジュールは、MainモジュールとAモジュールの2つとなる。
図5に、通過モジュール情報記憶手段105に記録される通過モジュール情報を示す。テスト項目1の通過モジュールは、MainモジュールとAモジュールの2つになるので、通過モジュール記録手段104は、テスト項目1の欄に、MainとAを記録する。通過モジュール記録手段104は、他のテスト項目についても、上記と同様に、通過モジュールを調べ、通過モジュール情報記憶手段105に記録する。
図6に、修正後のソースコードを示す。修正後のソースコードでは、classAモジュール内で呼び出す関数が変更されている。また、classCモジュール内で呼び出す関数が変更されている。従って、修正前のソースコードのテストで用いたテスト項目のうち、classAモジュールとclassCモジュールとの何れかを通過するテスト項目のテスト結果は、前後で同じ結果になることは保証されない。一方、classAモジュールとclassCモジュールとの何れも通過しないテスト項目については、ソースコードの修正前後でテスト結果が同じになることが保証される。このため、修正後のソースコードに対する回帰テストでは、classAモジュール及びclassCモジュールの少なくとも一方を通過するテスト項目のみを実行すればよいことになる。
ソースコード比較手段106は、図2のステップS11で、修正前のソースコード(図3)と、修正後のソースコード(図6)とを比較する。その後、ステップS12で、修正後のソースコードで、修正前のソースコードから変更があったモジュールを特定する。ソースコード比較手段106は、ソースコードに記述されたテキスト同士を比較することで、変更があったモジュールを特定する。その際には、コメントやスペースといったソースコードの意味に関係がないもの、言い換えれば、モジュールの機能に影響がないものを除去した上で、変更があったモジュールを特定してもよい。
テスト項目抽出手段107は、ソースコード比較手段106から、変更があったモジュールは、classAモジュール及びclassCモジュールである旨の通知を受ける。テスト項目抽出手段107は、ステップS13で、通過モジュール情報記憶手段105(図5)を参照し、修正前のソースコードのテストに用いたテスト項目、つまりは、テスト項目記憶手段101に記憶されたテスト項目のうち、変更があったモジュールを通過するテスト項目を抽出する。
図5を参照すると、classAモジュールを通過するテスト項目は、テスト項目1とテスト項目5の2つある。また、classCモジュールを通過するテスト項目は、テスト項目2とテスト項目5の2つある。テスト項目抽出手段107は、テスト項目1、テスト項目2、及び、テスト項目5の3つを抽出する。テスト項目表示手段108は、ステップS14で、修正後のソースコードの回帰テストでテストすべきテスト項目が、テスト項目1、テスト項目2、及び、テスト項目5である旨を表示する。
本実施形態では、ソースコード比較手段106は、修正前のソースコードと修正後のソースコードとを比較し、変更が行われたモジュールを特定する。テスト項目抽出手段107は、通過モジュール情報記憶手段105を参照し、ソースコードの修正前後で変更が行われたモジュールを通過するテスト項目を抽出する。テスト項目抽出手段107は、修正前のソースコードに対して実行するテスト項目がどのモジュールを通過するかを示す情報と、ソースコードの修正で変更があったモジュールとから、修正の影響で動作が変更しうるテスト項目を抽出する。このようにすることで、修正後のソースコードに対して、回帰テストとして実行すべきテスト項目を抽出できる。
回帰テストでテストすべきテスト項目の抽出を人手で行うと、どのテスト項目を抽出するかは人間の判断に任されるので、本来回帰テストで実施すべきテスト項目が、回帰テストのテスト対象から外れることがある。本実施形態では、通過モジュール情報記憶手段105が記憶するテスト項目と通過モジュールとの対応関係と、ソースコード比較手段106が出力する修正前後で変更があったモジュールとを照らし合わせ、変更があったモジュールを通過するテスト項目を、回帰テストで実行すべきテスト項目として抽出するので、回帰テストで実施すべきテスト項目をもれなく抽出できる。
図7は、本発明の第2実施形態のテスト支援システムを示している。図1に示す第1実施形態のテスト支援システムとの相違点は、テスト項目並び替え手段109が追加されている点である。テスト項目抽出手段107は、変更があったモジュールを通過するテスト項目を求める際に、その変更があったモジュールを通過するテスト項目が、変更があったモジュールを何回通過するかをカウントする。テスト項目並び替え手段109は、テスト項目抽出手段107が出力するテスト項目を、変更があったモジュールの通過回数に応じて並び替え、テスト項目表示手段108に渡す。
図8は、回帰テストにおけるテスト項目抽出の手順を示している。ソースコード比較手段106は、修正前ソースコード記憶手段102から修正前のソースコードを取得し、修正後ソースコード記憶手段103から修正後のソースコードを取得し、両者を比較する(ステップS21)。ソースコード比較手段106は、修正前後で変更があったモジュールを特定し、変更があったモジュールの一覧をテスト項目抽出手段107に出力する(ステップS22)。
テスト項目抽出手段107は、ソースコード比較手段106が出力する変更があったモジュール一覧を受け取る。テスト項目抽出手段107は、ソースコードの修正前後で変更があったモジュール一覧と、通過モジュール情報記憶手段105が記憶する通過モジュール情報とを照らし合わせ、変更があったモジュールを通過するテスト項目を抽出する(ステップS23)。また、テスト項目抽出手段107は、抽出したテスト項目について、変更があったモジュールの通過回数をカウントする。
テスト項目抽出手段107は、変更があったモジュールを通過するテスト項目と、変更があったモジュールの通過回数とを、テスト項目並び替え手段109に出力する。テスト項目並び替え手段109は、テスト項目抽出手段107が出力するテスト項目を、変更があったモジュールの通過回数順に並び替える(ステップS24)。テスト項目表示手段108は、テスト項目並び替え手段109が並び替えを行ったテスト項目を表示し、ユーザに提示する(ステップS25)。テスト項目が人間の入力を必要とせず、自動的に実行可能なものであれば、テスト項目抽出手段107が抽出したテスト項目を自動的に実行してもよい。
以下、具体例を用いて説明する。修正前後のソースコードは、第1実施形態の説明でも用いたものと同じものを用いる(図3、図6)。すなわち、修正前後で変更があったモジュールは、classAモジュールとclassCモジュールの2つである。また、テスト項目も、第1実施形態の説明で用いたものと同じものを用いる。すなわち、テスト項目として、図4に示すテスト項目1〜5の5つを考える。各テスト項目が通過するモジュールは、図5に示すようになっている。
テスト項目抽出手段107は、ステップS23で、classAモジュールとclassCモジュールとの少なくとも一方を通過するテスト項目として、テスト項目1、テスト項目2、テスト項目5の3つを抽出する。図5を参照すると、テスト項目1は、classAモジュールを1回通過する。テスト項目2は、classCモジュールを1回通過する。テスト項目5は、classAモジュールを1回、classCモジュールを1回通過し、変更があったモジュールを計2回通過する。
テスト項目並び替え手段109は、ステップS24で、テスト項目を、変更があったモジュールを通過した回数が多い順に並び替える。つまり、テスト項目並び替え手段109は、抽出されたテスト項目を、テスト項目5、テスト項目1、テスト項目2の順に並び替える。テスト項目1及びテスト項目2については、変更があったモジュールを通過する回数が同じなので、どちらが先でもよい。
テスト項目表示手段108は、ステップS25で、テスト項目並び替え手段109が並び替えた順番で、テスト項目抽出手段107が抽出したテスト項目を表示する。すなわち、テスト項目5、テスト項目1、テスト項目2の順で表示する。
本実施形態では、テスト項目並び替え手段109は、テスト項目抽出手段107が抽出したテスト項目を、変更があったモジュールの通過回数が多い順に並び替える。変更があったモジュールの通過回数が多いテスト項目は、修正個所を通る回数が多い分だけ、ソースコードの修正前後で動作が変わっている可能性が高い。本実施形態では、変更があったモジュールの通過回数が多い順にテスト項目を表示するため、優先的に実施すべきテスト項目を、ユーザに提示することができる。また、時間的制約などにより、抽出されたテスト項目の全てをテストできない場合には、表示されたテスト項目を表示順に従って実行することで、動作が変わっている可能性が高いテスト項目から先に、回帰テストを行うことができる。その他の効果は、第1実施形態と同様である。
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のテスト支援システム、方法、及び、プログラムは、上記実施形態にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
本発明の第1実施形態のテスト支援システムを示すブロック図。 テスト項目抽出の際の動作手順を示すフローチャート。 修正前ソースコードの具体例を示す図。 テスト項目の具体例を示す図。 通過モジュール情報の具体例を示す図。 修正後ソースコードの具体例を示す図。 本発明の第2実施形態のテスト支援システムを示すブロック図。 第2実施形態におけるテスト項目抽出時の動作手順を示すフローチャート。
符号の説明
101:テスト項目記憶手段
102:修正前ソースコード記憶手段
103:修正後ソースコード記憶手段
104:通過モジュール記録手段
105:通過モジュール情報記憶手段
106:ソースコード比較手段
107:テスト項目抽出手段
108:テスト項目表示手段
109:テスト項目並び替え手段

Claims (12)

  1. 複数のモジュールを含む第1のソースコードと、該第1のソースコードに含まれるモジュールの少なくとも一部に変更が加えられた第2のソースコードとを比較し、変更が行われたモジュールを特定するソースコード比較手段と、
    前記第1のソースコードに対して複数のテスト項目のテストを実行した際に処理が通過するモジュールを、テスト項目と対応付けて記憶する通過モジュール情報記憶手段を参照し、前記変更が行われたモジュールを通過するテスト項目を抽出するテスト項目抽出手段とを備えるテスト支援システム。
  2. 前記第1のソースコードのテストを実行したとき、テスト対象のテスト項目がどのモジュールを通過するかを示す情報を前記通過モジュール情報記憶手段に記録する通過モジュール記録手段を更に有する、請求項1に記載のテスト支援システム。
  3. 前記通過モジュール記録手段が、複数のテスト項目を記憶するテスト項目記憶手段からテスト項目を1つ選択し、前記第1のソースコードに対して、前記選択したテスト項目のテストを実行するテスト項目実行手段を兼ねる、請求項2に記載のテスト支援システム。
  4. 前記テスト項目抽出手段が抽出したテスト項目を、前記変更が行われたモジュールの通過回数が多い順に並び替えるテスト項目並び替え手段を更に有する、請求項1乃至3の何れか一に記載のテスト支援システム。
  5. コンピュータが、複数のモジュールを含む第1のソースコードを記憶する第1のソースコード記憶手段と、前記第1のソースコードに含まれるモジュールの少なくとも一部に変更が加えられた第2のソースコードを記憶する第2のソースコード記憶手段とを参照し、前記第1のソースコードと前記第2のソースコードとで変更が行われたモジュールを特定するステップと、
    前記コンピュータが、前記第1のソースコードに対して複数のテスト項目のテストを実行した際に処理が通過するモジュールを、テスト項目と対応付けて記憶する通過モジュール情報記憶手段を参照し、前記変更が行われたモジュールを通過するテスト項目を抽出するステップとを有するテスト支援方法。
  6. 前記コンピュータが、前記第1のソースコードのテストを実行したとき、テスト対象のテスト項目がどのモジュールを通過するかを示す情報を前記通過モジュール情報記憶手段に記録するステップを更に有する、請求項5に記載のテスト支援方法。
  7. 前記コンピュータは、複数のテスト項目を記憶するテスト項目記憶手段からテスト項目を1つ選択し、前記第1のソースコードに対して、前記選択したテスト項目のテストを実行しつつ、前記選択したテスト項目がどのモジュールを通過するかを示す情報を前記通過モジュール情報記憶手段に記録する、請求項6に記載のテスト支援方法。
  8. 前記コンピュータが、前記抽出したテスト項目を、前記変更が行われたモジュールの通過回数が多い順に並び替えるステップを更に有する、請求項5乃至7の何れか一に記載のテスト支援方法。
  9. コンピュータに、
    複数のモジュールを含む第1のソースコードを記憶する第1のソースコード記憶手段と、前記第1のソースコードに含まれるモジュールの少なくとも一部に変更が加えられた第2のソースコードを記憶する第2のソースコード記憶手段とを参照し、前記第1のソースコードと前記第2のソースコードとで変更が行われたモジュールを特定する処理と、
    前記第1のソースコードに対して複数のテスト項目のテストを実行した際に処理が通過するモジュールを、テスト項目と対応付けて記憶する通過モジュール情報記憶手段を参照し、前記変更が行われたモジュールを通過するテスト項目を抽出する処理とを実行させるプログラム。
  10. 更に、前記コンピュータに、前記第1のソースコードのテストを実行したとき、テスト対象のテスト項目がどのモジュールを通過するかを示す情報を前記通過モジュール情報記憶手段に記録する処理を実行させる、請求項9に記載のプログラム。
  11. 前記コンピュータに、複数のテスト項目を記憶するテスト項目記憶手段からテスト項目を1つ選択し、前記第1のソースコードに対して、前記選択したテスト項目のテストを実行する処理を行わせつつ、前記選択したテスト項目がどのモジュールを通過するかを示す情報を前記通過モジュール情報記憶手段に記録する処理を実行させる、請求項10に記載のプログラム。
  12. 更に、前記コンピュータに、前記抽出したテスト項目を、前記変更が行われたモジュールの通過回数が多い順に並び替える処理を実行させる、請求項9乃至11の何れか一に記載のプログラム。
JP2008296711A 2008-11-20 2008-11-20 テスト支援システム、方法、及び、プログラム Pending JP2010122959A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008296711A JP2010122959A (ja) 2008-11-20 2008-11-20 テスト支援システム、方法、及び、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008296711A JP2010122959A (ja) 2008-11-20 2008-11-20 テスト支援システム、方法、及び、プログラム

Publications (1)

Publication Number Publication Date
JP2010122959A true JP2010122959A (ja) 2010-06-03

Family

ID=42324236

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008296711A Pending JP2010122959A (ja) 2008-11-20 2008-11-20 テスト支援システム、方法、及び、プログラム

Country Status (1)

Country Link
JP (1) JP2010122959A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012084131A (ja) * 2010-10-06 2012-04-26 Internatl Business Mach Corp <Ibm> 非同期コード・テスト方法、コンピュータ・プログラム製品、コンピュータ・システムおよびプロセス(統合開発環境(ide)における非同期コード・テスト)
WO2012066635A1 (ja) * 2010-11-16 2012-05-24 株式会社日立製作所 テスト方法、テスト装置及びテスト実行用プログラム
WO2013072977A1 (ja) * 2011-11-18 2013-05-23 株式会社日立製作所 情報処理装置、プログラム及び情報処理方法
JP2014048699A (ja) * 2012-08-29 2014-03-17 Fujitsu Ltd 管理装置、管理方法およびプログラム
JP2015026222A (ja) * 2013-07-25 2015-02-05 富士通株式会社 テストプログラム、テスト方法及びテスト装置
JP2017068614A (ja) * 2015-09-30 2017-04-06 富士通株式会社 分析プログラム、分析装置および分析方法
JP2019028913A (ja) * 2017-08-03 2019-02-21 富士通株式会社 テスト実行制御プログラム、テスト実行制御方法、およびテスト実行制御装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012084131A (ja) * 2010-10-06 2012-04-26 Internatl Business Mach Corp <Ibm> 非同期コード・テスト方法、コンピュータ・プログラム製品、コンピュータ・システムおよびプロセス(統合開発環境(ide)における非同期コード・テスト)
US9075919B2 (en) 2010-10-06 2015-07-07 International Business Machines Corporation Asynchronous code testing
US9569346B2 (en) 2010-10-06 2017-02-14 International Business Machines Corporation Asynchronous code testing
WO2012066635A1 (ja) * 2010-11-16 2012-05-24 株式会社日立製作所 テスト方法、テスト装置及びテスト実行用プログラム
WO2013072977A1 (ja) * 2011-11-18 2013-05-23 株式会社日立製作所 情報処理装置、プログラム及び情報処理方法
JP2014048699A (ja) * 2012-08-29 2014-03-17 Fujitsu Ltd 管理装置、管理方法およびプログラム
JP2015026222A (ja) * 2013-07-25 2015-02-05 富士通株式会社 テストプログラム、テスト方法及びテスト装置
JP2017068614A (ja) * 2015-09-30 2017-04-06 富士通株式会社 分析プログラム、分析装置および分析方法
JP2019028913A (ja) * 2017-08-03 2019-02-21 富士通株式会社 テスト実行制御プログラム、テスト実行制御方法、およびテスト実行制御装置

Similar Documents

Publication Publication Date Title
US7552361B2 (en) Software testing optimization apparatus and method
JP2010122959A (ja) テスト支援システム、方法、及び、プログラム
US8584095B2 (en) Test support system, method and computer program product, which optimize test scenarios to minimize total test time
JP2006244195A (ja) プログラムテスト支援装置およびその方法
JP2004341671A (ja) 情報処理システム、制御方法、制御プログラム、及び記録媒体
US20100077382A1 (en) Computer-readable recording medium string a bug detection support program, similar structure identification information list output program, bug detection support apparatus, and bug detection support method
JP2007018254A (ja) 言語処理装置
JP2010102620A (ja) ユーザ操作シナリオ生成装置、方法およびプログラム
KR102021383B1 (ko) 동적 분석과 정적 분석을 연계한 프로그램을 분석하기 위한 방법 및 장치
JP5440287B2 (ja) シンボリック実行支援プログラム、方法及び装置
US8375371B2 (en) Importance-based call graph construction
JP5702265B2 (ja) プログラム自動生成装置およびプログラム自動生成方法
US9645869B2 (en) Using exception information
US20150007139A1 (en) Optimizing error parsing in an integrated development environment
JP2008287396A (ja) データ処理装置およびプログラム
US8843896B2 (en) Metamodeling contextual navigation of computer software applications
JP5755861B2 (ja) テストケース生成装置、テストケース生成方法およびテストケース生成プログラム
US8914678B2 (en) Systems and methods for debugging model based message sequences
JP4983027B2 (ja) チェックプログラム及びチェック方法
JP2008269529A (ja) デバッグ支援装置
JP2009205242A (ja) 検証用プログラム自動生成装置、その方法及びプログラム
US20070113220A1 (en) Program translation method and notifying instruction inserting method
JP2014067109A (ja) データ遷移トレース装置、データ遷移トレース方法、及び、データ遷移トレースプログラム
JP7524690B2 (ja) 判定プログラム、判定方法および情報処理装置
JP2008262473A (ja) 設備保全管理システム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20100224