JP5743663B2 - Test support system, test support method, and program - Google Patents
Test support system, test support method, and program Download PDFInfo
- Publication number
- JP5743663B2 JP5743663B2 JP2011088906A JP2011088906A JP5743663B2 JP 5743663 B2 JP5743663 B2 JP 5743663B2 JP 2011088906 A JP2011088906 A JP 2011088906A JP 2011088906 A JP2011088906 A JP 2011088906A JP 5743663 B2 JP5743663 B2 JP 5743663B2
- Authority
- JP
- Japan
- Prior art keywords
- control
- source code
- test
- coverage
- path set
- 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.)
- Active
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
本発明は、テスト支援システム、テスト支援方法、及びプログラムに関する。 The present invention relates to a test support system, a test support method, and a program.
ソフトウェア開発において、テスト(試験)は品質を確保する上で重要である。テストとは、要件(仕様)を基に作成したソフトウェア(ソースコード、コンパイルされた中間コード、オブジェクトコード)が要件(仕様)を満たしているか否かを検証するプロセスである。つまり、テストは、作成したソフトウェアが要件を満たすか否かを判定し、要件を満たさない場合にその原因となる欠陥を発見することを目的とする。テストは、要件を基にしていることから要件ベーステストとも呼ばれる。 In software development, testing is important for ensuring quality. The test is a process for verifying whether software (source code, compiled intermediate code, object code) created based on a requirement (specification) satisfies the requirement (specification). In other words, the purpose of the test is to determine whether or not the created software satisfies the requirements, and to find out a defect that causes the software if the requirements are not satisfied. Tests are also called requirements-based tests because they are based on requirements.
一般的なソフトウェアテストの作成業務のフローを図15に示す。図15に示すように、通常のソフトウェアテストの作成では、要件カバレッジ分析(S33)、及び構造カバレッジ分析(S36)という作業が行われる。以下に、要件カバレッジ分析(S33)、及び構造カバレッジ分析(S36)について説明する。 FIG. 15 shows a flow of general software test creation work. As shown in FIG. 15, in creating a normal software test, work of requirement coverage analysis (S33) and structure coverage analysis (S36) is performed. The requirement coverage analysis (S33) and the structure coverage analysis (S36) will be described below.
要件カバレッジ分析は、作成したテストが要件(仕様)を網羅しているか否かを確認する工程である。テストが要件をどれだけ網羅しているかという網羅度を要件カバレッジという。要件カバレッジ分析の目的は、作成したテストの実行により、要件に定義されている項目がソフトウェアにより実装されているかを確認することである。例えば、要件に1000の機能が定義されている場合、要件カバレッジ分析において各機能が実装されていることを検証する。 The requirement coverage analysis is a process of confirming whether or not the created test covers the requirements (specifications). The degree of coverage of how much a test covers requirements is called requirements coverage. The purpose of requirement coverage analysis is to confirm whether the items defined in the requirement are implemented by software by executing the created test. For example, when 1000 functions are defined in the requirement, it is verified that each function is implemented in the requirement coverage analysis.
要件カバレッジ分析の結果を分析し(S34)、要件に対してテストが不足している場合(S34:No)、テスト設計者は不足テストの追加を行い(S35)、再度の要件カバレッジ分析(S34)を実行する。 The result of the requirement coverage analysis is analyzed (S34), and when the test is insufficient for the requirement (S34: No), the test designer adds the shortage test (S35) and repeats the requirement coverage analysis (S34). ).
要件カバレッジ分析に必要な項目を含むテストは、要件(仕様)がソフトウェアにもれなく実装されていることを検証できる。しかし、ソフトウェア内に余分な処理が実装されていた場合(例えば実装上の誤り、要件の誤解に起因する不要なコードが混入されていた場合)、要件カバレッジ分析に必要な項目のみを含むテストでは、このような問題を検出することはできない。そのため、以下に説明する構造カバレッジ分析も行う必要がある。 Tests including items necessary for requirements coverage analysis can verify that the requirements (specifications) are implemented in the software. However, if extra processing is implemented in the software (for example, if there is an implementation error or unnecessary code due to a misunderstanding of requirements), a test that includes only the items necessary for requirements coverage analysis , Can not detect such problems. Therefore, it is necessary to perform the structure coverage analysis described below.
構造カバレッジ分析とは、作成したテストがソフトウェア(ソースコード、コンパイルされた中間コード、オブジェクトコード)の構造をどれだけ網羅しているかを確認する工程である。ソフトウェアの構造とは、行、条件文、分岐、実行経路等のソフトウェアの論理構造を構成する要素である。作成したテストがソフトウェアの構造をどれだけ網羅しているかを示す網羅度を構造カバレッジと呼称する。 The structure coverage analysis is a process for confirming how much the created test covers the structure of the software (source code, compiled intermediate code, object code). The software structure is an element constituting a logical structure of software such as a line, a conditional statement, a branch, and an execution path. The degree of coverage indicating how much the created test covers the software structure is called structure coverage.
ソフトウェア構造カバレッジの基準は、構造をどのような観点から定義するかに応じて定まる。例えば、ソースコード行のみをソフトウェアの構造と捉えた場合、作成したテストにより実行されるコード行を全コード行で除算した結果が構造カバレッジとなる。さらに、条件や分岐を考慮してソフトウェアの構造を捉えても良い。ソフトウェア構造カバレッジの基準は、開発現場における品質に対する考え方、テスト対象のソフトウェアが使用される分野、業界標準に応じて適宜定められる。 The standard of software structure coverage is determined according to the viewpoint from which the structure is defined. For example, when only the source code line is regarded as the software structure, the result of dividing the code line executed by the created test by all the code lines is the structure coverage. Further, the software structure may be captured in consideration of conditions and branches. The standard of software structure coverage is appropriately determined according to the concept of quality at the development site, the field in which the software to be tested is used, and the industry standard.
テストがソフトウェア構造カバレッジの基準を全て満たしている場合(100%)、テストによりソフトウェア構造カバレッジの基準に準拠した構造が全て実行される。ここで、ソフトウェア構造カバレッジが100%にできるようなテストケース数は、採用するソフトウェア構造カバレッジの基準により異なり、場合によっては現実的にテスト実行できないほど多数になる。そのため、実際のテスト実行時には、テスト設計者はカバレッジ(網羅率)とテスト実行にかかるコストとの兼ね合いからテストケース数を決定する。 If the test meets all the software structure coverage criteria (100%), the test executes all structures that conform to the software structure coverage criteria. Here, the number of test cases that can make the software structure coverage 100% differs depending on the adopted software structure coverage standard, and in some cases, the number of test cases becomes so large that the test cannot be executed practically. Therefore, at the time of actual test execution, the test designer determines the number of test cases based on the balance between coverage (coverage rate) and test execution costs.
ソフトウェア構造カバレッジ分析において、作成したテスト(要件カバレッジ分析の満足するテスト)では実行されないコードの構造が存在することが明らかになった場合、テスト実行者は意図していない構造、すなわちコードが混入されたと判断できる。これにより、テスト実行者は、バグを発見できる。 In software structure coverage analysis, if it becomes clear that there is a structure of code that is not executed in the created test (test that satisfies the requirement coverage analysis), the test performer is mixed with an unintended structure, that is, code. Can be judged. This allows testers to find bugs.
ソフトウェア構造カバレッジ分析を実施する目的は、コードが意図した実装となっているかを検証するためのテストが正確に設計されているかを確認することである。ソフトウェア構造カバレッジ分析の分析結果に応じて、テスト設計者は適宜テストを是正(修正等)する。 The purpose of performing software structure coverage analysis is to confirm that the tests for verifying that the code has the intended implementation are designed correctly. According to the analysis result of the software structure coverage analysis, the test designer corrects (corrects, etc.) the test as appropriate.
上述のように、ソフトウェア要件カバレッジ分析の要件を満たすのみのテストを実行しただけでは、意図しないコードが混入した場合に当該コードを検出することができない。そのため、ソフトウェア要件カバレッジ分析の後にソフトウェア構造カバレッジ分析により是正されたテストを用いる必要がある。 As described above, simply executing a test that satisfies the requirements of the software requirement coverage analysis cannot detect the code when an unintended code is mixed. Therefore, it is necessary to use tests corrected by software structure coverage analysis after software requirements coverage analysis.
ソフトウェア構造カバレッジ分析の一般的な手法を以下に述べる。はじめに、要件カバレッジ分析が終了したテストを一通り実行し、実行結果をカバレッジ測定ツールで確認する。テストに含まれる項目が不足していることが判明した場合、テスト設計者はテスト項目を追加する。特許文献1には当該手法の一態様が開示されている。
The general method of software structure coverage analysis is described below. First, run the test after the requirement coverage analysis is completed, and check the execution result with the coverage measurement tool. When it is found that the items included in the test are insufficient, the test designer adds test items.
特許文献2には、SAT手法(充足可能性判定手法)を応用してゴールデン(仕様S(あるシステムを実現するための要求条件)を完全に満たす実装)を解析することにより、動作要件を満たすテスト制約を自動抽出する技術が開示されている。ゴールデンは、リファレンスプログラムとして動作する。このゴールデンを算出する方法は、形式手法記述により記述する等の必要があり、対応には多大な工数を要する。なお、特許文献2には、リファレンスプログラムを用いずにテスト制約を生成することに関する示唆、教示はない。
In
一般にソフトウェア構造カバレッジ分析において、作成したテストがソフトウェア構造をどれだけ網羅しているかを確認することは手間のかかる作業である。また、分析結果に応じてテストを修正する作業にも手間がかかる。 In general, in software structure coverage analysis, it is a troublesome task to check how much the created test covers the software structure. Also, it takes time to correct the test according to the analysis result.
特にソフトウェア構造カバレッジ分析における基準として変更条件判定カバレッジ(MC/DC、Modified Condition Decision Coverage)を採用した場合、判定内の複数の条件のうちのひとつの条件だけが変更された場合に判定結果が反転するような条件の組み合わせを求めることは、困難である。すなわち、変更条件判定カバレッジを採用した場合、作成したテストがソフトウェア構造をどれだけ網羅しているかを確認することは非常に困難である。 In particular, when modified condition decision coverage (MC / DC, Modified Condition Decision Coverage) is adopted as the standard in software structure coverage analysis, the judgment result is reversed when only one of the multiple conditions in the judgment is changed. It is difficult to obtain a combination of conditions to do so. That is, when the change condition determination coverage is adopted, it is very difficult to confirm how much the created test covers the software structure.
さらに、変更条件判定カバレッジ(MC/DC)を満たすように、テストのテストケースを修正、追加、削除等を行って調節することは非常に困難である。上述の方法では、テストが変更条件判定カバレッジにおける網羅率を求めることはできる。しかし上述の方法では、網羅率が低かった場合にどのようなテストケースが不足しているか、どのテストケースをどのように変更すればよいか、最小限のテストケース数にするにはどのように変更すればよいか、を認識できないためである。 Furthermore, it is very difficult to adjust the test case by modifying, adding, or deleting the test case so as to satisfy the change condition judgment coverage (MC / DC). In the above method, the test can determine the coverage rate in the change condition determination coverage. However, in the above method, what kind of test cases are missing when the coverage rate is low, how to change which test cases, and how to minimize the number of test cases? This is because it is not possible to recognize whether the change should be made.
非特許文献1には、テストが変更条件判定カバレッジを満たしているか否かを判定する方法が記載されている。しかし、テストが変更条件判定カバレッジを満たしていない場合のテストの修正方法についての教示、示唆が無い。
Non-Patent
すなわち、リファレンスプログラムを持たない環境下において、ソフトウェア構造カバレッジ分析を満たすテストを生成する工数が非常に大きいという問題があった。 That is, there is a problem that man-hours for generating a test satisfying the software structure coverage analysis are very large in an environment without a reference program.
本発明は、上記の事情を鑑みてなされたものであり、ソフトウェア構造カバレッジ分析の要件を満たすテストを容易に生成することができるテスト支援システム、テスト支援方法、及びプログラムを提供することを主たる目的とする。 The present invention has been made in view of the above circumstances, and a main object of the present invention is to provide a test support system, a test support method, and a program that can easily generate a test that satisfies the requirements of software structure coverage analysis. And
本発明にかかるテスト支援システムの一態様は、
ソースコードから処理の流れをグラフ形式で表示した制御フローグラフを生成する制御フローグラフ生成部を具備する解析部と、
前記制御フローグラフ、及びソフトウェア構造にかかる第1カバレッジ基準に基づき、前記ソースコード内の実行パスを含む制御パスセットを生成する制御パスセット生成部と、を備え、
前記制御パスセットは、前記第1カバレッジ基準を満たす前記実行パスから構成される、ものである。
One aspect of the test support system according to the present invention is:
An analysis unit including a control flow graph generation unit that generates a control flow graph displaying the flow of processing in a graph format from the source code;
A control path set generation unit that generates a control path set including an execution path in the source code based on the control flow graph and a first coverage standard according to the software structure;
The control path set is composed of the execution paths that satisfy the first coverage criterion.
本発明にかかるテスト支援方法の一態様は、
ソースコードから処理の流れをグラフ形式で表示した制御フローグラフを生成し、
前記制御フローグラフに基づき、ソフトウェア構造にかかる第1カバレッジ基準を満たす前記ソースコード内の実行パスを含む制御パスセットを生成する、ものである。
One aspect of the test support method according to the present invention is as follows.
Generate a control flow graph that displays the flow of processing in the form of a graph from the source code,
Based on the control flow graph, a control path set including an execution path in the source code that satisfies the first coverage criterion concerning the software structure is generated.
本発明にかかるプログラムの一態様は、
コンピュータに、
ソースコードから処理の流れをグラフ形式で表示した制御フローグラフを生成する処理と、
前記制御フローグラフに基づき、ソフトウェア構造にかかる第1カバレッジ基準を満たす前記ソースコード内の実行パスを含む制御パスセットを生成する処理と、を実行させるためのものである。
One aspect of the program according to the present invention is as follows:
On the computer,
Processing to generate a control flow graph that displays the flow of processing in the form of a graph from the source code;
And generating a control path set including an execution path in the source code that satisfies the first coverage standard for the software structure based on the control flow graph.
本発明によれば、ソフトウェア構造カバレッジ分析の要件を満たすテストを容易に生成することができるテスト支援システム、テスト支援方法、及びプログラムを提供することができる。 According to the present invention, it is possible to provide a test support system, a test support method, and a program that can easily generate a test that satisfies the requirements of software structure coverage analysis.
<実施の形態1>
以下、図面を参照して本発明の実施の形態について説明する。図1は、本実施の形態にかかるテスト支援装置の構成を示すブロック図である。テスト支援システム1は、ソースコード情報入力部11と、制御フローグラフ生成部12と、真理値表生成部13と、カバレッジ基準入力部14と、制御パスセット生成部15と、テストケース作成方法指示部16と、を備える。
<
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing the configuration of the test support apparatus according to the present embodiment. The
テスト支援システム1は、一般に、汎用的なコンピュータ上でプログラム制御により動作する。なお、テスト支援システム1に含まれる各処理部は、ネットワーク等により接続された複数のコンピュータ上に分散されて配置されても良い。
The
テスト設計者は、テストの対象となるソースコードをシステムに指定する。ソースコード情報入力部11は、テスト設計者から指定されたソースコードをファイルシステム等から読み込む。図2は、ソースコード情報入力部11が読み込むソースコードの一例を示す図である。以下、図2に示すソースコードを用いて適宜説明する。ソースコード情報入力部11は、読み込んだソースコードを制御フローグラフ生成部12及びテストケース作成方法指示部16に供給する。
The test designer specifies the source code to be tested in the system. The source code
制御フローグラフ生成部12は、供給されたソースコードから制御フローグラフを生成する処理部である。図3は、制御フローグラフ生成部12が図2に示すソースコードから生成した制御フローグラフを示す図である。図示するように、当該ソースコードは、2つの分岐と、7つの処理命令と、から構成される。なお、図3では、分岐を「w&&x」のように複数の条件文から構成されるように記載したが必ずしもこれに限られず、図4に示すように条件文毎に処理が分岐するように記載をしても良い。制御フローグラフ生成部12は、生成した制御フローグラフを真理値表生成部13、制御パスセット生成部15、及びテストケース作成方法指示部16に供給する。
The control flow
真理値表生成部13は、供給された制御フローグラフから各分岐の真理値表を生成する処理部である。真理値表生成部13は、制御フローグラフに含まれる分岐文を抽出し、抽出した分岐文に含まれる条件文を抽出し、抽出した情報から真理値表を生成する。図5は、真理値表生成部13が生成した図2に示すソースコードに関する真理値表を示す図である。図示するように、真理値表には、各条件の真(1)または偽(0)の条件、及び各分岐文の真(1)または偽(0)が記載される。真理値表生成部13は、生成した真理値表を制御パスセット生成部15及びテストケース作成方法指示部16に供給する。
The truth
カバレッジ基準入力部14は、ユーザから指定されるソフトウェア構造カバレッジのカバレッジ基準が入力される処理部である。カバレッジ基準入力部14は、入力されたカバレッジ基準を制御パスセット生成部15に供給する。
The coverage
ここで、カバレッジ基準とは、ソフトウェア構造をどのような観点から定義するかに応じて自由に定めれば良い。例えば、ソースコード行のみをソフトウェアの構造と捉えた場合、全ソースコード行に対する実行行数の割合をカバレッジ基準として指定しても良い。また、分岐命令を除くステップの実行割合や、全分岐数に対する実行分岐数をカバレッジ基準として指定しても良い。カバレッジ基準の一例として、「全命令ステップ(分岐処理を除くステップ)の100%を実行すること(命令網羅)」、「条件分岐の100%を実行すること(分岐網羅)」等が挙げられる。 Here, the coverage standard may be freely determined according to what viewpoint the software structure is defined from. For example, when only the source code line is regarded as the software structure, the ratio of the number of execution lines to all the source code lines may be designated as the coverage standard. Also, the execution ratio of steps excluding branch instructions and the number of execution branches with respect to the total number of branches may be specified as the coverage standard. Examples of coverage criteria include “execution of 100% of all instruction steps (steps excluding branch processing) (instruction coverage)”, “execution of 100% of conditional branches (branch coverage)”, and the like.
制御パスセット生成部15は、供給された制御フローグラフ、真理値表、及びカバレッジ基準から制御パスセットを生成する処理部である。制御パスセットとは、カバレッジ基準を満たし得る制御パスの集合である。制御パス(実行パスとも記載する)とは、プログラムの実行経路を示す。制御パスセット生成部15は、制御フローグラフから全ての制御パスを抽出する。
The control path set
図3の制御フローグラフは、以下の4つの制御パスを含んでいる。
パス1:1(w&&x==1)23(y&&z==1)467
パス2:1(w&&x==1)23(y&&z==0)567
パス3:1(w&&x==0)3(y&&z==1)467
パス4:1(w&&x==0)3(y&&z==0)567
ここで、上記パスの表記において、「1」〜「7」の表記は、処理名を表す。
The control flow graph of FIG. 3 includes the following four control paths.
Path 1: 1 (w && x == 1) 23 (y && z == 1) 467
Path 2: 1 (w && x == 1) 23 (y && z == 0) 567
Pass 3: 1 (w && x == 0) 3 (y && z == 1) 467
Path 4: 1 (w && x == 0) 3 (y && z == 0) 567
Here, in the notation of the above path, the notations “1” to “7” represent process names.
以下、カバレッジ基準として「全命令ステップ(分岐処理を除くステップ)の100%を実行すること」が指定された場合の制御パスセット生成部15の動作について説明する。制御パスセット生成部15は、前述のように、制御フローグラフから全ての制御パスを抽出する。制御パスセット生成部15は、制御フローグラフ(図3)から全命令ステップをカウントし、全命令が7命令から構成されていると判定する。制御パスセット生成部15は、例えば以下のパス1を選択すると6つの命令を実行できると判定する。パスの選択は、例えばより命令網羅の対象となっていない命令を多く実行するパスを優先して選択すればよい。
パス1:1(w&&x==1)23(y&&z==1)467
Hereinafter, the operation of the control path set
Path 1: 1 (w && x == 1) 23 (y && z == 1) 467
制御パスセット生成部15は、上記のパス1の実行により約86%(6/7)の命令が実行されると判定する。制御パスセット生成部15は、上記のパス1のみではカバレッジ基準を満たさないと判定し、以下のパス2を選択する。この際、例えば制御パスセット生成部15は、パス1に含まれない処理5を含むパスを選択する。このように、命令網羅の対象となっていない命令がより多く含まれるパス(他のパスの選択時と比べて相対的に網羅率が高くなるパス)を優先して選択する。
パス2:1(w&&x==1)23(y&&z==0)567
The control path set
Path 2: 1 (w && x == 1) 23 (y && z == 0) 567
制御パスセット生成部15は、上記のパス1及びパス2の実行により100%(7/7)の命令が実行されると判定する。制御パスセット生成部15は、パス1及びパス2の実行によりカバレッジ基準を満たすと判定し、制御パスセットを上述パス1、パス2から構成する。
The control path set
なお、制御パスセット生成部15は、最小数の制御パスからなる制御パスセットの候補を複数算出しても良い。例えば、制御パスセット生成部15は、制御パスセットを(パス1、パス2)または(パス1、パス4)のいずれかとしてもよい。
Note that the control path set
制御パスセット生成部15は、制御パスセットをテストケース作成方法指示部16に供給する。
The control path set
テストケース作成方法指示部16には、ソースコード、制御フローグラフ、真理値表、及び制御パスセットが供給される。テストケース作成方法指示部16は、ソースコード、制御フローグラフ、真理値表の少なくとも1つに対して、制御パスセットの情報を重畳した表示画面を生成する。
A source code, a control flow graph, a truth table, and a control path set are supplied to the test case creation
はじめに、制御フローグラフに対して制御パスセットの情報を重畳した表示画面について説明する。テストケース作成方法指示部16は、入力された制御パスセットの各制御パスを制御フローグラム上に重畳した表示画面を表示部等に出力する。図6は、図3に示す制御フローグラフに制御パスセット(パス1、パス2)を重畳した表示画面を示す図である。図示するように、制御フローグラフ上に各制御パスが認識できるように重畳されている。
First, a display screen in which control path set information is superimposed on a control flow graph will be described. The test case creation
続いて、真理値表に対して制御パスセットの情報を重畳した表示画面について説明する。図7は、図5に示す真理値表に対して制御パスセット(パス1、パス2)の情報を反映した表示画面を示す図である。テストケース作成方法指示部16は、入力された制御パスセットの各制御パスから、テスト時に実行されるべき判定処理を算出する。上述の例では、パス1及びパス2が実行される。パス1には、(w&&x==1)及び(y&&z==1)が含まれる。パス2には、(w&&x==1)及び(y&&z==0)が含まれる。テストケース作成方法指示部16は、この判定処理(上述の例では、(w&&x==1)、(y&&z==1)、(y&&z==0))を全て抽出する。そして、テストケース作成方法指示部16は、真理値表から、抽出した判定文に対応する項目行を識別できるように印をつける。
Next, a display screen in which control path set information is superimposed on the truth table will be described. FIG. 7 is a diagram showing a display screen in which information of control path sets (
図7では、(w&&x==1)の判定文から、テストケース作成方法指示部16は、行番号1を必ず実行されるべき判定処理とする印(○)をつける。同様に、(y&&z==1)の判定文から、テストケース作成方法指示部16は、行番号5を必ず実行されるべき判定処理とする印(○)をつける。図7では、(w&&x==0)の判定文から、テストケース作成方法指示部16は、行番号2〜4のいずれかが実行されるべき判定処理とする印(△1)をつける。
In FIG. 7, from the determination sentence (w && x == 1), the test case creation
次に、ソースコードに対して制御パスセットの情報を重畳した表示画面を説明する。テストケース作成方法指示部16は、入力された制御パスセットの各制御パスと、ソースコードと、を関連付けて重畳表示する。図8は、ソースコードに制御パス(パス1、パス2)を重畳した表示画面を示す図である。図示するように、パス1及びパス2がソースコードと関連付けられて表示される。
Next, a display screen in which control path set information is superimposed on the source code will be described. The test case creation
さらに、他のカバレッジ基準を用いて、テスト支援システム1の動作について説明する。以下では、カバレッジ基準として、「分岐の全てが実行されたこと(分岐網羅)」が与えられた場合について説明する。テスト対象となるソースコードは、図2に示すものである。また、ソースコード情報入力部11、制御フローグラフ生成部12、真理値表生成部13、及びカバレッジ基準入力部14の動作は、前述の説明のとおりである。
Furthermore, the operation of the
制御パスセット生成部15は、制御フローグラフ(図3)から全ての判定処理(w&&x及びy&&z)を抽出する。制御パスセット生成部15は、例えば、一番多くの判定処理を実行する以下のパス1を選択する。
パス1:1(w&&x==1)23(y&&z==1)467
The control path set
Path 1: 1 (w && x == 1) 23 (y && z == 1) 467
制御パスセット生成部15は、続いてパス1と判定処理の出力が異なるパス4を抽出する。
パス4:1(w&&x==0)3(y&&z==0)567
Subsequently, the control path set
Path 4: 1 (w && x == 0) 3 (y && z == 0) 567
制御パスセット生成部15は、全ての分岐処理の真偽(1、0)が実行されているか否かを判定する。そして上述の例では、制御パスセット生成部15は、パス1及びパス4の実行により「分岐の全てが実行された」と判定する。そして、制御パスセット生成部15は、制御パスセットをパス1及びパス4から構成する。このように、制御パスセット生成部15は、分岐網羅率が相対的に高くなる順序で制御パスを選択していく。
The control path set
テストケース作成方法指示部16は、ソースコード、制御フローグラフ、真理値表の少なくとも1つに対して、制御パスセット(パス1、パス4)の情報を重畳した表示画面を生成する。図9は、図3に示す制御フローグラフに制御パスセット(パス1、パス4)を重畳した表示画面を示す図である。図10は、図5に示す真理値表に対して制御パスセット(パス1、パス4)の情報を反映した表示画面を示す図である。図11は、ソースコードに制御パス(パス1、パス4)を重畳した表示画面を示す図である。
The test case creation
続いて、本実施の形態にかかるテスト支援システム1を使用したソフトウェアテスト作成業務の概要について説明する。図12は、ソフトウェアテスト作成業務の概要を示すフローチャートである。
Next, an outline of software test creation work using the
はじめに、プログラマ等がテストの実行対象となるソースコードを作成する(S11)。続いて、テスト設計者が、上述のテスト支援システム1を用いた処理を実行する(S12)。この処理の詳細を図13を参照して説明する。
First, a programmer or the like creates source code to be tested (S11). Subsequently, the test designer executes processing using the
はじめに、テスト設計者は、ソースコードをソースコード情報入力部11に対して入力する(S21)。さらに、テスト設計者は、カバレッジ基準をカバレッジ基準入力部14に対して入力する(S22)。 First, the test designer inputs a source code to the source code information input unit 11 (S21). Further, the test designer inputs a coverage standard to the coverage standard input unit 14 (S22).
制御フローグラフ生成部12は、入力されたソースコードから制御フローグラフを生成する(S23)。真理値表生成部13は、生成された制御フローグラフから真理値表を生成する(S24)。制御パスセット生成部15は、制御フローグラフ、真理値表、及びカバレッジ基準から制御パスセットを生成する(S25)。テストケース作成方法指示部16は、ソースコード、制御フローグラフ、真理値表の少なくとも1つに対して、制御パスセットの情報を重畳した表示画面を生成する(S26)。
The control flow
図12の説明に戻る。テスト設計者は、テストケース作成方法指示部16により生成された表示画面を参照することにより、ソフトウェア構造分析を満たすテストを作成するために必要な制御パスを把握することができる。テスト設計者は、ソフトウェア構造分析の要件を満たすテストを作成する(S13)。
Returning to the description of FIG. By referring to the display screen generated by the test case creation
テスト設計者は、ソフトウェア要件カバレッジ分析を行う(S14)。ソフトウェア要件カバレッジ分析の結果、テスト設計者はソフトウェア要件カバレッジの要件を満たすか否かを判定する(S15)。要件を満たさない場合(S15:No)、テスト設計者は、不足するテスト項目を追加する(S16)。要件を満たす場合(S15:Yes)、テスト設計者は、テスト項目の作成を終了する(S17)。 The test designer performs software requirement coverage analysis (S14). As a result of the software requirement coverage analysis, the test designer determines whether or not the requirements of the software requirement coverage are satisfied (S15). When the requirement is not satisfied (S15: No), the test designer adds an insufficient test item (S16). If the requirement is satisfied (S15: Yes), the test designer finishes creating the test item (S17).
続いて、本実施の形態にかかるテスト支援システムの効果について説明する。はじめに、比較対象として一般的なテスト作成手順の問題点について詳述する。 Next, effects of the test support system according to the present embodiment will be described. First, the problems of a general test creation procedure as a comparison target will be described in detail.
図15に示される一般的なテスト作成手順では、ソフトウェア構造カバレッジ分析を実行する必要があった。そのため、作成したテストセットが所定のソフトウェア構造のカバレッジ基準を満たすか否かの判定は、テストセットのテストケースを全て実行し、カバレッジ測定を実行するまで把握できなかった。また、カバレッジ測定によりソフトウェア構造カバレッジの網羅率を測定することはできたが、カバレッジ網羅率が十分ではない場合にどのようなテストを追加すればよいかを把握することができなかった。さらに、テストセットのテストケースが冗長である場合(必要以上にテストケースが含まれている場合)を検出することが困難であった。 In the general test creation procedure shown in FIG. 15, it was necessary to perform software structure coverage analysis. Therefore, the determination as to whether the created test set satisfies the coverage standard of the predetermined software structure cannot be grasped until all the test cases of the test set are executed and coverage measurement is executed. Moreover, although the coverage rate of the software structure coverage could be measured by coverage measurement, it was not possible to grasp what tests should be added when the coverage coverage rate was not sufficient. Furthermore, it is difficult to detect a case where the test case of the test set is redundant (when the test case is included more than necessary).
一方、上述のテスト支援システムは、ソフトウェア構造カバレッジに関するカバレッジ基準と、ソースコードの解析結果である制御フローグラフ等と、から制御パスセットを生成する。制御パスセットは、カバレッジ基準を満たし得るプログラムの実行経路を示す制御パス(実行パスとも記載する)の集合から構成される。そのため、テスト設計者は、制御パスセットを参照して効率的に必要最小限のテストセットを生成することができる。 On the other hand, the above-described test support system generates a control path set from a coverage standard regarding software structure coverage, a control flow graph that is an analysis result of a source code, and the like. The control path set includes a set of control paths (also referred to as execution paths) indicating program execution paths that can satisfy the coverage criteria. Therefore, the test designer can efficiently generate the minimum necessary test set by referring to the control path set.
さらに、制御パスセット生成部15は、上述のようにカバレッジ基準を満たし、かつ最小数の制御パスから制御パスセットを構成する。これにより、テスト設計者は、冗長なテストセットを作成することがなくなる。
Further, the control path set
さらに、制御パスセット生成部15は、複数の制御パスセットの候補がある場合には、複数の制御パスセットを生成してもよい。これにより、テスト設計者は、複数の制御パスセットの中から一番テスト作成に利用しやすい制御パスセットを選択してテスト作成をすることができる。
Furthermore, the control path set
テストケース作成方法指示部16は、制御パスセットの情報を制御フローグラフ等に反映した表示画面を生成する。テスト設計者は、この表示画面を参照することにより、必要となるテストケースが実行する各処理を容易に認識することが可能になる。
The test case creation
なお、本発明の本質部分を図14を参照して改めて説明する。テスト支援システム1は、解析部20と、制御パスセット生成部15と、を備える。解析部20は、制御パスセットの生成に必要となるソースコードの情報を解析する処理部であり、図1では制御フローグラフ生成部12、真理値表生成部13に対応する。制御パスセット生成部15は、カバレッジ基準と、解析部20による解析結果(例えば制御フローグラフ等)から、制御パスセットを抽出する。制御パスセットは、カバレッジ基準を満たし得るプログラムの実行経路を示す制御パスの集合から構成される。そのため、テスト設計者は、制御パスセットを参照して効率的に必要最小限のテストセットを生成することができる。
The essential part of the present invention will be described again with reference to FIG. The
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。 Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention.
上記の構成において、複数のカバレッジ基準を入力としても良い。以下、図2、図3を参照して説明する。例えば、「全命令ステップ(分岐処理を除くステップ)の100%を実行すること」、「条件分岐の100%を実行すること」という2つのカバレッジ基準を満たすことが指定されても良い。 In the above configuration, a plurality of coverage criteria may be input. Hereinafter, a description will be given with reference to FIGS. For example, it may be specified that two coverage criteria of “execute 100% of all instruction steps (steps excluding branch processing)” and “execute 100% of conditional branches” are satisfied.
制御パスセット生成部15は、「全命令ステップ(分岐処理を除くステップ)の100%を実行すること」に対応する制御パスセットとして(パス1、パス2)または(パス1、パス4)を選択する。制御パスセット生成部15は、「条件分岐の100%を実行すること」に対応する制御パスセットとして(パス1、パス4)を選択する。
The control path set
制御パスセット生成部15は、両条件を満たす制御パスセットとして(パス1、パス4)を最終的に選択する。他の処理部の処理は、上述と同様である。
The control path set
上述のソースコード情報入力部11、制御フローグラフ生成部12、真理値表生成部13、カバレッジ基準入力部14、制御パスセット生成部15、及びテストケース作成方法指示部16の各処理は、任意のコンピュータ内で動作するプログラムとして実現することが可能である。プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
Each process of the source code
上記実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。 A part or all of the above embodiment can be described as in the following supplementary notes, but is not limited thereto.
(付記1)
ソースコードから処理の流れをグラフ形式で表示した制御フローグラフを生成する制御フローグラフ生成部を具備する解析部と、
前記制御フローグラフ、及びソフトウェア構造にかかる第1カバレッジ基準に基づき、前記ソースコード内の実行パスを含む制御パスセットを生成する制御パスセット生成部と、を備え、
前記制御パスセットは、前記第1カバレッジ基準を満たす前記実行パスから構成される、テスト支援システム。
(Appendix 1)
An analysis unit including a control flow graph generation unit that generates a control flow graph displaying the flow of processing in a graph format from the source code;
A control path set generation unit that generates a control path set including an execution path in the source code based on the control flow graph and a first coverage standard according to the software structure;
The test support system, wherein the control path set includes the execution paths that satisfy the first coverage criterion.
(付記2)
前記制御パスセットは、前記第1カバレッジ基準を満たす最小数の前記実行パスから構成されることを特徴とする付記1に記載のテスト支援システム。
(Appendix 2)
The test support system according to
(付記3)
前記制御パスセット生成部は、前記制御パスセットの候補が複数ある場合に、複数の前記制御パスセットを生成することを特徴とする付記2に記載のテスト支援システム。
(Appendix 3)
The test support system according to
(付記4)
前記第1カバレッジ基準は、実行命令数を前記ソースコードに含まれる全ての命令数で除算して求める命令網羅率に関する基準であり、
前記制御パスセット生成部は、前記ソースコードに含まれる全ての前記実行パスを抽出するとともに、前記ソースコードに含まれる全ての命令数をカウントし、前記命令網羅率を満たすまでの間、前記命令網羅率が相対的に高くなる順序で前記制御パスセットに含める前記実行パスを選択することを特徴とする付記1乃至付記3のいずれかに記載のテスト支援システム。
(Appendix 4)
The first coverage standard is a standard related to an instruction coverage rate obtained by dividing the number of executed instructions by the total number of instructions included in the source code,
The control path set generation unit extracts all the execution paths included in the source code and counts all the instructions included in the source code until the instruction coverage rate is satisfied. The test support system according to any one of
(付記5)
前記第1カバレッジ基準は、実行分岐数を前記ソースコードに含まれる全ての分岐数で除算して求める分岐網羅率に関する基準であり、
前記制御パスセット生成部は、前記ソースコードに含まれる全ての前記実行パスを抽出するとともに、前記ソースコードに含まれる全ての分岐数をカウントし、前記分岐網羅率を満たすまでの間、前記分岐網羅率が相対的に高くなる順序で前記制御パスセットに含める前記実行パスを選択することを特徴とする付記1乃至付記3のいずれかに記載のテスト支援システム。
(Appendix 5)
The first coverage standard is a standard related to a branch coverage rate obtained by dividing the number of execution branches by the number of all branches included in the source code,
The control path set generation unit extracts all the execution paths included in the source code and counts all the branches included in the source code until the branch coverage rate is satisfied. The test support system according to any one of
(付記6)
前記制御パスセット生成部は、前記第1カバレッジ基準及びソフトウェア構造にかかる第2カバレッジ基準に基づき、前記制御パスセットを生成し、
前記制御パスセットは、前記第1カバレッジ基準及び前記第2カバレッジ基準の双方を満たす前記実行パスから構成されることを特徴とする付記1乃至付記5のいずれかに記載のテスト支援システム。
(Appendix 6)
The control path set generation unit generates the control path set based on the first coverage standard and the second coverage standard for the software structure,
The test support system according to any one of
(付記7)
前記解析部は、前記ソースコードに含まれる分岐処理から真理値表を生成する真理値表生成部を備え、
前記テスト支援システムは、前記制御パスセットに関する情報を前記ソースコード、前記制御フローグラフ、前記真理値表の少なくとも1つに反映した表示画面を生成するテストケース作成方法指示部、を更に備えることを特徴とする付記1乃至付記6のいずれかに記載のテスト支援システム。
(Appendix 7)
The analysis unit includes a truth table generation unit that generates a truth table from a branch process included in the source code,
The test support system further includes a test case creation method instructing unit that generates a display screen reflecting information on the control path set in at least one of the source code, the control flow graph, and the truth table. The test support system according to any one of
(付記8)
前記テストケース作成方法指示部は、前記制御フローグラフに前記制御パスセットに含まれる全ての前記実行パスを重畳的に記載して、前記表示画面を生成することを特徴とする付記7に記載のテスト支援システム。
(Appendix 8)
The test case creation method instruction unit generates the display screen by superimposing all the execution paths included in the control path set on the control flow graph. Test support system.
(付記9)
ソースコードから処理の流れをグラフ形式で表示した制御フローグラフを生成し、
前記制御フローグラフに基づき、ソフトウェア構造にかかる第1カバレッジ基準を満たす前記ソースコード内の実行パスを含む制御パスセットを生成する、テスト支援方法。
(Appendix 9)
Generate a control flow graph that displays the flow of processing in the form of a graph from the source code,
A test support method for generating a control path set including an execution path in the source code that satisfies a first coverage criterion for a software structure based on the control flow graph.
(付記10)
前記制御パスセットは、前記第1カバレッジ基準を満たす最小数の前記実行パスから構成されることを特徴とする付記9に記載のテスト支援方法。
(Appendix 10)
The test support method according to
(付記11)
前記制御パスセットの候補が複数ある場合に、複数の前記制御パスセットを生成することを特徴とする付記10に記載のテスト支援方法。
(Appendix 11)
The test support method according to appendix 10, wherein when there are a plurality of candidates for the control path set, a plurality of the control path sets are generated.
(付記12)
前記第1カバレッジ基準は、実行命令数を前記ソースコードに含まれる全ての命令数で除算して求める命令網羅率に関する基準であり、
前記ソースコードに含まれる全ての前記実行パスを抽出するとともに、前記ソースコードに含まれる全ての命令数をカウントし、前記命令網羅率を満たすまでの間、前記命令網羅率が相対的に高くなる順序で前記制御パスセットに含める前記実行パスを選択することを特徴とする付記9乃至付記11のいずれかに記載のテスト支援方法。
(Appendix 12)
The first coverage standard is a standard related to an instruction coverage rate obtained by dividing the number of executed instructions by the total number of instructions included in the source code,
While extracting all the execution paths included in the source code and counting the number of all instructions included in the source code, the instruction coverage ratio is relatively high until the instruction coverage ratio is satisfied. 12. The test support method according to any one of
(付記13)
前記第1カバレッジ基準は、実行分岐数を前記ソースコードに含まれる全ての分岐数で除算して求める分岐網羅率に関する基準であり、
前記ソースコードに含まれる全ての前記実行パスを抽出するとともに、前記ソースコードに含まれる全ての分岐数をカウントし、前記分岐網羅率を満たすまでの間、前記分岐網羅率が相対的に高くなる順序で前記制御パスセットに含める前記実行パスを選択することを特徴とする付記9乃至付記11のいずれかに記載のテスト支援方法。
(Appendix 13)
The first coverage standard is a standard related to a branch coverage rate obtained by dividing the number of execution branches by the number of all branches included in the source code,
All the execution paths included in the source code are extracted, and the number of all branches included in the source code is counted, and the branch coverage ratio becomes relatively high until the branch coverage ratio is satisfied. 12. The test support method according to any one of
(付記14)
前記第1カバレッジ基準及びソフトウェア構造にかかる第2カバレッジ基準に基づき、前記制御パスセットを生成し、
前記制御パスセットは、前記第1カバレッジ基準及び前記第2カバレッジ基準の双方を満たす前記実行パスから構成されることを特徴とする付記9乃至付記13のいずれかに記載のテスト支援方法。
(Appendix 14)
Generating the control path set based on the first coverage criterion and a second coverage criterion for the software structure;
14. The test support method according to any one of
(付記15)
前記ソースコードに含まれる分岐処理から真理値表を生成し、
前記制御パスセットに関する情報を前記ソースコード、前記制御フローグラフ、前記真理値表の少なくとも1つに反映した表示画面を生成する付記9乃至付記14のいずれかに記載のテスト支援方法。
(Appendix 15)
Generate a truth table from the branch process included in the source code,
15. The test support method according to any one of
(付記16)
コンピュータに、
ソースコードから処理の流れをグラフ形式で表示した制御フローグラフを生成する処理と、
前記制御フローグラフに基づき、ソフトウェア構造にかかる第1カバレッジ基準を満たす前記ソースコード内の実行パスを含む制御パスセットを生成する処理と、を実行させるためのプログラム。
(Appendix 16)
On the computer,
Processing to generate a control flow graph that displays the flow of processing in the form of a graph from the source code;
A program for executing, based on the control flow graph, a process for generating a control path set including an execution path in the source code that satisfies a first coverage standard for a software structure.
1 テスト支援システム
11 ソースコード情報入力部
12 制御フローグラフ生成部
13 真理値表生成部
14 カバレッジ基準入力部
15 制御パスセット生成部
16 テストケース作成方法指示部
DESCRIPTION OF
Claims (6)
前記制御フローグラフ、及びソフトウェア構造にかかる第1カバレッジ基準に基づき、前記ソースコード内の実行パスを含む制御パスセットを生成する制御パスセット生成部と、
前記制御フローグラフに前記制御パスセットに含まれる全ての前記実行パスを重畳的に記載した表示画面を生成するテストケース作成方法指示部と、を備え、
前記制御パスセットは、前記第1カバレッジ基準を満たす前記実行パスから構成される、テスト支援システム。 An analysis unit including a control flow graph generation unit that generates a control flow graph displaying the flow of processing in a graph format from the source code;
A control path set generation unit that generates a control path set including an execution path in the source code based on the control flow graph and a first coverage criterion for the software structure;
A test case creation method instruction unit that generates a display screen in which all the execution paths included in the control path set are superimposed on the control flow graph, and
The test support system, wherein the control path set includes the execution paths that satisfy the first coverage criterion.
前記制御フローグラフ、及びソフトウェア構造にかかる第1カバレッジ基準に基づき、前記ソースコード内の実行パスを含む制御パスセットを生成する制御パスセット生成部と、
前記ソースコードに前記制御パスセットに含まれる全ての前記実行パスを重畳的に記載した表示画面を生成するテストケース作成方法指示部と、を備え、
前記制御パスセットは、前記第1カバレッジ基準を満たす前記実行パスから構成される、テスト支援システム。 An analysis unit including a control flow graph generation unit that generates a control flow graph displaying the flow of processing in a graph format from the source code;
A control path set generation unit that generates a control path set including an execution path in the source code based on the control flow graph and a first coverage criterion for the software structure;
A test case creation method instruction unit that generates a display screen in which all the execution paths included in the control path set are superimposed on the source code, and
The test support system, wherein the control path set includes the execution paths that satisfy the first coverage criterion.
前記制御フローグラフに基づき、ソフトウェア構造にかかる第1カバレッジ基準を満たす前記ソースコード内の実行パスを含む制御パスセットを生成し、
前記制御フローグラフに前記制御パスセットに含まれる全ての前記実行パスを重畳的に記載した表示画面を生成する、テスト支援方法。 Generate a control flow graph that displays the flow of processing in the form of a graph from the source code,
Based on the control flow graph, generating a control path set including an execution path in the source code that satisfies a first coverage criterion for a software structure ;
A test support method for generating a display screen in which all the execution paths included in the control path set are described in a superimposed manner in the control flow graph .
前記制御フローグラフに基づき、ソフトウェア構造にかかる第1カバレッジ基準を満たす前記ソースコード内の実行パスを含む制御パスセットを生成し、
前記ソースコードに前記制御パスセットに含まれる全ての前記実行パスを重畳的に記載した表示画面を生成する、テスト支援方法。 Generate a control flow graph that displays the flow of processing in the form of a graph from the source code,
Based on the control flow graph, generating a control path set including an execution path in the source code that satisfies a first coverage criterion for a software structure ;
A test support method for generating a display screen in which all the execution paths included in the control path set are superimposed on the source code .
ソースコードから処理の流れをグラフ形式で表示した制御フローグラフを生成する処理と、
前記制御フローグラフに基づき、ソフトウェア構造にかかる第1カバレッジ基準を満たす前記ソースコード内の実行パスを含む制御パスセットを生成する処理と、
前記制御フローグラフに前記制御パスセットに含まれる全ての前記実行パスを重畳的に記載した表示画面を生成する処理と、を実行させるためのプログラム。 On the computer,
Processing to generate a control flow graph that displays the flow of processing in the form of a graph from the source code;
Generating a control path set including an execution path in the source code that satisfies a first coverage criterion for a software structure based on the control flow graph;
A program for executing a process of generating a display screen in which all the execution paths included in the control path set are described in a superimposed manner in the control flow graph .
ソースコードから処理の流れをグラフ形式で表示した制御フローグラフを生成する処理と、
前記制御フローグラフに基づき、ソフトウェア構造にかかる第1カバレッジ基準を満たす前記ソースコード内の実行パスを含む制御パスセットを生成する処理と、
前記ソースコードに前記制御パスセットに含まれる全ての前記実行パスを重畳的に記載した表示画面を生成する処理と、を実行させるためのプログラム。 On the computer,
Processing to generate a control flow graph that displays the flow of processing in the form of a graph from the source code;
Generating a control path set including an execution path in the source code that satisfies a first coverage criterion for a software structure based on the control flow graph;
A program for executing a process of generating a display screen in which all the execution paths included in the control path set are described in a superimposed manner in the source code .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011088906A JP5743663B2 (en) | 2011-04-13 | 2011-04-13 | Test support system, test support method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011088906A JP5743663B2 (en) | 2011-04-13 | 2011-04-13 | Test support system, test support method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012221394A JP2012221394A (en) | 2012-11-12 |
JP5743663B2 true JP5743663B2 (en) | 2015-07-01 |
Family
ID=47272786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011088906A Active JP5743663B2 (en) | 2011-04-13 | 2011-04-13 | Test support system, test support method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5743663B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6268029B2 (en) * | 2014-04-16 | 2018-01-24 | 株式会社日立製作所 | Test case generation apparatus and test case generation method |
JP2016071643A (en) * | 2014-09-30 | 2016-05-09 | 株式会社 日立マネジメントパートナー | Information processor, salary computation system and salary computation program |
KR101767481B1 (en) * | 2016-04-07 | 2017-08-11 | 코드마인드(주) | Method and device for analyzing program |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63305435A (en) * | 1987-06-08 | 1988-12-13 | Nippon Telegr & Teleph Corp <Ntt> | Program testing device |
JPH0210443A (en) * | 1988-06-29 | 1990-01-16 | Hitachi Ltd | Reset case selecting system |
JP2885923B2 (en) * | 1990-09-26 | 1999-04-26 | 株式会社日立製作所 | System test support method |
JPH04260941A (en) * | 1991-01-25 | 1992-09-16 | Mitsubishi Electric Corp | Automatic formation device for test data |
JPH09128266A (en) * | 1995-10-31 | 1997-05-16 | Fujitsu Ltd | Device and method for retrieving source program route |
US5933640A (en) * | 1997-02-26 | 1999-08-03 | Digital Equipment Corporation | Method for analyzing and presenting test execution flows of programs |
JP4190610B2 (en) * | 1998-02-18 | 2008-12-03 | 富士通株式会社 | Load module test route determination device |
JP4536576B2 (en) * | 2005-04-12 | 2010-09-01 | 株式会社エヌ・ティ・ティ・データ | Software coverage measuring apparatus and method |
JP2008071075A (en) * | 2006-09-13 | 2008-03-27 | Toshiba Corp | Program inspection device, program inspection method, and program inspection program |
JP5207314B2 (en) * | 2009-08-10 | 2013-06-12 | 日本電信電話株式会社 | Test pattern compression method and test pattern compression system |
-
2011
- 2011-04-13 JP JP2011088906A patent/JP5743663B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012221394A (en) | 2012-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140214396A1 (en) | Specification properties creation for a visual model of a system | |
JP6268029B2 (en) | Test case generation apparatus and test case generation method | |
US8701011B2 (en) | Computer-readable storage medium, apparatus, and method for supporting operation screen design | |
JP5743663B2 (en) | Test support system, test support method, and program | |
Bendell et al. | Software Reliability: State of the Art Report 14: 2 | |
JP4516001B2 (en) | Software test management program, software test management apparatus, and software test management method | |
US9740575B2 (en) | System design method, system design apparatus, and storage medium storing system design program, for analyzing failure restoration procedure | |
US11099978B2 (en) | Modeling system for software-implemented testing using domain specific profiles to translate tests for a subset of paths included in a UML test model | |
WO2019142266A1 (en) | Test case generation device, test case generation method, and test case generation program | |
JP5834991B2 (en) | Schematic program test coverage measuring apparatus and method, and program | |
JP2013222327A (en) | Software verification device and software verification program | |
US20070079280A1 (en) | Method and apparatus for generating pairwise combinatorial tests from a graphic representation | |
JP5811978B2 (en) | Test case generation apparatus and test case generation method for model-based control apparatus | |
JP5785474B2 (en) | Program debugging method, debugging apparatus, and debugging support GUI | |
Entin et al. | Combining model-based and capture-replay testing techniques of graphical user interfaces: An industrial approach | |
JPWO2012049816A1 (en) | Model checking apparatus, method and program | |
JP6257373B2 (en) | Fault extraction support device | |
JP2009134360A (en) | Model inspection system, model inspection method, and model inspection program | |
JP2015197868A (en) | Computer program checking apparatus | |
JP6320269B2 (en) | Software test support apparatus and software test support program | |
JP2019106136A (en) | Quality prediction program, quality prediction method, and quality prediction device | |
JP5573287B2 (en) | Automatic program generator | |
TWI283826B (en) | Program generating device using computer | |
WO2024195093A1 (en) | Process flow visualization device, process flow visualization method, and process flow visualization program | |
JP2014115960A (en) | Verification device, verification method, and verification program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140312 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141125 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150114 |
|
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: 20150407 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150428 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5743663 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |