JP2014186727A - ソフトウェア検証方法及びプロセッサ - Google Patents
ソフトウェア検証方法及びプロセッサ Download PDFInfo
- Publication number
- JP2014186727A JP2014186727A JP2014050446A JP2014050446A JP2014186727A JP 2014186727 A JP2014186727 A JP 2014186727A JP 2014050446 A JP2014050446 A JP 2014050446A JP 2014050446 A JP2014050446 A JP 2014050446A JP 2014186727 A JP2014186727 A JP 2014186727A
- Authority
- JP
- Japan
- Prior art keywords
- proxy
- function
- software
- analysis
- source code
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3676—Test management for coverage analysis
Abstract
【解決手段】ソフトウェア検証方法は、ソフトウェアの少なくとも一部分を受け取る動作を含む。ソフトウェアプログラムの一部分はクラス内のソフトウェア関数を含んでよい。方法は、そのクラスに基づきソフトウェア関数への呼び出しを含むプロキシ関数を含むプロキシクラスを生成する動作と、プロキシ関数を解析する動作とを更に含んでよい。プロキシ関数の解析は、プロキシ関数によって使用されるプロキシ条件に基づきソフトウェア関数を解析する動作を含んでよく、プロキシ条件はソフトウェアプログラムに基づき、ソフトウェア関数におけるパラメータ及び/又は変数へ条件を適用するよう構成される。
【選択図】図2
Description
Void create_request_message(Message&p0){
obj_->create_request_message(p0);
}
上記の擬似コードは、プロキシ関数を表してよい。
Void create_request_message(EthernetMessage*p0){
Message msg(sizeof(EthernetMessage),p0);
obj_->create_request_message(msg);
}
上記の擬似コードは、律則された後のプロキシテスト関数を表してよい。
Void create_request_message(){
EthernetMessage*payload=new EthernetMessage;
Message msg(sizeof(EthernetMessage),payload);
obj_->create_request_message(msg);
}
上記の擬似コードは、律則された後のプロキシテスト関数を表してよい。
Void create_request_message(unsigned int mask){
EthernetMessage*payload=new EthernetMessage;
payload->mask=mask;
Message msg(sizeof(EthernetMessage),payload);
obj_->create_request_message(msg);
}
上記の擬似コードは、一般化後のプロキシテスト関数を表してよい。
(付記1)
クラス内のソフトウェア関数を含むソフトウェアプログラムの少なくとも一部分を受け取り、
前記ソフトウェア関数への呼び出しを含むプロキシ関数を含むプロキシクラスを前記クラスに基づき生成し、
前記プロキシ関数によって使用されるプロキシ条件に基づき前記ソフトウェア関数を解析することを含め、前記プロキシ関数を解析し、
前記プロキシ条件は、前記ソフトウェアプログラムに基づき、前記ソフトウェア関数におけるパラメータ及び/又は変数に条件を適用する構成される、
ソフトウェア検証方法。
(付記2)
前記プロキシ条件は、前記プロキシ関数のプロキシパラメータとして、又は前記プロキシ関数内で定義される変数として、前記プロキシ関数によって使用される、
付記1に記載のソフトウェア検証方法。
(付記3)
前記プロキシ関数は、静的ソフトウェア解析、動的ソフトウェア解析、又は記号解析を用いて解析される、
付記1に記載のソフトウェア検証方法。
(付記4)
前記プロキシ条件は生成されるか、又はユーザから受け取られる、
付記1に記載のソフトウェア検証方法。
(付記5)
前記プロキシ関数の解析は、前記ソフトウェア関数の選択された挙動の解析をもたらし、
解析のために選択される前記ソフトウェア関数の挙動は、前記ソフトウェア関数の潜在的な実行パスを制限する前記プロキシ条件に基づく、
付記1に記載のソフトウェア検証方法。
(付記6)
更に、前記選択された挙動の解析に基づき、前記ソフトウェア関数の前記選択された挙動を検証するためのテストケースを決定する、
付記5に記載のソフトウェア検証方法。
(付記7)
前記プロキシ条件は、前記ソフトウェア関数からの変数に基づく前記プロキシ関数におけるパラメータとして使用され、前記変数は、前記ソフトウェア関数の制御フローを決定する、
付記5に記載のソフトウェア検証方法。
(付記8)
更に、前記ソフトウェア関数の前記選択された挙動のカバレッジを決定し、前記ソフトウェア関数の前記選択された挙動の前記カバレッジは、解析された前記ソフトウェア関数の複数のライン又はブランチに基づき、
前記ソフトウェア関数の前記選択された挙動の前記カバレッジが閾値に満たない場合に、前記プロキシ関数を再解析し、該プロキシ関数の再解析は、前記ソフトウェア関数の選択された第2の挙動の解析をもたらし、
解析のために選択される前記ソフトウェア関数の前記第2の挙動は、前記ソフトウェア関数からの変数の値を拘束する第2のプロキシ条件に基づく、
付記7に記載のソフトウェア検証方法。
(付記9)
前記プロキシ条件は、前記プロキシ関数における変数として使用され、前記ソフトウェア関数の以前の実行と関連付けられた値を割り当てられる、
付記5に記載のソフトウェア検証方法。
(付記10)
更に、前記ソフトウェア関数の前記選択された挙動のカバレッジを決定し、前記ソフトウェア関数の前記選択された挙動の前記カバレッジは、解析された前記ソフトウェア関数の複数のライン又はブランチに基づき、
前記ソフトウェア関数の前記選択された挙動の前記カバレッジが閾値に満たない場合に、前記プロキシ関数を再解析し、該プロキシ関数の再解析は、前記ソフトウェア関数の選択された第2の挙動の解析をもたらし、
解析のために選択される前記ソフトウェア関数の前記第2の挙動は、前記変数に基づく前記プロキシ関数におけるパラメータを含む第2のプロキシ条件に基づく、
付記9に記載のソフトウェア検証方法。
(付記11)
前記プロキシ条件は、前記ソフトウェア関数の解析に基づき前記ソフトウェア関数において決定されるエラーの決定に作用する前記ソフトウェアプログラムからの条件を含むよう構成される、
付記1に記載のソフトウェア検証方法。
(付記12)
既知のエラーが決定されない場合に、更に前記プロキシ関数を再解析し、該プロキシ関数の再解析は第2のプロキシ条件に基づく、
付記11に記載のソフトウェア検証方法。
(付記13)
システムにソフトウェア検証動作を実行させるためにコンピュータ可読媒体からのコンピュータ命令を実行するよう構成されるプロセッサであって、
前記ソフトウェア検証動作は、
クラス内のソフトウェア関数を含むソフトウェアプログラムの少なくとも一部分を受け取る動作と、
前記ソフトウェア関数への呼び出しを含むプロキシ関数を含むプロキシクラスを前記クラスに基づき生成する動作と、
前記プロキシ関数によって使用されるプロキシ条件に基づき前記ソフトウェア関数を解析することを含め、前記プロキシ関数を解析する動作と
を含み、
前記プロキシ条件は、前記ソフトウェアプログラムに基づき、前記ソフトウェア関数におけるパラメータ及び/又は変数に条件を適用する構成される、
プロセッサ。
(付記14)
前記プロキシ条件は、前記プロキシ関数のプロキシパラメータとして、又は前記プロキシ関数内で定義される変数として、前記プロキシ関数によって使用される、
付記13に記載のプロセッサ。
(付記15)
前記プロキシ関数は、静的ソフトウェア解析、動的ソフトウェア解析、又は記号解析を用いて解析される、
付記13に記載のプロセッサ。
(付記16)
前記プロキシ関数の解析は、前記ソフトウェア関数の選択された挙動の解析をもたらし、
解析のために選択される前記ソフトウェア関数の挙動は、前記ソフトウェア関数の潜在的な実行パスを制限する前記プロキシ条件に基づく、
付記13に記載のプロセッサ。
(付記17)
前記ソフトウェア検証動作は、前記選択された挙動の解析に基づき、前記ソフトウェア関数の前記選択された挙動を検証するためのテストケースを決定する動作を更に含む、
付記16に記載のプロセッサ。
(付記18)
前記プロキシ条件は、前記ソフトウェア関数の解析に基づき前記ソフトウェア関数において決定されるエラーの決定に作用する前記ソフトウェアプログラムからの条件を含むよう構成される、
付記13に記載のプロセッサ。
(付記19)
クラス内のソフトウェア関数を含むソフトウェアプログラムの少なくとも一部分を受け取り、
前記ソフトウェア関数への呼び出しを含むプロキシ関数を含むプロキシクラスを前記クラスに基づき生成し、
前記プロキシ関数を解析し、該プロキシ関数の解析は、前記ソフトウェア関数の選択された挙動の解析をもたらし、解析のために選択される前記ソフトウェア関数の前記挙動は、前記ソフトウェア関数の実行パスを制限する前記プロキシ関数に関連付けられた第1のプロキシ条件に基づき、
解析される前記ソフトウェア関数の複数のライン又はブランチに基づく、前記ソフトウェア関数の前記選択された挙動のカバレッジを決定し、
前記ソフトウェア関数の前記選択された挙動の前記カバレッジが閾値に満たない場合に、前記プロキシ関数を再解析し、該プロキシ関数の再解析は、前記ソフトウェア関数の選択された第2の挙動の解析をもたらし、解析のために選択される前記ソフトウェア関数の前記第2の挙動は、前記ソフトウェア関数の実行パスを制限する前記プロキシ関数に関連付けられた第2のプロキシ条件に基づき、
前記ソフトウェア関数の前記選択された挙動の前記カバレッジが前記閾値より大きい場合に、前記選択された挙動の解析に基づき前記ソフトウェア関数の前記選択された挙動を検証するためのテストケースを決定する、
ソフトウェア検証方法。
(付記20)
前記第1のプロキシ条件は、前記プロキシ関数のプロキシパラメータに基づき、前記第2のプロキシ条件は、前記プロキシパラメータに関連付けられた前記プロキシ関数内で定義されるプロキシ変数に基づく、
付記19に記載のソフトウェア検証方法。
(付記21)
前記第1のプロキシ条件は、前記プロキシ関数内で定義されるプロキシ変数に基づき、前記第2のプロキシ変数は、前記プロキシ変数に関連付けられた前記プロキシ関数のプロキシパラメータに基づく、
付記19に記載のソフトウェア検証方法。
112,122 パラメータ
120 プロキシ関数
200 ソフトウェア検証システム
202 ソースコード
204 ユーザ入力
206 ソースコード情報
210 プロキシ生成部
212 プロキシクラス生成部
214 プロキシ関数生成部
220 プロキシソースコード
230 プロキシ解析部
232 カバレッジチェッカー
234 偽陽性エラーチェッカー
240 テストケース
250 レポート
300 クラス
320 プロキシクラス
400,500,600,700 ソフトウェア検証方法
Claims (21)
- クラス内のソフトウェア関数を含むソフトウェアプログラムの少なくとも一部分を受け取り、
前記ソフトウェア関数への呼び出しを含むプロキシ関数を含むプロキシクラスを前記クラスに基づき生成し、
前記プロキシ関数によって使用されるプロキシ条件に基づき前記ソフトウェア関数を解析することを含め、前記プロキシ関数を解析し、
前記プロキシ条件は、前記ソフトウェアプログラムに基づき、前記ソフトウェア関数におけるパラメータ及び/又は変数に条件を適用する構成される、
ソフトウェア検証方法。 - 前記プロキシ条件は、前記プロキシ関数のプロキシパラメータとして、又は前記プロキシ関数内で定義される変数として、前記プロキシ関数によって使用される、
請求項1に記載のソフトウェア検証方法。 - 前記プロキシ関数は、静的ソフトウェア解析、動的ソフトウェア解析、又は記号解析を用いて解析される、
請求項1に記載のソフトウェア検証方法。 - 前記プロキシ条件は生成されるか、又はユーザから受け取られる、
請求項1に記載のソフトウェア検証方法。 - 前記プロキシ関数の解析は、前記ソフトウェア関数の選択された挙動の解析をもたらし、
解析のために選択される前記ソフトウェア関数の挙動は、前記ソフトウェア関数の潜在的な実行パスを制限する前記プロキシ条件に基づく、
請求項1に記載のソフトウェア検証方法。 - 更に、前記選択された挙動の解析に基づき、前記ソフトウェア関数の前記選択された挙動を検証するためのテストケースを決定する、
請求項5に記載のソフトウェア検証方法。 - 前記プロキシ条件は、前記ソフトウェア関数からの変数に基づく前記プロキシ関数におけるパラメータとして使用され、前記変数は、前記ソフトウェア関数の制御フローを決定する、
請求項5に記載のソフトウェア検証方法。 - 更に、前記ソフトウェア関数の前記選択された挙動のカバレッジを決定し、前記ソフトウェア関数の前記選択された挙動の前記カバレッジは、解析された前記ソフトウェア関数の複数のライン又はブランチに基づき、
前記ソフトウェア関数の前記選択された挙動の前記カバレッジが閾値に満たない場合に、前記プロキシ関数を再解析し、該プロキシ関数の再解析は、前記ソフトウェア関数の選択された第2の挙動の解析をもたらし、
解析のために選択される前記ソフトウェア関数の前記第2の挙動は、前記ソフトウェア関数からの変数の値を拘束する第2のプロキシ条件に基づく、
請求項7に記載のソフトウェア検証方法。 - 前記プロキシ条件は、前記プロキシ関数における変数として使用され、前記ソフトウェア関数の以前の実行と関連付けられた値を割り当てられる、
請求項5に記載のソフトウェア検証方法。 - 更に、前記ソフトウェア関数の前記選択された挙動のカバレッジを決定し、前記ソフトウェア関数の前記選択された挙動の前記カバレッジは、解析された前記ソフトウェア関数の複数のライン又はブランチに基づき、
前記ソフトウェア関数の前記選択された挙動の前記カバレッジが閾値に満たない場合に、前記プロキシ関数を再解析し、該プロキシ関数の再解析は、前記ソフトウェア関数の選択された第2の挙動の解析をもたらし、
解析のために選択される前記ソフトウェア関数の前記第2の挙動は、前記変数に基づく前記プロキシ関数におけるパラメータを含む第2のプロキシ条件に基づく、
請求項9に記載のソフトウェア検証方法。 - 前記プロキシ条件は、前記ソフトウェア関数の解析に基づき前記ソフトウェア関数において決定されるエラーの決定に作用する前記ソフトウェアプログラムからの条件を含むよう構成される、
請求項1に記載のソフトウェア検証方法。 - 既知のエラーが決定されない場合に、更に前記プロキシ関数を再解析し、該プロキシ関数の再解析は第2のプロキシ条件に基づく、
請求項11に記載のソフトウェア検証方法。 - システムにソフトウェア検証動作を実行させるためにコンピュータ可読媒体からのコンピュータ命令を実行するよう構成されるプロセッサであって、
前記ソフトウェア検証動作は、
クラス内のソフトウェア関数を含むソフトウェアプログラムの少なくとも一部分を受け取る動作と、
前記ソフトウェア関数への呼び出しを含むプロキシ関数を含むプロキシクラスを前記クラスに基づき生成する動作と、
前記プロキシ関数によって使用されるプロキシ条件に基づき前記ソフトウェア関数を解析することを含め、前記プロキシ関数を解析する動作と
を含み、
前記プロキシ条件は、前記ソフトウェアプログラムに基づき、前記ソフトウェア関数におけるパラメータ及び/又は変数に条件を適用する構成される、
プロセッサ。 - 前記プロキシ条件は、前記プロキシ関数のプロキシパラメータとして、又は前記プロキシ関数内で定義される変数として、前記プロキシ関数によって使用される、
請求項13に記載のプロセッサ。 - 前記プロキシ関数は、静的ソフトウェア解析、動的ソフトウェア解析、又は記号解析を用いて解析される、
請求項13に記載のプロセッサ。 - 前記プロキシ関数の解析は、前記ソフトウェア関数の選択された挙動の解析をもたらし、
解析のために選択される前記ソフトウェア関数の挙動は、前記ソフトウェア関数の潜在的な実行パスを制限する前記プロキシ条件に基づく、
請求項13に記載のプロセッサ。 - 前記ソフトウェア検証動作は、前記選択された挙動の解析に基づき、前記ソフトウェア関数の前記選択された挙動を検証するためのテストケースを決定する動作を更に含む、
請求項16に記載のプロセッサ。 - 前記プロキシ条件は、前記ソフトウェア関数の解析に基づき前記ソフトウェア関数において決定されるエラーの決定に作用する前記ソフトウェアプログラムからの条件を含むよう構成される、
請求項13に記載のプロセッサ。 - クラス内のソフトウェア関数を含むソフトウェアプログラムの少なくとも一部分を受け取り、
前記ソフトウェア関数への呼び出しを含むプロキシ関数を含むプロキシクラスを前記クラスに基づき生成し、
前記プロキシ関数を解析し、該プロキシ関数の解析は、前記ソフトウェア関数の選択された挙動の解析をもたらし、解析のために選択される前記ソフトウェア関数の前記挙動は、前記ソフトウェア関数の実行パスを制限する前記プロキシ関数に関連付けられた第1のプロキシ条件に基づき、
解析される前記ソフトウェア関数の複数のライン又はブランチに基づく、前記ソフトウェア関数の前記選択された挙動のカバレッジを決定し、
前記ソフトウェア関数の前記選択された挙動の前記カバレッジが閾値に満たない場合に、前記プロキシ関数を再解析し、該プロキシ関数の再解析は、前記ソフトウェア関数の選択された第2の挙動の解析をもたらし、解析のために選択される前記ソフトウェア関数の前記第2の挙動は、前記ソフトウェア関数の実行パスを制限する前記プロキシ関数に関連付けられた第2のプロキシ条件に基づき、
前記ソフトウェア関数の前記選択された挙動の前記カバレッジが前記閾値より大きい場合に、前記選択された挙動の解析に基づき前記ソフトウェア関数の前記選択された挙動を検証するためのテストケースを決定する、
ソフトウェア検証方法。 - 前記第1のプロキシ条件は、前記プロキシ関数のプロキシパラメータに基づき、前記第2のプロキシ条件は、前記プロキシパラメータに関連付けられた前記プロキシ関数内で定義されるプロキシ変数に基づく、
請求項19に記載のソフトウェア検証方法。 - 前記第1のプロキシ条件は、前記プロキシ関数内で定義されるプロキシ変数に基づき、前記第2のプロキシ変数は、前記プロキシ変数に関連付けられた前記プロキシ関数のプロキシパラメータに基づく、
請求項19に記載のソフトウェア検証方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/828,886 | 2013-03-14 | ||
US13/828,886 US9081892B2 (en) | 2013-03-14 | 2013-03-14 | Software verification |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014186727A true JP2014186727A (ja) | 2014-10-02 |
JP6264964B2 JP6264964B2 (ja) | 2018-01-24 |
Family
ID=51534661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014050446A Active JP6264964B2 (ja) | 2013-03-14 | 2014-03-13 | ソフトウェア検証方法及びプロセッサ |
Country Status (2)
Country | Link |
---|---|
US (1) | US9081892B2 (ja) |
JP (1) | JP6264964B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016115124A (ja) * | 2014-12-15 | 2016-06-23 | 富士通株式会社 | スタブ化方法、プログラム及び装置 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9069892B2 (en) | 2013-05-10 | 2015-06-30 | International Business Machines Corporation | Reducing false-positive errors in a software change-impact analysis |
US9336128B2 (en) * | 2014-03-21 | 2016-05-10 | Oracle International Corporation | Method and system for code analysis using symbolic types |
US9658938B2 (en) | 2015-03-30 | 2017-05-23 | Fujtsu Limited | Iterative test generation based on data source analysis |
US10353762B2 (en) * | 2015-06-11 | 2019-07-16 | Instana, Inc. | Hierarchical fault determination in an application performance management system |
US9619363B1 (en) * | 2015-09-25 | 2017-04-11 | International Business Machines Corporation | Predicting software product quality |
US9588873B1 (en) * | 2015-09-28 | 2017-03-07 | International Business Machines Corporation | Using core files to develop diagnostic programs |
US10241892B2 (en) * | 2016-12-02 | 2019-03-26 | International Business Machines Corporation | Issuance of static analysis complaints |
US20180217921A1 (en) * | 2017-02-02 | 2018-08-02 | Cognizant Technology Solutions India Pvt. Ltd. | System and method for generating and executing automated test cases |
US11288153B2 (en) | 2020-06-18 | 2022-03-29 | Bank Of America Corporation | Self-healing computing device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020133807A1 (en) * | 2000-11-10 | 2002-09-19 | International Business Machines Corporation | Automation and isolation of software component testing |
US20110167404A1 (en) * | 2010-01-06 | 2011-07-07 | Microsoft Corporation | Creating inferred symbols from code usage |
JP2012141741A (ja) * | 2010-12-28 | 2012-07-26 | Fujitsu Ltd | 解析支援プログラム,解析支援装置および解析支援方法 |
JP2012181666A (ja) * | 2011-03-01 | 2012-09-20 | Nec Corp | 情報処理装置、情報処理方法及び情報処理プログラム |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5390325A (en) * | 1992-12-23 | 1995-02-14 | Taligent, Inc. | Automated testing system |
US7797687B2 (en) | 2005-08-04 | 2010-09-14 | Microsoft Corporation | Parameterized unit tests with behavioral purity axioms |
US7587636B2 (en) | 2005-08-04 | 2009-09-08 | Microsoft Corporation | Unit test generalization |
US20070169015A1 (en) * | 2005-12-07 | 2007-07-19 | Sbc Knowledge Ventures, L.P. | Web services development automation toolkit with test case driver and customized configuration file |
US7681180B2 (en) | 2007-06-06 | 2010-03-16 | Microsoft Corporation | Parameterized test driven development |
US20090089759A1 (en) | 2007-10-02 | 2009-04-02 | Fujitsu Limited | System and Method for Providing Symbolic Execution Engine for Validating Web Applications |
US8359576B2 (en) | 2008-11-14 | 2013-01-22 | Fujitsu Limited | Using symbolic execution to check global temporal requirements in an application |
US20100223599A1 (en) | 2009-02-27 | 2010-09-02 | Fujitsu Limited | Efficient symbolic execution of software using static analysis |
US8504997B2 (en) | 2009-03-19 | 2013-08-06 | Fujitsu Limited | Environment data refinement based on static analysis and symbolic execution |
US8276021B2 (en) * | 2009-12-18 | 2012-09-25 | Microsoft Corporation | Concurrency test effectiveness via mutation testing and dynamic lock elision |
US8869113B2 (en) | 2011-01-20 | 2014-10-21 | Fujitsu Limited | Software architecture for validating C++ programs using symbolic execution |
US20120192162A1 (en) | 2011-01-20 | 2012-07-26 | Fujitsu Limited | Optimizing Handlers for Application-Specific Operations for Validating C++ Programs Using Symbolic Execution |
US8943487B2 (en) | 2011-01-20 | 2015-01-27 | Fujitsu Limited | Optimizing libraries for validating C++ programs using symbolic execution |
US8595701B2 (en) | 2011-02-04 | 2013-11-26 | Fujitsu Limited | Symbolic execution and test generation for GPU programs |
US20120284701A1 (en) * | 2011-05-06 | 2012-11-08 | Qualcomm Incorporated | Efficient conditional flow control compilation |
US8645924B2 (en) | 2011-06-06 | 2014-02-04 | Fujitsu Limited | Lossless path reduction for efficient symbolic execution and automatic test generation |
US9141354B2 (en) * | 2012-04-23 | 2015-09-22 | Ecole polytechnique fédérale de Lausanne (EPFL) | Advantageous state merging during symbolic analysis |
US9058427B2 (en) * | 2012-07-16 | 2015-06-16 | Fujitsu Limited | Iterative generation of symbolic test drivers for object-oriented languages |
-
2013
- 2013-03-14 US US13/828,886 patent/US9081892B2/en active Active
-
2014
- 2014-03-13 JP JP2014050446A patent/JP6264964B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020133807A1 (en) * | 2000-11-10 | 2002-09-19 | International Business Machines Corporation | Automation and isolation of software component testing |
US20110167404A1 (en) * | 2010-01-06 | 2011-07-07 | Microsoft Corporation | Creating inferred symbols from code usage |
JP2012141741A (ja) * | 2010-12-28 | 2012-07-26 | Fujitsu Ltd | 解析支援プログラム,解析支援装置および解析支援方法 |
JP2012181666A (ja) * | 2011-03-01 | 2012-09-20 | Nec Corp | 情報処理装置、情報処理方法及び情報処理プログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016115124A (ja) * | 2014-12-15 | 2016-06-23 | 富士通株式会社 | スタブ化方法、プログラム及び装置 |
Also Published As
Publication number | Publication date |
---|---|
US9081892B2 (en) | 2015-07-14 |
JP6264964B2 (ja) | 2018-01-24 |
US20140282419A1 (en) | 2014-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6264964B2 (ja) | ソフトウェア検証方法及びプロセッサ | |
US10296447B2 (en) | Automated software program repair | |
Costa et al. | What's wrong with my benchmark results? Studying bad practices in JMH benchmarks | |
US10152406B2 (en) | Software program repair | |
US20120110551A1 (en) | Simulating black box test results using information from white box testing | |
US20140053134A1 (en) | Software regression testing using symbolic execution | |
US9317405B2 (en) | Test double generation | |
JP6976064B2 (ja) | モデルチェックのためのデータ構造抽象化 | |
CN112905447B (zh) | 一种区块链虚拟机的测试方法和系统 | |
Chalupa et al. | Evaluation of program slicing in software verification | |
Kobayashi et al. | Model-checking higher-order programs with recursive types | |
US9396095B2 (en) | Software verification | |
Maida et al. | Foundational response-time analysis as explainable evidence of timeliness | |
US11561888B2 (en) | Initialization sequences for automatic software test generation | |
JP2014211864A (ja) | 未完成ソフトウェアの分析 | |
Xu et al. | Semantic characterization of MapReduce workloads | |
Ghosh et al. | A systematic review on program debugging techniques | |
JP6476777B2 (ja) | テストコンテキストの生成 | |
US11442845B2 (en) | Systems and methods for automatic test generation | |
KR20120072133A (ko) | 소프트웨어 정적 테스팅 장치 및 방법 | |
Saadatmand et al. | Testing of timing properties in real-time systems: Verifying clock constraints | |
García-Ferreira et al. | Static analysis: a brief survey | |
Alonso et al. | Handling non-linear operations in the value analysis of COSTA | |
Mangels et al. | Ctgen-a unit test generator for c | |
Fink et al. | Configurable benchmarks for C model checkers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171004 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171010 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171115 |
|
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: 20171128 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171211 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6264964 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |