(57)【要約】【課題】  ソースコード中の各行の重要度に応じたカバレッジ情報の取得することにより、カバレッジ情報が１００％未満の場合における管理者の確認作業等の負担軽減を図ることの可能なカバレッジ取得システムを提供する。【解決手段】  カバレッジ情報取得システム１００は、ソース情報生成部１０１と、通過情報記録部１０２と、解析部１０３とを備える。ソース情報生成部１０１は、読込部２０１と、区分設定部２０２と、重み設定部２０３とから構成され、各ソースコード１１０の言語仕様等に応じて、単語，行，メソッド，クラス，ファイル，コンポーネント単位でまとめたソース情報１１１に、区分辞書２０４に基づく区分を設定するとともに、重み辞書２０５に基づき各区分に応じた重み付けを行う。  カバレッジ情報生成部１０３は、ソース情報１１１と、通過情報記録部１０２により記録されたテスト通過情報１１２に基づき、重み付けカバレッジ情報１１３を算出する。【選択図】      図２
2006155092.tif 000002
【特許請求の範囲】
【請求項１】
テスト対象となるソースコードを構成する各行について、各行に含まれる単語の種別に応じた重み情報を設定したソース情報を生成するソース情報生成手段と、
前記ソースコードを構成する各行に前記重み情報を乗じて、前記ソースコードの全行数に対するテスト通過行数の割合を算出して重み付けカバレッジ情報を生成するカバレッジ情報生成手段と
を備えることを特徴とするカバレッジ情報取得システム。
【請求項２】
前記ソース情報生成手段は、前記単語種別毎に予め設定された区分情報を前記ソース情報に付加する手段を備え、
前記カバレッジ情報生成手段は、同一区分毎に、全行数に対するテスト通過行数の割合を算出して区分別カバレッジ情報を生成する手段を備えることを特徴とする請求項１に記載のカバレッジ情報取得システム。
【請求項３】
前記ソース情報生成手段は、前記ソースコードをメソッド単位に区別したソース情報を生成するとともに、各メソッドの種別に応じた区分情報を前記ソース情報に付加する手段をさらに備え、
前記カバレッジ情報生成手段は、同一メソッド区分毎に重み付けカバレッジ情報を生成する手段をさらに備えることを特徴とする請求項１又は２のいずれかに記載のカバレッジ情報取得システム。
【請求項４】
前記ソース情報生成手段は、前記ソースコードをクラス単位に区別したソース情報を生成するとともに、各クラスの種別に応じた区分情報を前記ソース情報に付加する手段をさらに備え、
前記カバレッジ情報生成手段は、同一クラス区分毎に重み付けカバレッジ情報を生成する手段をさらに備えることを特徴とする請求項１〜３のいずれかに記載のカバレッジ情報取得システム。
【請求項５】
前記ソース情報生成手段は、前記ソースコードをファイル単位に区別したソース情報を生成するとともに、各ファイルの種別に応じた区分情報を設定する手段をさらに備え、
前記カバレッジ情報生成手段は、同一ファイル区分毎に重み付けカバレッジ情報を生成する手段をさらに備えることを特徴とする請求項１〜４のいずれかに記載のカバレッジ情報取得システム。
【請求項６】
前記ソース情報生成手段は、前記ソースコードをコンポーネント単位に区別したソース情報を生成するとともに、各コンポーネントの種別に応じた区分情報を設定する手段をさらに備え、
前記カバレッジ情報生成手段は、同一コンポーネント区分毎に重み付けカバレッジ情報を生成する手段をさらに備えることを特徴とする請求項１〜５のいずれかに記載のカバレッジ情報取得システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソースコードのテスト範囲の指標を示すカバレッジを取得するためのシステムに関し、特に、ソースコード中の各行の重要度を考慮したカバレッジ情報の算出方法に関する。
【背景技術】
【０００２】
一般的に、ソフトウエア開発では、動作テスト等を行った際に、どの程度の割合をテスト時に実行したかを示す指標としてカバレッジ情報を取得することが行われている。
このようなカバレッジ情報としては、例えば、ソースコード中の全行数におけるテスト済み行数の割合や、ソースコード中の実行されるべき分岐数におけるテスト済みの分岐数の割合が用いられている。
このようなカバレッジ情報を取得するためのものとして、従来、テスト対象となるソースコードに含まれる分岐情報を解析したカバレッジ計測テーブルを生成する手段と、テスト済み行数の割合及びテスト済み分岐数の割合を算出する手段を備える構成が公知となっている（例えば、特許文献１参照。）
【特許文献１】特開平０５−３２４４０２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、前記特許文献１の構成では、従来より用いられているテスト済み行数又はテスト済み分岐数の割合の算出を行うものであり、全ての行又は分岐以外の行は対等に扱われていた。
従って、算出されたカバレッジ情報が１００％未満の場合に、テスト工程を次に進めるべきか否かを判断するためには、テストで通過しなかった行について管理者による目視での確認作業が必要となるため、余計な管理工数が掛かるという問題があった。
また、テストで通過しなかった行が複数行ある場合や、テストで通過しなかった行が複数メソッドやクラスに存在する場合、さらに、大規模開発などでテストで通過しなかった行が複数ファイルや複数コンポーネントに存在する場合などにおいて、再テストの際にどの行，メソッド・クラス，ファイル・コンポーネントを優先すべきかを判断するために、管理者がテストで通過しなかった行を相互に比較することが必要となり、管理者の作業負担が過大なものとなっていた。
【０００４】
本発明は、前記課題を解決するためのものであり、ソースコード中の各行の重要度に応じたカバレッジ情報の取得することにより、カバレッジ情報が１００％未満の場合における管理者の確認作業等の負担軽減を図ることの可能なカバレッジ取得システムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
前記課題を解決するため本発明は、テスト対象となるソースコードを構成する各行について、各行に含まれる単語の種別に応じた重み情報を設定したソース情報を生成するソース情報生成手段と、前記ソースコードを構成する各行に前記重み情報を乗じて、前記ソースコードの全行数に対するテスト通過行数の割合を算出して重み付けカバレッジ情報を生成するカバレッジ情報生成手段とを備えることを特徴とする。
また、前記ソース情報生成手段は、前記単語種別毎に予め設定された区分情報を前記ソース情報に付加する手段を備え、前記カバレッジ情報生成手段は、同一区分毎に、全行数に対するテスト通過行数の割合を算出して区分別カバレッジ情報を生成する手段を備えることを特徴とする。
また、前記ソース情報生成手段は、前記ソースコードをメソッド単位に区別したソース情報を生成するとともに、各メソッドの種別に応じた区分情報を前記ソース情報に付加する手段をさらに備え、前記カバレッジ情報生成手段は、同一メソッド区分毎に重み付けカバレッジ情報を生成する手段をさらに備えることを特徴とする。
また、前記ソース情報生成手段は、前記ソースコードをクラス単位に区別したソース情報を生成するとともに、各クラスの種別に応じた区分情報を前記ソース情報に付加する手段をさらに備え、前記カバレッジ情報生成手段は、同一クラス区分毎に重み付けカバレッジ情報を生成する手段をさらに備えることを特徴とする。
また、前記ソース情報生成手段は、前記ソースコードをファイル単位に区別したソース情報を生成するとともに、各ファイルの種別に応じた区分情報を設定する手段をさらに備え、前記カバレッジ情報生成手段は、同一ファイル区分毎に重み付けカバレッジ情報を生成する手段をさらに備えることを特徴とする。
また、前記ソース情報生成手段は、前記ソースコードをコンポーネント単位に区別したソース情報を生成するとともに、各コンポーネントの種別に応じた区分情報を設定する手段をさらに備え、前記カバレッジ情報生成手段は、同一コンポーネント区分毎に重み付けカバレッジ情報を生成する手段をさらに備えることを特徴とする。
【発明の効果】
【０００６】
以上の構成により本発明では、ソースコードを構成する各行の重要度に応じて重み付けのされたカバレッジ情報を取得することが可能となるため、通常のカバレッジ情報が１００％に満たない場合であっても、重み付けカバレッジ情報を参照することにより、ソースコード中の重要部分についてテストが行われているかを容易に判断することが可能となる。
また、メソッド，クラス，コンポーネント等の区分毎にカバレッジ情報を取得することが可能となるため、メソッド，クラス，コンポーネント等の単位で再テストの優先順位等を効率よく判断することが可能となる。
【発明を実施するための最良の形態】
【０００７】
以下、本発明の一実施の形態に係るカバレッジ情報取得システムについて、図面に基づき説明する。
図１は、本実施の形態に係るカバレッジ情報取得システムの概略構成を示すブロック図である。
カバレッジ情報取得システム１００は、ソース情報生成部１０１と、通過情報記録部１０２と、解析部１０３とを備える。
ソース情報生成部１０１は、テスト対象となるソースコード１１０を読込み、ソース情報１１１を生成する。ソース情報１１１は、ソースコード１１０の全ての行に含まれる単語の情報と、それらを行，メソッド，クラス，ファイル，コンポーネント等の単位でまとめた情報を示し、単語区分等に応じた重みが設定される。
通過情報記録部１０２は、テスト担当者がテストを行ったソースコードについてのテスト通過情報１１２を記録する。テスト通過情報１１２は、ソース情報１１１に含まれる行識別情報と、各行についてテスト通過済みか否かを示す情報とから構成される。
カバレッジ情報生成部１０３は、ソース情報１１１と、テスト通過情報１１２とに基づき、重み付きのカバレッジ情報１１３を算出する。
本実施の形態では、単語区分等に応じて重みの設定されたソース情報１１１と、テスト通過情報１１２とに基づき、カバレッジ情報を算出することにより、行，メソッド，クラス，ファイル，コンポーネント等の単位毎に重み付けのされたカバレッジ情報を取得することを可能としている。
【０００８】
図２は、ソース情報生成部１０１の構成を示すブロック図である。
ソース情報生成部１０１は、読込部２０１と、区分設定部２０２と、重み設定部２０３とから構成されている。
読込部２０１は、ソースコード１１０を読み込み、各ソースコード１１０の言語仕様等に応じて、単語，行，メソッド，クラス，ファイル，コンポーネント単位でまとめた情報をソース情報１１１として格納する。
区分設定部２０２は、区分辞書２０４に予め設定された区分情報に基づき、ソース情報１１１に格納された単語，行，メソッド，クラス，ファイル，コンポーネントに区分を設定する。ここで区分情報とは、各行に含まれる単語（例えば、命令語）の種別に応じて予め設定される。
重み設定部２０３は、重み辞書２０５に予め設定された重み情報に基づき、ソース情報１１１に格納された単語，行，メソッド，クラス，ファイル，コンポーネントの区分に応じた重み付けを行う。
【０００９】
図３は、区分設定部２０２の用いる区分辞書２０４のデータ構造の一例を示す図である。
区分辞書２０４は、単語３０１と、各単語に設定された単語区分３０２を有する。
単語３０１は、各行に含まれる予約語を示すものであり、例えば、「条件文」「代入文」「ループ文」「データベースアクセス文」等の種別毎に単語区分３０２が設定される。
本例では、各単語３０１に応じた単語区分３０２のみが設定されており、行に対する区分の設定では、例えば、各行の先頭単語と一致する単語３０１の単語区分３０２を行の区分として設定する。
また、メソッド区分の設定としては、例えば、メソッド内の全ての行のうち一番重みが大きい行の区分をメソッドの区分として設定する。クラス，ファイル，コンポーネントに対する区分の設定としては、メソッド区分の設定と同様に、そのスコープ内の行のうち一番重みが大きい行の区分をその区分として設定する。
なお、各区分の設定方法は、各クラス等の設計方法により異なるものとなる。
【００１０】
図４は、重み設定部２０３の用いる重み辞書２０５のデータ構造の一例を示す図である。
重み辞書２０５には、各区分の重要度に応じた重み情報が予め定義されている。重み辞書２０５は、単語，行，メソッド，クラス，ファイル，コンポーネント毎にテーブル４１０，４２０，４３０，４４０，４５０，４６０が格納されており、各テーブル４１０，４２０，４３０，４４０，４５０，４６０は、各区分４１１，４２１，４３１，４４１，４５１,４６１に対して重み４１２，４２２，４３２，４４２，４５２，４６２が設定されている。
重み設定部２０３は、各テーブル４１０，４２０，４３０，４４０，４５０，４６０を参照し、単語，行，メソッド，クラス，ファイル，コンポーネントのそれぞれに設定された区分に基づき、重み情報を設定する。
【００１１】
図５は、ソース情報生成部１０１により生成されたソース情報１１１のデータ構造の一例を示す図である。
ソース情報１１１は、単語，行，メソッド，クラス，ファイル，コンポーネント毎にテーブル５１０，５２０，５３０,５４０，５５０，５６０を有する。
単語テーブル５１０は、単語の含まれる行を一意に識別するための行ＩＤ５１１と、行内の単語の位置を識別するための単語番号５１２と、ソースコードから取得した単語５１３と、区分５１４と、重み５１５との各情報を有する。ここで、各ＩＤは全テスト対象ソースコードについて一意とする。
行テーブル５２０は、行の含まれるメソッドを一意に識別するためのメソッドＩＤ５２１と、行ＩＤ５２２と、行の位置を識別するための行番号５２３と、区分５２４と、重み５２５との各情報を有する。行テーブル５２０における区分５２４の値は、単語テーブル５１０の区分５１４に設定された情報に基づき設定される。
メソッドテーブル５３０は、メソッドの含まれるクラスを一意に識別するためのクラスＩＤ５３１と、メソッドＩＤ５３２と、ソースコードから取得したメソッド名５３３と、区分５３４と、重み５３５との各情報を有する。
クラステーブル５４０は、クラスの含まれるファイルを一意に識別するためのファイルＩＤ５４１と、クラスＩＤ５４２と、ソースコードから取得したクラス名５４３と、区分５４４と、重み５４５との各情報を有する。
ファイルテーブル５５０は、ファイルの含まれるコンポーネントを一意に識別するためのコンポーネントＩＤ５５１と、ファイルＩＤ５５２と、ファイル名５５３と、区分５５４と、重み５５５との各情報を有する。
コンポーネントテーブル５６０は、コンポーネントＩＤ５６１と、コンポーネント名５６２と、区分５６３と、重み５６４との各情報を有する。
なお、メソッドテーブル５３０，クラステーブル５４０，ファイルテーブル５５０，コンポーネントテーブル５６０の各区分５３４，５４４，５５４，５６３の設定は、各コンポーネント等の設計方法により異なることとなる。
【００１２】
以上の構成に基づき、ソース情報生成部１０１の行うソース情報１１１の生成処理について説明する。
図６は、ソース情報生成処理手順を示すフローチャートである。
ソース情報生成部１０１は、読込部２０１によりソースコード１１０を読込み、ソースコード１１０の言語仕様に応じて、単語テーブル５１０，行テーブル５２０，メソッドテーブル５３０，クラステーブル５４０，ファイルテーブル５５０，コンポーネントテーブル５６０の区分及び重み以外の項目に値を入れてソース情報１１１を生成する（ステップ６０１）。この場合のメソッド切出し，クラス切出しは公知の方法を用いる。
区分設定部２０２は、区分辞書２０４を参照し、ソース情報１１１を構成する各テーブル５１０，５２０，５３０，５４０，５５０，５６０に区分を設定する（ステップ６０２）。
重み設定部２０３は、重み辞書２０５を参照し、区分設定部２０２によりソース情報１１１ソース情報１１１を構成する各テーブル５１０，５２０，５３０，５４０，５５０，５６０に設定された区分に基づき重みを設定する（ステップ６０３）。
以上の処理により重み情報を設定したソース情報１１１を生成する。
【００１３】
図７は、解析部１０３の構成を示すブロック図である。
解析部１０３は、メソッドカバレッジ解析部７０１，クラスカバレッジ解析部７０２，ファイルカバレッジ解析部７０３，コンポーネントカバレッジ解析部７０４，システムカバレッジ解析部７０５の各解析部を備える。
各解析部７０１〜７０５は、予め定義された算出式を用いて、ソース情報１１１及びテスト通過情報１１２に基づき、メソッド単位，クラス単位，ファイル単位，コンポーネント単位，システム単位で、カバレッジ及び重み付けカバレッジの算出を行う。
【００１４】
図８は、解析部１０３の行うカバレッジ情報生成処理手順を示すフローチャートである。
解析部１０３のメソッドカバレッジ解析部７０１は、ソース情報１１１の行テーブル５２０の情報及びテスト通過情報１１２に基づき、各メソッド毎にカバレッジ及び重み付きカバレッジの算出を行う（ステップ８０１）。
クラスカバレッジ解析部７０２は、各クラス毎にカバレッジ及び重み付けカバレッジの算出を行う（ステップ８０２）。
ファイルカバレッジ解析部７０３は、各ファイル毎にカバレッジ及び重み付けカバレッジの算出を行う（ステップ８０３）。
コンポーネントカバレッジ解析部７０４は、各コンポーネント毎にカバレッジ及び重み付けカバレッジの算出を行う（ステップ８０４）。
システムカバレッジ解析部７０５は、システム全体のカバレッジ及び重み付けカバレッジの算出を行う（ステップ８０５）。
以上の処理により算出されたカバレッジ及び重み付けカバレッジに基づき、カバレッジ情報を出力する（ステップ８０６）。
【００１５】
図９は、解析部１０３のメソッドカバレッジ解析部７０１がメソッド単位でのカバレッジ算出処理に用いる算出式の一例を示す図である。なお、以下の各式中のΣ記号はΣの直下に記述してある条件を満たす行についての集計を表す。
算出式９０１は、メソッドＡについて従来と同様のカバレッジを算出するための式を示す。
算出式９０２は、メソッドＡについて、重み付けを考慮したカバレッジを算出するための式であり、メソッドＡを構成する各行及びテスト通過済みの各行に設定された重みの値を乗じることにより、重み付けカバレッジが算出される。
算出式９０３は、メソッドＡについて、行区分毎のカバレッジを算出するための式を示す。
【００１６】
図１０は、ある所定の数値Ｗの重みが設定されたメソッドについてのカバレッジ算出処理に用いる算出式の一例を示す図である。
算出式１００１は、設定された重みが、管理者等により指定された所定の数値Ｗであるメソッドについて、当該メソッドを構成する行数の合計に対するテスト通過済みの行数の割合を算出するための式を示す。
【００１７】
図１１，図１２は、クラスカバレッジ解析部７０２がクラス単位でのカバレッジ算出処理に用いる算出式の一例を示す図である。
図１１は、クラス単位のカバレッジとして従来と略同様のカバレッジの算出式１１０１と、重み付けカバレッジの算出式１１０２と、行区分毎のカバレッジの算出式１１０３とを示す。
図１２は、クラスＡを構成するメソッドのメソッド区分毎のカバレッジの算出式１２０１と、メソッド区分毎に行単位での重み付けを考慮したカバレッジの算出式１２０２と、重みが指定された所定の数値Ｗであるクラスについてのカバレッジ算出式１２０３とを示す。
【００１８】
同様に、ファイル単位，コンポーネント単位，システム単位のカバレッジ算出式を予め定義して、ファイルカバレッジ解析部７０３，コンポーネントカバレッジ解析部７０４，システムカバレッジ解析部７０５のそれぞれによる解析処理に用いる。
なお、図９〜１２の算出式では、行重みに基づくカバレッジの算出を行っているが、図５に示すメソッドテーブル５３０，クラステーブル５４０，ファイルテーブル５５０，コンポーネントテーブル５６０の各テーブルに設定された重みに基づくカバレッジの算出を行うこととしてもよい。例えば、メソッドを構成する全ての行についてテスト通過済みか否かに基づき、メソッド単位でのテスト通過の有無を判定し、当該判定結果及びメソッド単位の重みを用いて、テスト通過済みのメソッドの割合を示すカバレッジ及びメソッド重みを考慮したカバレッジを算出することとしてもよい。
【００１９】
以上の処理について、具体例に基づき説明する。
図１３はテスト対象となるソースコードの一例を示す図であり、図１４〜１６はソースコードに基づき読込部２０１が生成したソース情報の一例を示す図であり、図１７〜１９は区分設定部２０２及び重み設定部２０３により区分，重みの設定されたソース情報の一例を示す図である。
まず、図１３に示すソースコード１３００の各行について、読込部２０１が解析処理を行いソース情報として、図１４に示す単語テーブル１４００，図１５に示す行テーブル１５００，図１６に示すメソッドテーブル１６００を生成する。
次に、各テーブル１４００，１５００，１６００に対し、区分設定部２０２及び重み設定部２０３が区分，重み設定を行う。具体的には、単語テーブル１４００に対し、区分辞書２０４及び単語テーブル４１０を用いて単語区分及び重みを設定し、図１７に示す単語テーブル１７００とする。ここで、変数については型を解決したのちに、その型について区分を設定する。
行テーブル１５００については、単語テーブル１７００に基づき、行区分及び行重みを設定して、図１８に示す行テーブル１８００とする。行区分および行の重みにはその行に含まれる単語のうちで、最大の重みを持つ単語の区分および重みを設定する。
メソッドテーブル１６００については、行テーブル１８００に基づき、メソッド区分及びメソッド重みを設定して、図１９に示すメソッドテーブル１９００とする。メソッド区分およびメソッドの重みにはそのメソッドに含まれる行のうち、最大の重みを持つ行の区分および重みを設定する。
【００２０】
図２０はメソッドＩＤ「０００００１」のメソッドについて、区分及び重みの設定がされた行テーブルの一例を示し、図２１は当該行テーブルに基づくカバレッジ算出の具体例を示す。
行テーブル２０００では、行ＩＤ「０００００１」〜「００００１０」の１０行で構成されるメソッド「０００００１」について、各行毎の区分及び重みが設定されている。
図２１（ａ）は、行テーブル２０００の行番号１，２，３，４，５，６，７，９の各行について、テスト通過済みである場合のカバレッジの算出の例を示す。この場合、通常のカバレッジ率は、（通過行数）／（全行数）×１００＝８／１０×１００＝８０％となる。一方、重み付けを考慮したカバレッジ率は、Σ（通過した行の重み）／Σ（全行の重み）×１００＝２２／２４×１００＝９１．７％となる。この場合、通常のカバレッジ率では８０％に留まっているので単体テストを終わらせて良いものか判断するにはどの行のテストが行われなかったのかを実際に調べないといけないが、重み付けを考慮したカバレッジ率は９１．７％と９０％を越えているので管理者が大事だと判断した行はほぼ通過していると判断出来る。
図２１（ｂ）は、行テーブル２０００の行番号１，２，３，４，５，６，７，８，１０の各行について、テスト通過済みである場合のカバレッジの算出の例を示す。この場合、通常のカバレッジ率は、（通過行数）／（全行数）×１００＝９／１０×１００＝９０％となる。一方、重み付けを考慮したカバレッジ率は、Σ（通過した行の重み）／Σ（全行の重み）×１００＝１９／２４×１００＝７９．２％となる。この場合、通常のカバレッジ率は９０％となっているので単体テストを終わらせて良いと判断してしまいそうだが、重み付けを考慮したカバレッジ率は７９．２％に留まっているので管理者が大事だと判断した行のうち、テストで通過していない行が存在している可能性が高く、単体テストを追加で行うべきだと判断する事が出来る。
【００２１】
以上のように、本実施の形態に係るカバレッジ情報取得システムでは、ソースコードを構成する各行の重要度に応じて重み付けのされたカバレッジ情報を取得することが可能となるため、通常のカバレッジ情報が１００％に満たない場合であっても、重み付けカバレッジ情報を参照することにより、ソースコード中の重要部分についてテストが行われているかを容易に判断することが可能となる。
また、メソッド，クラス，コンポーネント等の区分毎にカバレッジ情報を取得することが可能となるため、メソッド，クラス，コンポーネント等の単位で再テストの優先順位等を効率よく判断することが可能となる。
【００２２】
なお、本発明は前記実施の形態に示すものに限らず、同様の処理を可能とするものであれば、各処理部の構成及びテーブル構成等を変更してもよい。従って、カバレッジ取得システムを複数端末で構成してもよい。
また、カバレッジ情報を生成する単位は、メソッド，クラス，ファイル，コンポーネント，システムに限らず、言語仕様，プロジェクトにおける開発方法等に応じて種々に設定可能なものとする。
【図面の簡単な説明】
【００２３】
【図１】本発明の一実施の形態に係るカバレッジ取得システムの概略構成を示すブロック図である。
【図２】カバレッジ取得システムを構成する読込部の概略構成を示すブロック図である。
【図３】区分辞書のデータ構造の一例を示す図である。
【図４】重み辞書のデータ構造の一例を示す図である。
【図５】ソース情報のデータ構造の一例を示す図である。
【図６】ソース情報生成部によるソース情報の生成処理手順を示すフローチャートである。
【図７】カバレッジ取得システムを構成する解析部の概略構成を示すブロック図である。
【図８】カバレッジ情報生成部によるカバレッジデータの生成処理手順を示すフローチャートである。
【図９】カバレッジ算出式の一例を示す図である。
【図１０】カバレッジ算出式の一例を示す図である。
【図１１】カバレッジ算出式の一例を示す図である。
【図１２】カバレッジ算出式の一例を示す図である。
【図１３】テスト対象となるソースコードの一例を示す図である。
【図１４】単語テーブルの一例を示す図である。
【図１５】行テーブルの一例を示す図である。
【図１６】メソッドテーブルの一例を示す図である。
【図１７】区分，重みの設定された単語テーブルの一例を示す図である。
【図１８】区分，重みの設定された行テーブルの一例を示す図である。
【図１９】区分，重みの設定されたメソッドテーブルの一例を示す図である。
【図２０】区分，重みの設定された行テーブルの一例を示す図である。
【図２１】カバレッジ算出の一例を示す図である。
【符号の説明】
【００２４】
１００  カバレッジ取得システム、１０１  ソース情報生成部、１０２  通過情報記憶部、１０３  カバレッジ情報解析部、１１０  ソースプログラム、１１１  ソース情報、１１２  テスト通過情報、１１３  カバレッジ情報、２０１  読込部、２０２  区分設定部、２０３  重み設定部、２０４  区分辞書、２０５  重み辞書、７０１  メソッドカバレッジ解析部、７０２  クラスカバレッジ解析部、７０３  ファイルカバレッジ解析部、７０４  コンポーネントカバレッジ解析部、７０５  システムカバレッジ解析部。
【図１】
2006155092.tif 000003
【図２】
2006155092.tif 000004
【図３】
2006155092.tif 000005
【図４】
2006155092.tif 000006
【図５】
2006155092.tif 000007
【図６】
2006155092.tif 000008
【図７】
2006155092.tif 000009
【図８】
2006155092.tif 000010
【図９】
2006155092.tif 000011
【図１０】
2006155092.tif 000012
【図１１】
2006155092.tif 000013
【図１２】
2006155092.tif 000014
【図１３】
2006155092.tif 000015
【図１４】
2006155092.tif 000016
【図１５】
2006155092.tif 000017
【図１６】
2006155092.tif 000018
【図１７】
2006155092.tif 000019
【図１８】
2006155092.tif 000020
【図１９】
2006155092.tif 000021
【図２０】
2006155092.tif 000022
【図２１】
2006155092.tif 000023