JP2019021303A - ソフトウェアプログラムフォールト位置特定 - Google Patents
ソフトウェアプログラムフォールト位置特定 Download PDFInfo
- Publication number
- JP2019021303A JP2019021303A JP2018102368A JP2018102368A JP2019021303A JP 2019021303 A JP2019021303 A JP 2019021303A JP 2018102368 A JP2018102368 A JP 2018102368A JP 2018102368 A JP2018102368 A JP 2018102368A JP 2019021303 A JP2019021303 A JP 2019021303A
- Authority
- JP
- Japan
- Prior art keywords
- statement
- score
- statements
- test
- suspicion
- 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/362—Software debugging
- G06F11/3624—Software debugging by performing operations on the source code, e.g. via a compiler
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
-
- 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
-
- 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
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
-
- 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/362—Software debugging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
-
- 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/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- 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
Abstract
Description
ソフトウェアプログラムのテスト対象コードに対して複数のテストを実行して、複数のテスト実行を行うステップと、
前記複数のテスト実行のうちの1つ以上の合格テストを特定するステップと、
前記複数のテスト実行のうちの1つ以上の失敗テストを特定するステップと、
前記ソフトウェアプログラムの前記テスト対象コードの複数のステートメントの各ステートメントの疑いスコアを、前記合格テスト及び前記失敗テストにおける当該ステートメントの使用及び不使用に基づいて決定するステップと、
前記複数のステートメントの各ステートメントの意味類似度スコアを、当該ステートメントに含まれる1つ以上のステートメントトークンと、前記テスト対象コードについて生成されたエラーレポートに含まれる1つ以上のレポートトークンと、の間の意味類似度に基づいて決定するステップと、
前記複数のステートメントの各ステートメントの変更スコアを、当該ステートメントが変更を受けたときから経過した時間に基づいて決定するステップと、
前記複数のステートメントの各ステートメントの集約スコアを、当該ステートメントの前記疑いスコア、前記意味類似度スコア、及び前記変更スコアに基づいて決定するステップと、
前記複数のステートメントの前記集約スコアに基づいて、前記複数のステートメントのうちの特定のステートメントを、前記テスト対象コード内のフォールト位置として特定するステップと、
を含む方法。
前記複数のステートメントの各ステートメントの前記疑いスコアは、前記複数のステートメントの各ステートメントがフォールトを有する可能性があることを示す疑い閾値を満たし、
前記方法は、
前記テスト対象コードに含まれ、前記複数のステートメントには含まれない1つ以上の他のステートメントの各ステートメントの疑いスコアを決定するステップであって、前記1つ以上の他のステートメントの各ステートメントの前記疑いスコアは、前記疑い閾値を満たさない、ステップと、
前記複数のステートメントの各ステートメントの前記疑いスコアが前記疑い閾値を満たすことと、前記1つ以上の他のステートメントの各ステートメントの前記疑いスコアが前記疑い閾値を満たさないことと、に基づいて、前記1つ以上の他のステートメントではなく、前記複数のステートメントの各ステートメントの前記意味類似度スコア及び前記変更スコアを決定するステップと、
をさらに含む、付記1に記載の方法。
前記の特定されたフォールト位置に基づいて、修復動作を実行するステップをさらに含む、付記1に記載の方法。
前記複数のステートメントを、前記複数のステートメントのそれぞれの前記集約スコアに基づいてランク付けするステップと、
前記特定のステートメントを、前記特定のステートメントのランクに基づいて、前記フォールト位置として特定するステップと、
をさらに含む、付記1に記載の方法。
前記特定のステートメントを、前記複数のステートメントのうちの他のステートメントの他の前記集約スコアと比較した前記特定のステートメントの前記集約スコアに基づいて、前記フォールト位置として特定するステップをさらに含む、付記1に記載の方法。
変更が生じたときから経過した前記時間を線形的に重み付けする時間減衰モデルに基づいて、前記変更スコアを決定するステップをさらに含む、付記1に記載の方法。
変更が生じたときから経過した前記時間を非線形的に重み付けする時間減衰モデルに基づいて、前記変更スコアを決定するステップをさらに含む、付記1に記載の方法。
前記意味類似度スコアを決定することは、
前記ステートメント及び前記エラーレポートに含まれる1つ以上の連結されたトークンの各連結されたトークンを、複数の連結されていないトークンに分割することと、
前記連結されていないトークンに基づいて、前記意味類似度スコアを決定することと、
を含む、付記1に記載の方法。
前記集約スコアを決定する際に、前記疑いスコア、前記意味類似度スコア、及び前記変更スコアを、以前に決定された集約スコアに基づくフォールト位置選択の機械学習解析に基づいて重み付けするステップをさらに含む、付記1に記載の方法。
少なくとも1つの非一時的なコンピュータ読み取り可能な媒体は、1つ以上の命令を記憶するよう構成されており、前記命令は、少なくとも1つのプロセッサにより実行されたことに応じて、システムに付記1に記載の方法を実行させる、付記1に記載の方法。
ソフトウェアプログラムのテスト対象コードに対して複数のテストを実行して、複数のテスト実行を行うステップと、
前記複数のテスト実行のうちの1つ以上の合格テストを特定するステップと、
前記複数のテスト実行のうちの1つ以上の失敗テストを特定するステップと、
前記ソフトウェアプログラムの前記テスト対象コードの複数のステートメントの各ステートメントの集約スコアを、前記合格テスト及び前記失敗テストにおける当該ステートメントの使用及び不使用;当該ステートメントに含まれる1つ以上のステートメントトークンと、前記テスト対象コードについて生成されたエラーレポートに含まれる1つ以上のレポートトークンと、の間の意味類似度;及び、当該ステートメントが変更を受けたときから経過した時間;のうちの2つ以上に基づいて決定するステップと、
前記複数のステートメントの前記集約スコアに基づいて、前記複数のステートメントのうちの特定のステートメントを、前記テスト対象コード内のフォールト位置として特定するステップと、
を含む方法。
前記ソフトウェアプログラムの前記テスト対象コードの前記複数のステートメントの各ステートメントの疑いスコアを、前記合格テスト及び前記失敗テストにおける当該ステートメントの前記使用及び前記不使用に基づいて決定するステップと、
前記疑いスコアに基づいて、前記集約スコアを決定するステップと、
をさらに含む、付記11に記載の方法。
前記複数のステートメントの各ステートメントの意味類似度スコアを、当該ステートメントに含まれる前記1つ以上のステートメントトークンと、前記エラーレポートに含まれる前記1つ以上のレポートトークンと、の間の前記意味類似度に基づいて決定するステップと、
前記意味類似度スコアに基づいて、前記集約スコアを決定するステップと、
をさらに含む、付記11に記載の方法。
前記複数のステートメントの各ステートメントの変更スコアを、当該ステートメントが変更を受けたときから経過した前記時間に基づいて決定するステップと、
前記変更スコアに基づいて、前記集約スコアを決定するステップと、
をさらに含む、付記11に記載の方法。
変更が生じたときから経過した前記時間を線形的に重み付けする線形時間減衰モデル、又は、変更が生じたときから経過した前記時間を非線形的に重み付けする非線形時間減衰モデルに基づいて、前記変更スコアを決定するステップをさらに含む、付記14に記載の方法。
前記の特定されたフォールト位置に基づいて、修復動作を実行するステップをさらに含む、付記11に記載の方法。
前記特定のステートメントを、前記複数のステートメントのうちの他のステートメントの他の前記集約スコアと比較した前記特定のステートメントの前記集約スコアに基づいて、前記フォールト位置として特定するステップをさらに含む、付記11に記載の方法。
少なくとも1つの非一時的なコンピュータ読み取り可能な媒体は、1つ以上の命令を記憶するよう構成されており、前記命令は、少なくとも1つのプロセッサにより実行されたことに応じて、システムに付記11に記載の方法を実行させる、付記11に記載の方法。
システムであって、
命令を記憶している1つ以上のコンピュータ読み取り可能な記憶媒体と、
前記1つ以上のコンピュータ読み取り可能な記憶媒体に通信可能に接続され、前記命令の実行に応じて、前記システムに動作を実行させるよう構成されている1つ以上のプロセッサであって、前記動作は、
ソフトウェアプログラムのテスト対象コードに対して複数のテストを実行して、複数のテスト実行を行うことと、
前記複数のテスト実行のうちの1つ以上の合格テストを特定することと、
前記複数のテスト実行のうちの1つ以上の失敗テストを特定することと、
前記ソフトウェアプログラムの前記テスト対象コードの複数のステートメントの各ステートメントの集約スコアを、前記合格テスト及び前記失敗テストにおける当該ステートメントの使用及び不使用;当該ステートメントに含まれる1つ以上のステートメントトークンと、前記テスト対象コードについて生成されたエラーレポートに含まれる1つ以上のレポートトークンと、の間の意味類似度;及び、当該ステートメントが変更を受けたときから経過した時間;のうちの2つ以上に基づいて決定することと、
前記複数のステートメントの前記集約スコアに基づいて、前記複数のステートメントのうちの特定のステートメントを、前記テスト対象コード内のフォールト位置として特定することと、
を含む、1つ以上のプロセッサと、
を有するシステム。
前記動作は、
前記ソフトウェアプログラムの前記テスト対象コードの前記複数のステートメントの各ステートメントの疑いスコアを、前記合格テスト及び前記失敗テストにおける当該ステートメントの前記使用及び前記不使用に基づいて決定することと、
前記複数のステートメントの各ステートメントの意味類似度スコアを、当該ステートメントに含まれる前記1つ以上のステートメントトークンと、前記エラーレポートに含まれる前記1つ以上のレポートトークンと、の間の前記意味類似度に基づいて決定することと、
前記複数のステートメントの各ステートメントの変更スコアを、当該ステートメントが変更を受けたときから経過した前記時間に基づいて決定することと、
前記複数のステートメントの各ステートメントの前記集約スコアを、当該ステートメントの前記疑いスコア、前記意味類似度スコア、及び前記変更スコアに基づいて決定することと、
をさらに含む、付記19に記載のシステム。
104 テスト対象コード
106 修復モジュール
108 変更されたテスト対象コード
112 フォールト位置
202 コンピューティングシステム
250 プロセッサ
252 メモリ
254 データストレージ
Claims (20)
- ソフトウェアプログラムのテスト対象コードに対して複数のテストを実行して、複数のテスト実行を行うステップと、
前記複数のテスト実行のうちの1つ以上の合格テストを特定するステップと、
前記複数のテスト実行のうちの1つ以上の失敗テストを特定するステップと、
前記ソフトウェアプログラムの前記テスト対象コードの複数のステートメントの各ステートメントの疑いスコアを、前記合格テスト及び前記失敗テストにおける当該ステートメントの使用及び不使用に基づいて決定するステップと、
前記複数のステートメントの各ステートメントの意味類似度スコアを、当該ステートメントに含まれる1つ以上のステートメントトークンと、前記テスト対象コードについて生成されたエラーレポートに含まれる1つ以上のレポートトークンと、の間の意味類似度に基づいて決定するステップと、
前記複数のステートメントの各ステートメントの変更スコアを、当該ステートメントが変更を受けたときから経過した時間に基づいて決定するステップと、
前記複数のステートメントの各ステートメントの集約スコアを、当該ステートメントの前記疑いスコア、前記意味類似度スコア、及び前記変更スコアに基づいて決定するステップと、
前記複数のステートメントの前記集約スコアに基づいて、前記複数のステートメントのうちの特定のステートメントを、前記テスト対象コード内のフォールト位置として特定するステップと、
を含む方法。 - 前記複数のステートメントの各ステートメントの前記疑いスコアは、前記複数のステートメントの各ステートメントがフォールトを有する可能性があることを示す疑い閾値を満たし、
前記方法は、
前記テスト対象コードに含まれ、前記複数のステートメントには含まれない1つ以上の他のステートメントの各ステートメントの疑いスコアを決定するステップであって、前記1つ以上の他のステートメントの各ステートメントの前記疑いスコアは、前記疑い閾値を満たさない、ステップと、
前記複数のステートメントの各ステートメントの前記疑いスコアが前記疑い閾値を満たすことと、前記1つ以上の他のステートメントの各ステートメントの前記疑いスコアが前記疑い閾値を満たさないことと、に基づいて、前記1つ以上の他のステートメントではなく、前記複数のステートメントの各ステートメントの前記意味類似度スコア及び前記変更スコアを決定するステップと、
をさらに含む、請求項1に記載の方法。 - 前記の特定されたフォールト位置に基づいて、修復動作を実行するステップをさらに含む、請求項1に記載の方法。
- 前記複数のステートメントを、前記複数のステートメントのそれぞれの前記集約スコアに基づいてランク付けするステップと、
前記特定のステートメントを、前記特定のステートメントのランクに基づいて、前記フォールト位置として特定するステップと、
をさらに含む、請求項1に記載の方法。 - 前記特定のステートメントを、前記複数のステートメントのうちの他のステートメントの他の前記集約スコアと比較した前記特定のステートメントの前記集約スコアに基づいて、前記フォールト位置として特定するステップをさらに含む、請求項1に記載の方法。
- 変更が生じたときから経過した前記時間を線形的に重み付けする時間減衰モデルに基づいて、前記変更スコアを決定するステップをさらに含む、請求項1に記載の方法。
- 変更が生じたときから経過した前記時間を非線形的に重み付けする時間減衰モデルに基づいて、前記変更スコアを決定するステップをさらに含む、請求項1に記載の方法。
- 前記意味類似度スコアを決定することは、
前記ステートメント及び前記エラーレポートに含まれる1つ以上の連結されたトークンの各連結されたトークンを、複数の連結されていないトークンに分割することと、
前記連結されていないトークンに基づいて、前記意味類似度スコアを決定することと、
を含む、請求項1に記載の方法。 - 前記集約スコアを決定する際に、前記疑いスコア、前記意味類似度スコア、及び前記変更スコアを、以前に決定された集約スコアに基づくフォールト位置選択の機械学習解析に基づいて重み付けするステップをさらに含む、請求項1に記載の方法。
- 少なくとも1つの非一時的なコンピュータ読み取り可能な媒体は、1つ以上の命令を記憶するよう構成されており、前記命令は、少なくとも1つのプロセッサにより実行されたことに応じて、システムに請求項1に記載の方法を実行させる、請求項1に記載の方法。
- ソフトウェアプログラムのテスト対象コードに対して複数のテストを実行して、複数のテスト実行を行うステップと、
前記複数のテスト実行のうちの1つ以上の合格テストを特定するステップと、
前記複数のテスト実行のうちの1つ以上の失敗テストを特定するステップと、
前記ソフトウェアプログラムの前記テスト対象コードの複数のステートメントの各ステートメントの集約スコアを、前記合格テスト及び前記失敗テストにおける当該ステートメントの使用及び不使用;当該ステートメントに含まれる1つ以上のステートメントトークンと、前記テスト対象コードについて生成されたエラーレポートに含まれる1つ以上のレポートトークンと、の間の意味類似度;及び、当該ステートメントが変更を受けたときから経過した時間;のうちの2つ以上に基づいて決定するステップと、
前記複数のステートメントの前記集約スコアに基づいて、前記複数のステートメントのうちの特定のステートメントを、前記テスト対象コード内のフォールト位置として特定するステップと、
を含む方法。 - 前記ソフトウェアプログラムの前記テスト対象コードの前記複数のステートメントの各ステートメントの疑いスコアを、前記合格テスト及び前記失敗テストにおける当該ステートメントの前記使用及び前記不使用に基づいて決定するステップと、
前記疑いスコアに基づいて、前記集約スコアを決定するステップと、
をさらに含む、請求項11に記載の方法。 - 前記複数のステートメントの各ステートメントの意味類似度スコアを、当該ステートメントに含まれる前記1つ以上のステートメントトークンと、前記エラーレポートに含まれる前記1つ以上のレポートトークンと、の間の前記意味類似度に基づいて決定するステップと、
前記意味類似度スコアに基づいて、前記集約スコアを決定するステップと、
をさらに含む、請求項11に記載の方法。 - 前記複数のステートメントの各ステートメントの変更スコアを、当該ステートメントが変更を受けたときから経過した前記時間に基づいて決定するステップと、
前記変更スコアに基づいて、前記集約スコアを決定するステップと、
をさらに含む、請求項11に記載の方法。 - 変更が生じたときから経過した前記時間を線形的に重み付けする線形時間減衰モデル、又は、変更が生じたときから経過した前記時間を非線形的に重み付けする非線形時間減衰モデルに基づいて、前記変更スコアを決定するステップをさらに含む、請求項14に記載の方法。
- 前記の特定されたフォールト位置に基づいて、修復動作を実行するステップをさらに含む、請求項11に記載の方法。
- 前記特定のステートメントを、前記複数のステートメントのうちの他のステートメントの他の前記集約スコアと比較した前記特定のステートメントの前記集約スコアに基づいて、前記フォールト位置として特定するステップをさらに含む、請求項11に記載の方法。
- 少なくとも1つの非一時的なコンピュータ読み取り可能な媒体は、1つ以上の命令を記憶するよう構成されており、前記命令は、少なくとも1つのプロセッサにより実行されたことに応じて、システムに請求項11に記載の方法を実行させる、請求項11に記載の方法。
- システムであって、
命令を記憶している1つ以上のコンピュータ読み取り可能な記憶媒体と、
前記1つ以上のコンピュータ読み取り可能な記憶媒体に通信可能に接続され、前記命令の実行に応じて、前記システムに動作を実行させるよう構成されている1つ以上のプロセッサであって、前記動作は、
ソフトウェアプログラムのテスト対象コードに対して複数のテストを実行して、複数のテスト実行を行うことと、
前記複数のテスト実行のうちの1つ以上の合格テストを特定することと、
前記複数のテスト実行のうちの1つ以上の失敗テストを特定することと、
前記ソフトウェアプログラムの前記テスト対象コードの複数のステートメントの各ステートメントの集約スコアを、前記合格テスト及び前記失敗テストにおける当該ステートメントの使用及び不使用;当該ステートメントに含まれる1つ以上のステートメントトークンと、前記テスト対象コードについて生成されたエラーレポートに含まれる1つ以上のレポートトークンと、の間の意味類似度;及び、当該ステートメントが変更を受けたときから経過した時間;のうちの2つ以上に基づいて決定することと、
前記複数のステートメントの前記集約スコアに基づいて、前記複数のステートメントのうちの特定のステートメントを、前記テスト対象コード内のフォールト位置として特定することと、
を含む、1つ以上のプロセッサと、
を有するシステム。 - 前記動作は、
前記ソフトウェアプログラムの前記テスト対象コードの前記複数のステートメントの各ステートメントの疑いスコアを、前記合格テスト及び前記失敗テストにおける当該ステートメントの前記使用及び前記不使用に基づいて決定することと、
前記複数のステートメントの各ステートメントの意味類似度スコアを、当該ステートメントに含まれる前記1つ以上のステートメントトークンと、前記エラーレポートに含まれる前記1つ以上のレポートトークンと、の間の前記意味類似度に基づいて決定することと、
前記複数のステートメントの各ステートメントの変更スコアを、当該ステートメントが変更を受けたときから経過した前記時間に基づいて決定することと、
前記複数のステートメントの各ステートメントの前記集約スコアを、当該ステートメントの前記疑いスコア、前記意味類似度スコア、及び前記変更スコアに基づいて決定することと、
をさらに含む、請求項19に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/648,441 US10678673B2 (en) | 2017-07-12 | 2017-07-12 | Software program fault localization |
US15/648441 | 2017-07-12 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019021303A true JP2019021303A (ja) | 2019-02-07 |
JP7095408B2 JP7095408B2 (ja) | 2022-07-05 |
Family
ID=65000283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018102368A Active JP7095408B2 (ja) | 2017-07-12 | 2018-05-29 | ソフトウェアプログラムフォールト位置特定 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10678673B2 (ja) |
JP (1) | JP7095408B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022153412A1 (ja) * | 2021-01-13 | 2022-07-21 | 日本電信電話株式会社 | スコア統合装置、スコア統合方法、および、スコア統合プログラム |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10761961B2 (en) * | 2018-12-21 | 2020-09-01 | Fujitsu Limited | Identification of software program fault locations |
CN110209573B (zh) * | 2019-05-08 | 2023-06-02 | 三峡大学 | 一种增强软件故障定位效果的方法 |
CN110362484B (zh) * | 2019-07-03 | 2022-03-01 | 北京航空航天大学 | 软件多故障的定位方法、装置、电子设备以及存储介质 |
US11176026B2 (en) | 2020-02-20 | 2021-11-16 | International Business Machines Corporation | Assignment of test case priorities based on combinatorial test design model analysis |
US11086768B1 (en) * | 2020-02-20 | 2021-08-10 | International Business Machines Corporation | Identifying false positives in test case failures using combinatorics |
US11307975B2 (en) | 2020-02-20 | 2022-04-19 | International Business Machines Corporation | Machine code analysis for identifying software defects |
US11663113B2 (en) | 2020-02-20 | 2023-05-30 | International Business Machines Corporation | Real time fault localization using combinatorial test design techniques and test case priority selection |
US11163674B1 (en) * | 2020-09-28 | 2021-11-02 | Palo Alto Research Center Incorporated | System and method for identifying a faulty component in a spectrum ambiguity group |
CN112698975B (zh) * | 2020-12-14 | 2022-09-27 | 北京大学 | 一种微服务架构信息系统的故障根因定位方法及系统 |
KR102496332B1 (ko) * | 2020-12-15 | 2023-02-07 | 한국과학기술원 | 고차 돌연변이를 이용한 소프트웨어 결함 위치 추정을 위한 컴퓨터 시스템 및 그의 방법 |
US11520689B2 (en) * | 2020-12-28 | 2022-12-06 | Palo Alto Research Center Incorporated | System and method for automatic program repair using fast-result test cases |
CN112711537B (zh) * | 2020-12-31 | 2022-08-12 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 软件缺陷定位方法及装置、电子设备及存储介质 |
CN113688061A (zh) * | 2021-10-27 | 2021-11-23 | 南开大学 | 一种基于特征选择的程序缺陷定位方法 |
CN115185814A (zh) * | 2022-06-13 | 2022-10-14 | 中南大学 | 一种基于二维程序频谱的多缺陷定位方法、系统及设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017045446A (ja) * | 2015-08-25 | 2017-03-02 | 富士通株式会社 | ソフトウェアプログラムを修復する方法、記憶媒体及びシステム |
Family Cites Families (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5604895A (en) * | 1994-02-22 | 1997-02-18 | Motorola Inc. | Method and apparatus for inserting computer code into a high level language (HLL) software model of an electrical circuit to monitor test coverage of the software model when exposed to test inputs |
US7013457B2 (en) * | 2001-07-26 | 2006-03-14 | Springsoft, Inc. | Prioritized debugging of an error space in program code |
US20050028146A1 (en) * | 2003-08-01 | 2005-02-03 | Quick Shawn G. | Systems and methods for software and firmware testing using checkpoint signatures |
US20070016894A1 (en) * | 2005-07-15 | 2007-01-18 | Sreedhar Vugranam C | System and method for static analysis using fault paths |
US20080196012A1 (en) * | 2007-02-12 | 2008-08-14 | Panaya Ltd. | System and methods for static analysis of large computer programs and for presenting the results of the analysis to a user of a computer program |
US8181163B2 (en) * | 2007-05-07 | 2012-05-15 | Microsoft Corporation | Program synthesis and debugging using machine learning techniques |
US7882495B2 (en) * | 2007-06-14 | 2011-02-01 | Microsoft Corporation | Bounded program failure analysis and correction |
US8117598B2 (en) * | 2007-09-27 | 2012-02-14 | Oracle America, Inc. | Method and apparatus to automatically identify specific code changes to probabilistically exclude from regression |
US8468497B2 (en) * | 2007-11-27 | 2013-06-18 | International Business Machines Corporation | Automated defect classification |
WO2009089294A2 (en) * | 2008-01-08 | 2009-07-16 | Teamstudio, Inc. | Methods and systems for generating software quality index |
US8098585B2 (en) * | 2008-05-21 | 2012-01-17 | Nec Laboratories America, Inc. | Ranking the importance of alerts for problem determination in large systems |
US20090292941A1 (en) * | 2008-05-22 | 2009-11-26 | Nec Laboratories America, Inc. | Proof-guided error diagnosis (ped) by triangulation of program error causes |
US20100299654A1 (en) * | 2009-05-21 | 2010-11-25 | Microsoft Corporation | Approach for root causing regression bugs |
US8943478B2 (en) * | 2009-07-14 | 2015-01-27 | International Business Machines Corporation | Fault detection and localization in dynamic software applications |
US8516449B2 (en) * | 2009-07-14 | 2013-08-20 | International Business Machines Corporation | Detecting and localizing security vulnerabilities in client-server application |
US8392440B1 (en) * | 2009-08-15 | 2013-03-05 | Google Inc. | Online de-compounding of query terms |
US8910120B2 (en) * | 2010-03-05 | 2014-12-09 | Microsoft Corporation | Software debugging recommendations |
US9043761B2 (en) * | 2010-09-01 | 2015-05-26 | International Business Machines Corporation | Fault localization using condition modeling and return value modeling |
EP2641179B1 (en) * | 2010-11-21 | 2019-01-02 | Verifyter AB | Method and apparatus for automatic diagnosis of software failures |
US8621441B2 (en) * | 2010-12-27 | 2013-12-31 | Avaya Inc. | System and method for software immunization based on static and dynamic analysis |
US8645761B2 (en) * | 2011-01-13 | 2014-02-04 | International Business Machines Corporation | Precise fault localization |
US9280442B1 (en) * | 2011-01-27 | 2016-03-08 | Trimble Navigation Limited | System and method for generating coverage reports for software unit tests |
US9400778B2 (en) * | 2011-02-01 | 2016-07-26 | Accenture Global Services Limited | System for identifying textual relationships |
US9396094B2 (en) * | 2011-07-21 | 2016-07-19 | International Business Machines Corporation | Software test automation systems and methods |
US9117025B2 (en) * | 2011-08-16 | 2015-08-25 | International Business Machines Corporation | Tracking of code base and defect diagnostic coupling with automated triage |
US20130179863A1 (en) * | 2012-01-11 | 2013-07-11 | Microsoft Corporation | Bug variant detection using program analysis and pattern identification |
US10108526B2 (en) * | 2012-11-27 | 2018-10-23 | Purdue Research Foundation | Bug localization using version history |
US9690645B2 (en) * | 2012-12-04 | 2017-06-27 | Hewlett Packard Enterprise Development Lp | Determining suspected root causes of anomalous network behavior |
CN104239158A (zh) * | 2013-06-07 | 2014-12-24 | Sap欧洲公司 | 用于自动分析和链接错误日志的分析引擎 |
JP6217212B2 (ja) * | 2013-07-25 | 2017-10-25 | 富士通株式会社 | テストプログラム、テスト方法及びテスト装置 |
US9405662B2 (en) * | 2013-12-18 | 2016-08-02 | Google Inc. | Process for displaying test coverage data during code reviews |
CN104881355A (zh) * | 2014-02-27 | 2015-09-02 | 国际商业机器公司 | 一种用于检测测试覆盖的方法和系统 |
US9298584B2 (en) * | 2014-03-12 | 2016-03-29 | International Business Machines Corporation | Artifact selection using textual reports |
US9262157B2 (en) * | 2014-04-24 | 2016-02-16 | Semmle Limited | Source code violation matching and attribution |
US20160004627A1 (en) * | 2014-07-06 | 2016-01-07 | International Business Machines Corporation | Utilizing semantic clusters to Predict Software defects |
US20160019133A1 (en) * | 2014-07-15 | 2016-01-21 | 4D Soft Kft. | Method for tracing a computer software |
US10303539B2 (en) * | 2015-02-23 | 2019-05-28 | International Business Machines Corporation | Automatic troubleshooting from computer system monitoring data based on analyzing sequences of changes |
WO2016167760A1 (en) * | 2015-04-15 | 2016-10-20 | Hewlett Packard Enterprise Development Lp | Code coverage information |
US9665467B2 (en) * | 2015-06-30 | 2017-05-30 | International Business Machines Corporation | Error and solution tracking in a software development environment |
US9703658B2 (en) * | 2015-08-21 | 2017-07-11 | Synopsys, Inc. | Identifying failure mechanisms based on a population of scan diagnostic reports |
US9934132B2 (en) * | 2015-08-31 | 2018-04-03 | International Business Machines Corporation | Determining code coverage of an application by test(S) |
US9710371B2 (en) * | 2015-10-27 | 2017-07-18 | Microsoft Technology Licensing, Llc | Test failure bucketing |
US9846637B2 (en) * | 2015-12-02 | 2017-12-19 | Fujitsu Limited | Machine learning based software program repair |
US9811439B1 (en) * | 2016-04-18 | 2017-11-07 | Color Genomics, Inc. | Functional testing of code modifications for read processing systems |
US20170212829A1 (en) * | 2016-01-21 | 2017-07-27 | American Software Safety Reliability Company | Deep Learning Source Code Analyzer and Repairer |
US10133657B2 (en) * | 2016-02-23 | 2018-11-20 | Fujitsu Limited | Textual similarity based software program repair |
US10585780B2 (en) * | 2017-03-24 | 2020-03-10 | Microsoft Technology Licensing, Llc | Enhancing software development using bug data |
-
2017
- 2017-07-12 US US15/648,441 patent/US10678673B2/en active Active
-
2018
- 2018-05-29 JP JP2018102368A patent/JP7095408B2/ja active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017045446A (ja) * | 2015-08-25 | 2017-03-02 | 富士通株式会社 | ソフトウェアプログラムを修復する方法、記憶媒体及びシステム |
Non-Patent Citations (2)
Title |
---|
下條 清史: "複数言語対応かつ算出式変更可能なバグローカリゼーションフレームワークの提案", 電子情報通信学会技術研究報告 VOL.112 NO.458, vol. 第112巻, JPN6022001186, 27 February 2013 (2013-02-27), JP, pages 45 - 50, ISSN: 0004684017 * |
采野 友紀也: "Word2Vecを用いたバグ報告からの不具合ファイル特定", 電子情報通信学会技術研究報告 VOL.115 NO.508, vol. 第115巻, JPN6022001185, 3 March 2016 (2016-03-03), JP, pages 55 - 60, ISSN: 0004684018 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022153412A1 (ja) * | 2021-01-13 | 2022-07-21 | 日本電信電話株式会社 | スコア統合装置、スコア統合方法、および、スコア統合プログラム |
Also Published As
Publication number | Publication date |
---|---|
US10678673B2 (en) | 2020-06-09 |
US20190018753A1 (en) | 2019-01-17 |
JP7095408B2 (ja) | 2022-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7095408B2 (ja) | ソフトウェアプログラムフォールト位置特定 | |
US20220327220A1 (en) | Open source vulnerability prediction with machine learning ensemble | |
Muske et al. | Survey of approaches for handling static analysis alarms | |
JP6878933B2 (ja) | ソフトウエアプログラムの修復のための方法及びプログラム | |
US10437702B2 (en) | Data-augmented software diagnosis method and a diagnoser therefor | |
US10296447B2 (en) | Automated software program repair | |
US8719789B2 (en) | Measuring coupling between coverage tasks and use thereof | |
US20150370685A1 (en) | Defect localization in software integration tests | |
US20090249298A1 (en) | Evaluation of Software based on Change History | |
JP2019204482A (ja) | 並行脆弱性検出 | |
US10902130B2 (en) | Guiding automated testing of binary programs | |
JP7404839B2 (ja) | ソフトウェアプログラム不良位置の識別 | |
JP2019114158A (ja) | カバレッジテスト支援装置およびカバレッジテスト支援方法 | |
Jiang et al. | On the integration of test adequacy, test case prioritization, and statistical fault localization | |
JP2019096292A (ja) | 自動化されたソフトウェアプログラム修復候補の選択 | |
Mahdieh et al. | Test case prioritization using test case diversification and fault-proneness estimations | |
JP2018060525A (ja) | イベント駆動型ソフトウェアテストシーケンス決定 | |
JP2018055676A (ja) | 自動ソフトウェアプログラム修復 | |
JP7056139B2 (ja) | ソフトウェアプログラム修復のためのメソッド呼び出し合成 | |
Chakraborty et al. | Entropy guided spectrum based bug localization using statistical language model | |
US10324829B2 (en) | Application testing | |
Duque-Torres et al. | Using source code metrics for predicting metamorphic relations at method level | |
US10984159B1 (en) | Hardware verification based on relations between coverage events | |
US10330728B2 (en) | Method and apparatus for obtaining a maximally compressed verification test set | |
Eder et al. | Selecting manual regression test cases automatically using trace link recovery and change coverage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210210 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220316 |
|
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: 20220524 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220606 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7095408 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |