CN115185814B - Multi-defect positioning method, system and equipment based on two-dimensional program frequency spectrum - Google Patents

Multi-defect positioning method, system and equipment based on two-dimensional program frequency spectrum Download PDF

Info

Publication number
CN115185814B
CN115185814B CN202210659903.5A CN202210659903A CN115185814B CN 115185814 B CN115185814 B CN 115185814B CN 202210659903 A CN202210659903 A CN 202210659903A CN 115185814 B CN115185814 B CN 115185814B
Authority
CN
China
Prior art keywords
statement
suspicion
defect
test case
sus
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
Application number
CN202210659903.5A
Other languages
Chinese (zh)
Other versions
CN115185814A (en
Inventor
任胜兵
陈旭洋
彭泽文
左兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Central South University
Original Assignee
Central South University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Central South University filed Critical Central South University
Priority to CN202210659903.5A priority Critical patent/CN115185814B/en
Publication of CN115185814A publication Critical patent/CN115185814A/en
Application granted granted Critical
Publication of CN115185814B publication Critical patent/CN115185814B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

The invention discloses a multi-defect positioning method, a system and equipment based on a two-dimensional program frequency spectrum, wherein the method is used for extracting data from a source program according to a test case set to obtain data extraction information; dividing a failure test case set and a success test case set according to the data extraction information, and carrying out cluster analysis on each failure test case in the failure test case set; combining the failure test case subsets of each defect with the success test case sets respectively to obtain test case subsets of each defect; performing feature conversion on the test case subsets of each defect to obtain two-dimensional program frequency spectrums of the test case subsets of each defect; constructing a defect positioning model, and acquiring a statement suspicion list of a test case subset of each defect based on the defect positioning model and a two-dimensional program frequency spectrum; fusing all statement suspicion lists to obtain a multi-defect positioning report; positioning a plurality of defects by a multi-defect positioning report. The invention can improve the accuracy and efficiency of multi-defect positioning.

Description

Multi-defect positioning method, system and equipment based on two-dimensional program frequency spectrum
Technical Field
The invention relates to the technical field of software testing, in particular to a multi-defect positioning method, system and equipment based on a two-dimensional program frequency spectrum.
Background
Multiple faults are typically involved in a program. As the number of faults increases, the failure test cases are scattered, so that statement suspicion values of fault statements are reduced, and the positioning effect can be disturbed. When two sentence defects occur simultaneously in a program, the first defect is ranked first in a sentence suspicion list obtained by a single defect positioning method, but the second defect may not be ranked second, so that the positioning effectiveness of the technology is not high. This is because the correct statement can be covered by multiple failed test cases caused by different defect statements, resulting in the correct statement being covered by more failed test cases than other defective statements. In this case, the correct statement has a higher suspicion than the defective statement, resulting in a problem of poor defect localization efficiency using a single defect localization technique on a multi-defect failure procedure.
Therefore, the prior art can show good effect in single defect positioning, but suspicion values of defect sentences can be mutually influenced under a multi-defect scene, and the single defect positioning method is used for positioning the multi-defects, so that the multi-defect positioning is not strong in effectiveness and not high in precision.
Disclosure of Invention
The present invention aims to solve at least one of the technical problems existing in the prior art. Therefore, the invention provides a multi-defect positioning method, a system and equipment based on a two-dimensional program frequency spectrum, which can improve the accuracy of multi-defect positioning.
In a first aspect, an embodiment of the present invention provides a multi-defect positioning method based on a two-dimensional program spectrum, where the method includes:
carrying out data extraction on the source program according to the test case set to obtain data extraction information;
Dividing a failure test case set and a success test case set according to the data extraction information, and carrying out cluster analysis on each failure test case in the failure test case set to obtain a plurality of failure test case subsets aiming at different defects of the same source program;
Combining the failure test case subsets of each defect with the success test case sets respectively to obtain test case subsets of each defect;
performing feature conversion on the test case subsets of each defect to obtain two-dimensional program frequency spectrums of the test case subsets of each defect;
constructing a defect positioning model, and acquiring a statement suspicion list of the test case subset of each defect based on the defect positioning model and the two-dimensional program frequency spectrum;
Fusing all statement suspicion lists to obtain a multi-defect positioning report;
and positioning a plurality of defects through the multi-defect positioning report.
Compared with the prior art, the first aspect of the invention has the following beneficial effects:
The method comprises the steps of carrying out cluster analysis on each failure test case in a failure test case set to obtain a plurality of failure test case subsets aiming at different defects of the same source program; the whole method converts the multi-defect failure test case set into a plurality of single-defect failure test case subsets, and solves the problem of mutual influence among defects. The method comprises the steps of constructing a defect positioning model, and acquiring a statement suspicion list of a test case subset of each defect based on the defect positioning model and a two-dimensional program frequency spectrum; fusing all statement suspicion lists to obtain a multi-defect positioning report; positioning a plurality of defects by a multi-defect positioning report. Therefore, the method can integrate a plurality of single-defect statement suspicion lists into one multi-defect statement suspicion list, a developer does not need to debug in parallel, labor and time cost are saved, and accuracy and efficiency of multi-defect positioning are improved.
According to some embodiments of the present invention, the performing cluster analysis on each failure test case in the failure test case set to obtain a plurality of failure test case subsets for different defects of the same source program includes:
Acquiring coverage information of each failure test case, and acquiring a coverage vector based on the coverage information;
And judging the similarity between the coverage vectors of every two failure test cases according to the following three conditions by taking the minimum distance measurement as a similarity coefficient, wherein when the three conditions are met between the coverage vectors of the two failure test cases, the similarity is provided between the two failure test cases:
The first condition includes:
The second condition includes:
the third condition includes:
where x i,xj∈D,rij represents the similarity coefficient between the overlay vector x i and the overlay vector x j;
a threshold is preset, and a Jaccard matching coefficient is adopted to measure the similarity between two coverage vectors with similarity, wherein the Jaccard matching coefficient has a calculation formula as follows:
And if the similarity is greater than or equal to the threshold value, grouping two failure test cases corresponding to the two coverage vectors into one type.
According to some embodiments of the invention, the performing feature transformation on the subset of test cases of each defect to obtain a two-dimensional program spectrum of the subset of test cases of each defect includes:
Adopting static characteristics and dynamic characteristics of a program to construct a data stream spectrum with data dependency characteristics and a statement spectrum with statement execution states;
performing Z-Score characterization processing on the data stream spectrum to obtain a processed data stream spectrum;
And fusing the processed data stream spectrum with the statement execution state of the statement spectrum to obtain a two-dimensional program spectrum of the test case subset of each defect.
According to some embodiments of the invention, the defect localization model comprises a three-layer neural network, the first layer neural network comprising a plurality of input neurons; the second layer neural network comprises neurons with a plurality of radial basis functions as activation functions; the third layer of neural network comprises an execution result of each test case as a neuron.
According to some embodiments of the invention, a ridge regression is provided between the second layer neural network and the third layer neural network of the defect localization model; fitting the two-dimensional program frequency spectrum and the execution result of each test case through the ridge regression, and obtaining the fitting result of each test case.
According to some embodiments of the invention, the obtaining a statement suspicion list of the subset of test cases for each of the defects based on the defect localization model and the two-dimensional program spectrum includes:
The defect positioning model is trained by the two-dimensional program frequency spectrum and the execution result of each test case to obtain a statement suspicious degree predictor;
Inputting a two-dimensional virtual frequency spectrum to the statement suspicion predictor, and generating statement suspicion values of the statements corresponding to each fitting result through the statement suspicion predictor;
And according to the statement suspicion values corresponding to the test case subsets of each defect, sorting the statement suspicion values from large to small to generate a statement suspicion list of the test case subsets of each defect.
According to some embodiments of the invention, the fusing all statement suspicion lists to obtain a multi-defect localization report includes:
Normalizing the statement suspicion value of each statement in the statement suspicion list based on the statement suspicion list of the test case subset of each defect to obtain a normalized statement suspicion list, wherein the normalized formula comprises:
Wherein x * represents the statement suspicion value after normalization processing, x represents the original statement suspicion value, min represents the statement suspicion minimum value, and max represents the statement suspicion maximum value;
The normalized statement suspicion list is:
listi=[st1,st2,...,stn;susi1,susi2,...,susin]
Wherein list i represents an i-th single-defect statement suspicion list, st 1,st2,...,stn represents n statements in each statement suspicion list, and sus i1,susi2,...,susin represents statement suspicion values respectively corresponding to the n statements in the i-th suspicion list;
Weighting the statement suspicion value of each statement in each normalized statement suspicion list to obtain a weighted statement suspicion list, wherein the weighting formula comprises:
listwi=[st1,st2,...,stn;susi1wi,susi2wi,...,susinwi]
Wherein, W i represents the weight of the ith single defect sentence suspicion list, w i∈[0,1],si represents a Jaccard matching coefficient corresponding to the weight of the ith single defect sentence suspicion list, listw i represents the weighted ith single defect sentence suspicion list, and sus i1wi,susi2wi,...,susinwi represents weighted sentence suspicion values corresponding to n sentences in the ith suspicion list;
fusing each weighted statement suspicion list and adding the v-th statement suspicion value by the formula:
SUSv=sus1vw1+sus2vw2+...+susivwi v=1,...,n
LIST=[st1,st2,...,stn;SUS1,SUS2,...,SUSn]
Wherein SUS 1vw1+sus2vw2+...+susivwi represents that the statement suspicion value of the v-th statement in each weighted statement suspicion list is added with the statement suspicion value of the corresponding v-th statement in other statement suspicion lists, and SUS v represents the final statement suspicion value of the v-th statement; LIST represents a comprehensive multi-defect statement suspicion LIST, SUS 1,SUS2,...,SUSn represents the final statement suspicion value after fusion corresponding to the n statements respectively;
And sequencing the final statement suspicion value of each statement in the comprehensive multi-defect statement suspicion list from large to small to obtain a multi-defect positioning report.
In a second aspect, an embodiment of the present invention further provides a multi-defect positioning system based on a two-dimensional program spectrum, where the system includes:
the data extraction unit is used for carrying out data extraction on the source program according to the test case set to obtain data extraction information;
The failure test case subset acquisition unit is used for dividing a failure test case set and a success test case set according to the data extraction information, and carrying out cluster analysis on each failure test case in the failure test case set to obtain a plurality of failure test case subsets aiming at different defects of the same source program;
The test case subset obtaining unit is used for respectively combining the failure test case subset of each defect with the successful test case set to obtain the test case subset of each defect;
the two-dimensional program spectrum acquisition unit is used for carrying out feature conversion on the test case subsets of each defect to obtain two-dimensional program spectrums of the test case subsets of each defect;
The statement suspicion list acquisition unit is used for constructing a defect positioning model and acquiring a statement suspicion list of the test case subset of each defect based on the defect positioning model and the two-dimensional program frequency spectrum;
The multi-defect positioning report acquisition unit is used for fusing all statement suspicion lists to acquire a multi-defect positioning report;
and the multi-defect positioning unit is used for positioning a plurality of defects through the multi-defect positioning report.
In a third aspect, embodiments of the present invention further provide a multi-defect localization apparatus based on a two-dimensional program spectrum, including at least one control processor and a memory communicatively coupled to the at least one control processor; the memory stores instructions executable by the at least one control processor to enable the at least one control processor to perform a multi-defect localization method based on a two-dimensional program spectrum as described above.
In a fourth aspect, embodiments of the present invention also provide a computer-readable storage medium storing computer-executable instructions for causing a computer to perform a multi-defect localization method based on a two-dimensional program spectrum as described above.
It is to be understood that the advantages of the second to fourth aspects compared with the related art are the same as those of the first aspect compared with the related art, and reference may be made to the related description in the first aspect, which is not repeated herein.
Drawings
The foregoing and/or additional aspects and advantages of the invention will become apparent and may be better understood from the following description of embodiments taken in conjunction with the accompanying drawings in which:
FIG. 1 is a flow chart of a multi-defect localization method based on a two-dimensional program spectrum according to an embodiment of the present invention;
FIG. 2 is a block diagram of a multi-defect localization method based on a two-dimensional program spectrum according to another embodiment of the present invention;
FIG. 3 is a schematic diagram of a second layer neural network output matrix of a defect localization model according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a comprehensive multi-defect statement suspicion list fusion process according to an embodiment of the invention;
FIG. 5 is a schematic diagram illustrating a process for forming a plurality of failure test case subsets for different defects of a same source program according to an embodiment of the present invention;
FIG. 6 is a block diagram of a multi-defect localization system based on a two-dimensional program spectrum according to an embodiment of the present invention.
Detailed Description
Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to like or similar elements or elements having like or similar functions throughout. The embodiments described below by referring to the drawings are illustrative only and are not to be construed as limiting the invention.
In the description of the present invention, the description of first, second, etc. is for the purpose of distinguishing between technical features only and should not be construed as indicating or implying a relative importance or implicitly indicating the number of technical features indicated or implicitly indicating the precedence of the technical features indicated.
In the description of the present invention, it should be understood that the direction or positional relationship indicated with respect to the description of the orientation, such as up, down, etc., is based on the direction or positional relationship shown in the drawings, is merely for convenience of describing the present invention and simplifying the description, and does not indicate or imply that the apparatus or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and thus should not be construed as limiting the present invention.
In the description of the present invention, unless explicitly defined otherwise, terms such as arrangement, installation, connection, etc. should be construed broadly and the specific meaning of the terms in the present invention can be determined reasonably by a person skilled in the art in combination with the specific content of the technical solution.
Multiple faults are typically involved in a program. As the number of faults increases, the failure test cases are scattered, so that statement suspicion values of fault statements are reduced, and the positioning effect can be disturbed. When two sentence defects occur simultaneously in a program, the first defect is ranked first in a sentence suspicion list obtained by a single defect positioning method, but the second defect may not be ranked second, so that the positioning effectiveness of the technology is not high. This is because the correct statement can be covered by multiple failed test cases caused by different defect statements, resulting in the correct statement being covered by more failed test cases than other defective statements. In this case, the correct statement has a higher suspicion than the defective statement, resulting in a problem of poor defect localization efficiency using a single defect localization technique on a multi-defect failure procedure.
Therefore, the prior art can show good effect in single defect positioning, but suspicion values of defect sentences can be mutually influenced under a multi-defect scene, and the single defect positioning method is used for positioning the multi-defects, so that the multi-defect positioning is not strong in effectiveness and not high in precision.
In order to solve the problems, the invention obtains a plurality of failure test case subsets aiming at different defects of the same source program by carrying out cluster analysis on each failure test case in the failure test case set; the whole method converts the multi-defect failure test case set into a plurality of single-defect failure test case subsets, and solves the problem of mutual influence among defects. The method comprises the steps of constructing a defect positioning model, and acquiring a statement suspicion list of a test case subset of each defect based on the defect positioning model; fusing all statement suspicion lists to obtain a multi-defect positioning report; positioning a plurality of defects by a multi-defect positioning report. Therefore, the invention can integrate a plurality of single-defect statement suspicion lists into one multi-defect statement suspicion list, so that a developer does not need to debug in parallel, labor and time cost are saved, and accuracy and efficiency of multi-defect positioning are improved.
For the convenience of understanding by those skilled in the art, the terms in this embodiment are explained:
Cluster analysis is a method for exploring relationships among things, and the things are divided into different clusters, also called clusters, through cluster analysis, so that things in the clusters have high similarity, and different clusters show larger dissimilarity.
Referring to fig. 1 to 2, an embodiment of the present invention provides a multi-defect positioning method based on a two-dimensional program spectrum, the method including:
And step S100, carrying out data extraction on the source program according to the test case set to obtain data extraction information.
Specifically, after a series of processing such as instrumentation is performed on the source program, the source program in this embodiment runs on the source program through test case sets, and data extraction information such as static statement dependency relationships of source program statements, similar test case sets, test case execution results, and dynamic test case coverage information is extracted by using ANTLR and GCC.
Step 200, dividing a failure test case set and a success test case set according to the data extraction information, and performing cluster analysis on each failure test case in the failure test case set to obtain a plurality of failure test case subsets aiming at different defects of the same source program.
And step S300, combining the failure test case subsets of each defect with the successful test case sets respectively to obtain the test case subsets of each defect.
Specifically, the specific process of implementing steps S200 to S300 is as follows:
Dividing a failure test case set and a success test case set according to the test case coverage information and the test case execution result, and carrying out cluster analysis on each failure test case in the failure test case set, wherein the cluster analysis specifically comprises the following steps:
the coverage information of each failure test case is obtained, and a coverage vector is obtained based on the coverage information, specifically:
Clustering the failure test cases by using the coverage vector by utilizing the similarity of the failure test cases on the execution path, constructing failure test case subsets aiming at different defects of the same source program by using the similarity of the coverage vector, and then respectively combining the failure test case subsets of each defect with the successful test case sets to obtain the test case subsets of each defect. In addition, aiming at the situation that the subset of the test cases comprises more than one defect, the solution is that the found faults are corrected, and then the software defect finding is continuously iterated on the source program until the defects of the software are detected and the normal operation is carried out. For convenience, CVTC (Coverage Vector Test case Constructor) is used in this embodiment to refer to a test case subset construction method based on an overlay vector.
Definition 1 an overlay vector (overlay vector) represents a vector path i=(b1,b2,...,bn of an overlay information of a statement in a program in test case execution, wherein the program is composed of n executable statements. Path i represents the overlay vector of the T i th failed test case, b i represents the ith statement in the source program, b i =0 represents that the statement is not overlaid by a test case, and b i =1 represents that the statement is overlaid by a test case.
Definition 2 an overlay vector matrix (Coverage vector Matrix) is defined, n represents the number of program entities contained in the source program to be tested, m represents the number of test cases of the source program, and a (n+1) x m-order matrix O (n+1)×m represents statement overlay vector information of the source program to be tested. The matrix O ij (1.ltoreq.i.ltoreq.n, 1.ltoreq.j.ltoreq.m) shown below represents the overlay information of the ith statement of the program to be tested in the jth test case, wherein 1 represents overlay, 0 represents non-overlay, the element of the n+1th row represents the execution result of each test case, 1 represents successful execution, 0 represents failed execution,
The similarity coefficient reflects the similarity degree between the coverage vectors of the two failure test cases, and the greater the similarity coefficient is, the greater the similarity between the coverage vectors of the two failure test cases is, and the selection of the similarity coefficient is specifically as follows:
and judging the similarity between the coverage vectors of every two failure test cases according to the following three conditions by taking the minimum distance measurement as a similarity coefficient, wherein when the three conditions are met between the coverage vectors of the two failure test cases, the similarity is provided between the two failure test cases:
The first condition includes:
The second condition includes:
the third condition includes:
Where x i,xj∈D,rij represents the similarity coefficient between the overlay vector x i and the overlay vector x j.
In this embodiment, the coverage vector represents the coverage information of the test case, the attribute of the coverage vector is binary, the similarity of the coverage information is properly measured by using the matching coefficient in the similarity coefficient, and the matching coefficient between binary objects is divided into a plurality of matching coefficients according to the weight bias, and in this embodiment, the Jaccard matching coefficient is selected.
The method comprises the steps of presetting a threshold, measuring the similarity between two coverage vectors with similarity by using Jaccard matching coefficients, wherein a calculation formula of Jacc ard matching coefficients is as follows:
If the similarity is greater than or equal to the threshold value, the two failure test cases corresponding to the two coverage vectors are gathered into one type; if the similarity is smaller than the threshold, the two failure test cases corresponding to the two coverage vectors are not of the same type.
Referring to the pseudo code of the clustering algorithm in table 1, a plurality of failure test case subsets aiming at different defects of the same source program are obtained through the clustering algorithm, specifically:
After data extraction, obtaining coverage vector information of each failure test case execution through the test case coverage information and the test case execution result, calculating similarity to any two coverage vectors in the failure test case set by using Jaccard matching coefficients, marking the coverage vectors larger than a preset threshold value as the same class, and finally, traversing all the coverage vectors marked as the same cluster to find out a plurality of failure test case subsets aiming at different defects of the same source program.
A set of matrices containing all the failed test case coverage vectors is defined as PATH, while one identity lable is defined and assigned as i for each PATH i in PATH, and a structure T i{pathi, lable is defined for each failed test case.
TABLE 1
Step 1 to step 2, the coverage vector of the failed test case is circularly traversed; step 3 and step 4 calculate the similarity to any two coverage vectors in the failure test case set through Jaccard matching coefficients, and mark the coverage vectors larger than a preset threshold value as the same class; step 8, traversing all coverage vectors marked as the same class; step 9 finds a plurality of failure test case subsets for different defects of the same source program.
The algorithm marks the overlay variables belonging to the same class as the same lable, classify (lable) indicates that lable identical overlay variables are the failure test case subsets for the same defect after clustering, and thus a plurality of failure test case subsets for different defects of the same source program are constructed. The clustering algorithm realizes the clustering of the failure test cases, a plurality of failure test case subsets aiming at different defects of the same source program are obtained through the clustering, the failure test case subsets of each defect are respectively combined with the success test case sets, and the test case subsets of each defect are obtained.
In this embodiment, the Jaccard matching coefficient is adopted to cluster each failure test case, and the higher the Jaccard matching coefficient between the failure test cases, the better the clustering effect of the failure test case set is indicated, so the preset threshold is set to be 0.9, and it is to be noted that the preset threshold can be changed according to the experiment requirement, and the embodiment is not limited.
And step 400, performing feature conversion on the test case subsets of each defect to obtain two-dimensional program frequency spectrums of the test case subsets of each defect.
Specifically, static features and dynamic features of a program are adopted to construct a data stream spectrum with data dependency features and a sentence spectrum with sentence execution states;
Performing Z-Score characterization processing on the data stream spectrum to obtain a processed data stream spectrum, wherein the expression of the Z-Score characterization processing is as follows:
Wherein n represents the number of times a statement is covered by a test case, μ represents the average of the statement covered by the test case, σ represents the variance of the statement covered by the test case;
and fusing the processed data stream spectrum with the statement execution state of the statement spectrum to obtain the two-dimensional program spectrum of the test case subset of each defect.
And S500, constructing a defect positioning model, and acquiring a statement suspicion list of the test case subset of each defect based on the defect positioning model and the two-dimensional program frequency spectrum.
Specifically, referring to fig. 2, the defect localization model includes a three-layer neural network, where the first-layer neural network includes a plurality of input neurons corresponding to each program entity in the two-dimensional program spectrum, that is, executable statements, and since each program entity in the two-dimensional program spectrum has a two-dimensional eigenvalue, the number of the input neurons of the first layer is twice the number of the program entities in the two-dimensional program spectrum. For example, neurons x 2i-1 and x 2i correspond to eigenvalues D 1 and D 2, respectively, of the ith program entity of the two-dimensional program spectrum.
The second layer neural network includes neurons that are activated by a plurality of radial basis functions, the neurons of the layer summarize the input data of the previous layer, map the input data to a new dimensional space using the radial basis functions, and then output the processed data to the next layer. The radial basis function is defined by the following formula:
Wherein X i represents the i-th test case coverage information of the two-dimensional program spectrum, U j represents the j-th test case coverage information of the two-dimensional program spectrum, U j also represents the kernel vector of the j-th neuron kernel function of the layer, σ o=max(||Xi-Uj||2),1≤i,j≤n,||Xi-Uj || represents the euclidean distance between X i and U j, and the number n of neurons of the layer and the number of different test cases in the two-dimensional program spectrum are the same. The second layer neural network ultimately converts the output X of the first layer neural network into a matrix R (X) as in fig. 3, where R m and T n in fig. 3 represent the mth neuron of the layer and the nth test case of the two-dimensional program spectrum, respectively, and R mn represents the mapped value of vector T n by neuron R m.
The third layer of neural network comprises taking the execution result of each test case as a neuron, and the whole neural network model training process is to fit the relation between the two-dimensional program frequency spectrum X and the execution result Y of each test case so as to obtain the fitting result of each test case. Whereas the ridge regression between the second layer neural network and the third layer neural network is used to fit the relationship between R (X) and Y, the mapping weight W between the second layer neural network and the third layer neural network can be obtained by the following formula:
W=(R(X)I(t)R(X)T+λE)-1R(X)TI(t)Y
Wherein lambda represents a penalty factor, E represents an identity matrix, I (t) represents the information content of a similar test case, T represents a test case, p (t) represents a probability of occurrence of the test case, λ is set to-0.3 in this embodiment, and it should be noted that λ can be changed according to the experiment requirement, and this embodiment is not limited.
The defect positioning model is trained by a two-dimensional program frequency spectrum and an execution result of each test case, and then a statement suspicious degree predictor can be obtained;
Inputting a two-dimensional virtual frequency spectrum to a statement suspicion predictor, and generating statement suspicion values of the statements corresponding to each fitting result through the statement suspicion predictor;
And sorting according to statement suspicion values corresponding to the test case subsets of each defect from large to small to generate a statement suspicion list of the test case subsets of each defect.
And S600, fusing all statement suspicion lists to obtain a multi-defect positioning report.
Specifically, referring to fig. 4, since the suspicion values of the statement suspicion list have a negative and positive score, the suspicion values are normalized on the premise that the suspicion values are fused by fusing a plurality of single defect statement suspicion lists, i.e., all suspicion values are converted into values between 0 and 1. In this embodiment, based on the statement suspicion list of the test case subset of each defect, the statement suspicion value of each statement in the statement suspicion list is normalized, and a normalized statement suspicion list is obtained, where the normalized formula includes:
Wherein x * represents the statement suspicion value after normalization processing, x represents the original statement suspicion value, min represents the statement suspicion minimum value, and max represents the statement suspicion maximum value;
for each statement suspicion list, a normalized statement suspicion list is obtained by the following formula:
listi=[st1,st2,...,stn;susi1,susi2,...,susin]
Wherein list i represents an i-th single-defect statement suspicion list, st 1,st2,...,stn represents n statements in each statement suspicion list, and sus i1,susi2,...,susin represents statement suspicion values respectively corresponding to the n statements in the i-th suspicion list;
weighting the statement suspicion value of each statement in each normalized statement suspicion list to obtain a weighted statement suspicion list, wherein the weighting formula comprises:
listwi=[st1,st2,...,stn;susi1wi,susi2wi,...,susinwi]
Wherein, W i represents the weight of the i-th single defect sentence suspicion list, w i∈[0,1],si represents the Jaccard matching coefficient corresponding to the weight of the i-th single defect sentence suspicion list, listw i represents the i-th single defect sentence suspicion list after weighting, and sus i1wi,susi2wi,...,susinwi represents the weighted sentence suspicion values corresponding to n sentences in the i-th suspicion list respectively;
Through the above two steps of processing, the present embodiment obtains i single-defect statement suspicion lists including normalized and weighted processing, where each list includes the same source program statement as the other lists, but has different statement suspicion values. In this embodiment, a plurality of single-defect statement suspicion lists are fused, suspicion values of each statement in the single-defect statement suspicion list are added with suspicion values of statements corresponding to other lists, so that a final suspicion value of each statement and a comprehensive multi-defect statement suspicion list can be obtained, the suspicion values of each weighted statement are fused and the suspicion values of the v-th statement are added by the following formula:
SUSv=sus1vw1+sus2vw2+...+susivwi v=1,...,n
LIST=[st1,st2,...,stn;SUS1,SUS2,...,SUSn]
Wherein SUS 1vw1+sus2vw2+...+susivwi represents the statement suspicion value of the v-th statement in each weighted statement suspicion list and the statement suspicion value of the corresponding v-th statement in other statement suspicion list are added, and SUS v represents the final statement suspicion value of the v-th statement; LIST represents a comprehensive multi-defect statement suspicion LIST, SUS 1,SUS2,...,SUSn represents the final statement suspicion value after fusion corresponding to each of n statements;
and sequencing the final statement suspicion value of each statement in the comprehensive multi-defect statement suspicion list from large to small to obtain a multi-defect positioning report.
In this embodiment, the multi-defect failure test case set is converted into a plurality of single-defect failure test case subsets, so that the problem of mutual influence among defects is solved, and a plurality of single-defect statement suspicion lists are fused into a multi-defect statement suspicion list, so that accuracy and efficiency of multi-defect positioning are improved.
Step S700, positioning a plurality of defects through a multi-defect positioning report.
Specifically, the embodiment locates a plurality of defects through the multi-defect locating report obtained by the steps, so that a developer does not need to debug in parallel, the labor and time cost are saved, and the accuracy and efficiency of multi-defect locating are improved.
For better illustration, the present example performs the following experimental analysis:
The coverage information of each test case is constructed by using a certain program to obtain a coverage vector information table of a source program statement, as shown in table 2, the Similarity of test cases T1 and T2 in table 2 is calculated by using Jaccard matching coefficients, wherein the coverage amount of T1 is (1,1,1,1,0,1,1,0,0,0,0,0,1), the coverage vector of T2 is (1,1,1,1,1,0,0,0,0,0,0,0,1), T1 n T2 is (1,1,1,1,0,0,0,0,0,0,0,0,1), the result of containing 51 s and T1 n T2 is (1,1,1,1,1,1,1,0,0,0,0,0,1), and the result of Similarity (T1 and T2) is 0.625.
TABLE 2
A threshold is given for Jaccard matching coefficients, for example 0.9, and Jacc ard matching coefficients between two test cases above this threshold are considered to be for the same defect, i.e. they should be grouped into one class, and below this threshold they are considered to be for different defects.
Taking the test case set in table 2 as an example, clustering the failure test case sets T7, T8, T9 and T10, respectively calculating the similarity between coverage vectors of the two failure test cases, wherein the similarity between T7 and T8 is 1, the similarity between T9 and T10 is also 1, and the similarity is greater than a threshold value of 0.9, so that the two failure test cases T7 and T8 are gathered into one type, the other two failure test cases T9 and T10 are gathered into one type, and the two types of failure test case subsets are respectively combined with the success test case sets T1 to T6 to form a plurality of failure test case subsets aiming at different defects of the same source program, as shown in fig. 5.
Referring to fig. 5, clustering of the failure test case sets is achieved, a plurality of failure test case subsets aiming at different defects are obtained through clustering, each failure test case subset is respectively combined with a success test case set, and a plurality of test case subsets aiming at different defects are formed. Based on the subset of test cases for different defects, the present embodiment will continue to employ the defect localization model. The basic idea is that based on the failure test case subset of the coverage vector, a plurality of failure test case subsets aiming at different defects of the same source program are obtained, so that a multi-defect positioning method is obtained, statement suspicion lists of a plurality of single defects are generated, as shown in table 3 and table 4, table 3 is a single defect statement suspicion list aiming at defect 1, and table 4 is a single defect statement suspicion list aiming at defect 2.
TABLE 3 Table 3
TABLE 4 Table 4
Since the similarity between the failure test cases T7 and T8 is 1 and the similarity between T9 and T10 is also 1, it is determined that the clustering effect between T7 and T8 is the same as the clustering effect between T9 and T10, and the same weight is assigned when weighting. The statement suspicion values of each statement in the single-defect statement suspicion lists of tables 3 and 4 are normalized and weighted, and then fused to obtain a comprehensive multi-defect statement suspicion list, as shown in table 5.
TABLE 5
As can be seen from table 5, in the comprehensive multi-defect statement suspicion list, the ranks of the fault statements 7 and 10 are respectively the first and second, which means that the fused statement suspicion list can accurately locate the defect statement.
Therefore, under the condition that the fault program has multiple defects, the embodiment achieves the purposes of clustering failure test cases and fusing the suspicion list of comprehensive multiple-defect sentences, and ensures that the suspicion value of the defect sentences is kept the maximum.
Referring to fig. 6, an embodiment of the present invention further provides a multi-defect localization system based on a two-dimensional program spectrum, the system including:
The data extraction unit 100 is configured to perform data extraction on the source program according to the test case set, so as to obtain data extraction information;
the failure test case subset obtaining unit 200 is configured to divide a failure test case set and a success test case set according to data extraction information, and perform cluster analysis on each failure test case in the failure test case set to obtain a plurality of failure test case subsets aiming at different defects of the same source program;
the test case subset obtaining unit 300 is configured to combine the failed test case subset of each defect with a successful test case set to obtain a test case subset of each defect;
a two-dimensional program spectrum obtaining unit 400, configured to perform feature conversion on the subset of test cases of each defect, to obtain a two-dimensional program spectrum of the subset of test cases of each defect;
a statement suspicion list obtaining unit 500, configured to construct a defect positioning model, and obtain a statement suspicion list of the test case subset for each defect based on the defect positioning model;
a multi-defect localization report acquiring unit 600, configured to fuse all statement suspicion lists to acquire a multi-defect localization report;
the multi-defect localization unit 700 is used for localizing a plurality of defects through a multi-defect localization report.
It should be noted that, since a multi-defect positioning system based on a two-dimensional program spectrum in the present embodiment and the above-mentioned multi-defect positioning method based on a two-dimensional program spectrum are based on the same inventive concept, the corresponding content in the method embodiment is also applicable to the system embodiment, and will not be described in detail herein.
The embodiment of the invention also provides a multi-defect positioning device based on the two-dimensional program frequency spectrum, which comprises: at least one control processor and a memory for communication connection with the at least one control processor.
The memory, as a non-transitory computer readable storage medium, may be used to store non-transitory software programs as well as non-transitory computer executable programs. In addition, the memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, the memory optionally includes memory remotely located relative to the processor, the remote memory being connectable to the processor through a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
A non-transitory software program and instructions required to implement a two-dimensional program spectrum based multi-defect localization method of the above embodiments are stored in a memory, and when executed by a processor, perform a two-dimensional program spectrum based multi-defect localization method of the above embodiments, for example, perform the method steps S100 to S700 in fig. 1 described above.
The system embodiments described above are merely illustrative, in that the units described as separate components may or may not be physically separate, i.e. may be located in one place, or may be distributed over a plurality of network elements. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
Embodiments of the present invention also provide a computer-readable storage medium storing computer-executable instructions that are executed by one or more control processors to cause the one or more control processors to perform a multi-defect localization method based on a two-dimensional program spectrum in the above-described method embodiments, for example, to perform the functions of the method steps S100 to S700 in fig. 1 described above.
From the above description of embodiments, it will be apparent to those skilled in the art that the embodiments may be implemented in software plus a general purpose hardware platform. Those skilled in the art will appreciate that all or part of the processes implementing the methods of the above embodiments may be implemented by a computer program for instructing relevant hardware, where the program may be stored in a computer readable storage medium, and where the program, when executed, may include the processes of the embodiments of the methods described above. The storage medium may be a magnetic disk, an optical disk, a read-only memory (ReadOnly Memory, ROM) or a random-access memory (Random Access Memory, RAM), etc.
The embodiments of the present invention have been described in detail with reference to the accompanying drawings, but the present invention is not limited to the above embodiments, and various changes can be made within the knowledge of one of ordinary skill in the art without departing from the spirit of the present invention.

Claims (8)

1. A multi-defect localization method based on a two-dimensional program spectrum, the method comprising:
carrying out data extraction on the source program according to the test case set to obtain data extraction information;
Dividing a failure test case set and a success test case set according to the data extraction information, and carrying out cluster analysis on each failure test case in the failure test case set to obtain a plurality of failure test case subsets aiming at different defects of the same source program;
Combining the failure test case subsets of each defect with the success test case sets respectively to obtain test case subsets of each defect;
Performing feature conversion on the test case subsets of each defect to obtain two-dimensional program frequency spectrums of the test case subsets of each defect; wherein:
Adopting static characteristics and dynamic characteristics of a program to construct a data stream spectrum with data dependency characteristics and a statement spectrum with statement execution states;
performing Z-Score characterization processing on the data stream spectrum to obtain a processed data stream spectrum;
Fusing the processed data stream spectrum with the statement execution state of the statement spectrum to obtain a two-dimensional program spectrum of the test case subset of each defect;
constructing a defect positioning model, and acquiring a statement suspicion list of the test case subset of each defect based on the defect positioning model and the two-dimensional program frequency spectrum;
Fusing all statement suspicion lists to obtain a multi-defect positioning report; wherein:
Normalizing the statement suspicion value of each statement in the statement suspicion list based on the statement suspicion list of the test case subset of each defect to obtain a normalized statement suspicion list, wherein the normalized formula comprises:
Wherein x * represents the statement suspicion value after normalization processing, x represents the original statement suspicion value, min represents the statement suspicion minimum value, and max represents the statement suspicion maximum value;
The normalized statement suspicion list is:
listi=[st1,st2,...,stn;susi1,susi2,...,susin]
Wherein list i represents an i-th single-defect statement suspicion list, st 1,st2,...,stn represents n statements in each statement suspicion list, and sus i1,susi2,...,susin represents statement suspicion values respectively corresponding to the n statements in the i-th suspicion list;
Weighting the statement suspicion value of each statement in each normalized statement suspicion list to obtain a weighted statement suspicion list, wherein the weighting formula comprises:
listwi=[st1,st2,...,stn;susi1wi,susi2wi,...,susinwi]
Wherein, W i represents the weight of the ith single defect sentence suspicion list, w i∈[0,1],si represents a Jaccard matching coefficient corresponding to the weight of the ith single defect sentence suspicion list, listw i represents the weighted ith single defect sentence suspicion list, and sus i1wi,susi2wi,...,susinwi represents weighted sentence suspicion values corresponding to n sentences in the ith suspicion list;
fusing each weighted statement suspicion list and adding the v-th statement suspicion value by the formula:
SUSv=sus1vw1+sus2vw2+...+susivwi v=1,...,n
LIST=[st1,st2,...,stn;SUS1,SUS2,...,SUSn]
Wherein SUS 1vw1+sus2vw2+...+susivwi represents that the statement suspicion value of the v-th statement in each weighted statement suspicion list is added with the statement suspicion value of the corresponding v-th statement in other statement suspicion lists, and SUS v represents the final statement suspicion value of the v-th statement; LIST represents a comprehensive multi-defect statement suspicion LIST, SUS 1,SUS2,...,SUSn represents the final statement suspicion value after fusion corresponding to the n statements respectively;
Sequencing the final statement suspicion value of each statement in the comprehensive multi-defect statement suspicion list from large to small to obtain a multi-defect positioning report;
and positioning a plurality of defects through the multi-defect positioning report.
2. The method for locating multiple defects based on two-dimensional program spectrum according to claim 1, wherein performing cluster analysis on each failure test case in the failure test case set to obtain a plurality of failure test case subsets for different defects of the same source program comprises:
Acquiring coverage information of each failure test case, and acquiring a coverage vector based on the coverage information;
And judging the similarity between the coverage vectors of every two failure test cases according to the following three conditions by taking the minimum distance measurement as a similarity coefficient, wherein when the three conditions are met between the coverage vectors of the two failure test cases, the similarity is provided between the two failure test cases:
The first condition includes:
The second condition includes:
the third condition includes:
where x i,xj∈D,rij represents the similarity coefficient between the overlay vector x i and the overlay vector x j;
a threshold is preset, and a Jaccard matching coefficient is adopted to measure the similarity between two coverage vectors with similarity, wherein the Jaccard matching coefficient has a calculation formula as follows:
And if the similarity is greater than or equal to the threshold value, grouping two failure test cases corresponding to the two coverage vectors into one type.
3. The two-dimensional program spectrum-based multi-defect localization method of claim 1, wherein the defect localization model comprises a three-layer neural network, the first layer neural network comprising a plurality of input neurons; the second layer neural network comprises neurons with a plurality of radial basis functions as activation functions; the third layer of neural network comprises an execution result of each test case as a neuron.
4. A multi-defect localization method based on two-dimensional program spectrum according to claim 3, wherein a ridge regression is provided between the second layer neural network and the third layer neural network of the defect localization model; fitting the two-dimensional program frequency spectrum and the execution result of each test case through the ridge regression, and obtaining the fitting result of each test case.
5. The two-dimensional program spectrum-based multi-defect localization method of claim 4, wherein the obtaining the statement suspicion list of the subset of test cases for each of the defects based on the defect localization model and the two-dimensional program spectrum comprises:
The defect positioning model is trained by the two-dimensional program frequency spectrum and the execution result of each test case to obtain a statement suspicious degree predictor;
Inputting a two-dimensional virtual frequency spectrum to the statement suspicion predictor, and generating statement suspicion values of the statements corresponding to each fitting result through the statement suspicion predictor;
And according to the statement suspicion values corresponding to the test case subsets of each defect, sorting the statement suspicion values from large to small to generate a statement suspicion list of the test case subsets of each defect.
6. A multi-defect localization system based on a two-dimensional program spectrum, the system comprising:
the data extraction unit is used for carrying out data extraction on the source program according to the test case set to obtain data extraction information;
The failure test case subset acquisition unit is used for dividing a failure test case set and a success test case set according to the data extraction information, and carrying out cluster analysis on each failure test case in the failure test case set to obtain a plurality of failure test case subsets aiming at different defects of the same source program;
The test case subset obtaining unit is used for respectively combining the failure test case subset of each defect with the successful test case set to obtain the test case subset of each defect;
The two-dimensional program spectrum acquisition unit is used for carrying out feature conversion on the test case subsets of each defect to obtain two-dimensional program spectrums of the test case subsets of each defect; wherein:
Adopting static characteristics and dynamic characteristics of a program to construct a data stream spectrum with data dependency characteristics and a statement spectrum with statement execution states;
performing Z-Score characterization processing on the data stream spectrum to obtain a processed data stream spectrum;
Fusing the processed data stream spectrum with the statement execution state of the statement spectrum to obtain a two-dimensional program spectrum of the test case subset of each defect;
The statement suspicion list acquisition unit is used for constructing a defect positioning model and acquiring a statement suspicion list of the test case subset of each defect based on the defect positioning model and the two-dimensional program frequency spectrum;
the multi-defect positioning report acquisition unit is used for fusing all statement suspicion lists to acquire a multi-defect positioning report; wherein:
Normalizing the statement suspicion value of each statement in the statement suspicion list based on the statement suspicion list of the test case subset of each defect to obtain a normalized statement suspicion list, wherein the normalized formula comprises:
Wherein x * represents the statement suspicion value after normalization processing, x represents the original statement suspicion value, min represents the statement suspicion minimum value, and max represents the statement suspicion maximum value;
The normalized statement suspicion list is:
listi=[st1,st2,...,stn;susi1,susi2,...,susin]
Wherein list i represents an i-th single-defect statement suspicion list, st 1,st2,...,stn represents n statements in each statement suspicion list, and sus i1,susi2,...,susin represents statement suspicion values respectively corresponding to the n statements in the i-th suspicion list;
Weighting the statement suspicion value of each statement in each normalized statement suspicion list to obtain a weighted statement suspicion list, wherein the weighting formula comprises:
listwi=[st1,st2,...,stn;susi1wi,susi2wi,...,susinwi]
Wherein, W i represents the weight of the ith single defect sentence suspicion list, w i∈[0,1],si represents a Jaccard matching coefficient corresponding to the weight of the ith single defect sentence suspicion list, listw i represents the weighted ith single defect sentence suspicion list, and sus i1wi,susi2wi,...,susinwi represents weighted sentence suspicion values corresponding to n sentences in the ith suspicion list;
fusing each weighted statement suspicion list and adding the v-th statement suspicion value by the formula:
SUSv=sus1vw1+sus2vw2+...+susivwi v=1,...,n
LIST=[st1,st2,...,stn;SUS1,SUS2,...,SUSn]
Wherein SUS 1vw1+sus2vw2+...+susivwi represents that the statement suspicion value of the v-th statement in each weighted statement suspicion list is added with the statement suspicion value of the corresponding v-th statement in other statement suspicion lists, and SUS v represents the final statement suspicion value of the v-th statement; LIST represents a comprehensive multi-defect statement suspicion LIST, SUS 1,SUS2,...,SUSn represents the final statement suspicion value after fusion corresponding to the n statements respectively;
Sequencing the final statement suspicion value of each statement in the comprehensive multi-defect statement suspicion list from large to small to obtain a multi-defect positioning report;
and the multi-defect positioning unit is used for positioning a plurality of defects through the multi-defect positioning report.
7. A multi-defect localization apparatus based on a two-dimensional program spectrum, comprising at least one control processor and a memory for communication connection with the at least one control processor; the memory stores instructions executable by the at least one control processor to enable the at least one control processor to perform a two-dimensional program spectrum-based multi-defect localization method as claimed in any one of claims 1 to 5.
8. A computer-readable storage medium storing computer-executable instructions for causing a computer to perform a two-dimensional program spectrum-based multi-defect localization method as claimed in any one of claims 1 to 5.
CN202210659903.5A 2022-06-13 2022-06-13 Multi-defect positioning method, system and equipment based on two-dimensional program frequency spectrum Active CN115185814B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210659903.5A CN115185814B (en) 2022-06-13 2022-06-13 Multi-defect positioning method, system and equipment based on two-dimensional program frequency spectrum

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210659903.5A CN115185814B (en) 2022-06-13 2022-06-13 Multi-defect positioning method, system and equipment based on two-dimensional program frequency spectrum

Publications (2)

Publication Number Publication Date
CN115185814A CN115185814A (en) 2022-10-14
CN115185814B true CN115185814B (en) 2024-05-21

Family

ID=83513243

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210659903.5A Active CN115185814B (en) 2022-06-13 2022-06-13 Multi-defect positioning method, system and equipment based on two-dimensional program frequency spectrum

Country Status (1)

Country Link
CN (1) CN115185814B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105760295A (en) * 2015-12-28 2016-07-13 天津大学 Multi-defect positioning method based on search algorithm
CN109165159A (en) * 2018-08-10 2019-01-08 北京理工大学 A kind of more defect positioning methods based on program frequency spectrum
CN109254924A (en) * 2018-09-28 2019-01-22 中国科学院长春光学精密机械与物理研究所 A kind of software fault positioning method, device, equipment and readable storage medium storing program for executing
CN109919500A (en) * 2019-03-13 2019-06-21 中南大学 Auto-Evaluation System with the error feedback function based on ontology
CN110362484A (en) * 2019-07-03 2019-10-22 北京航空航天大学 Localization method, device, electronic equipment and the storage medium of software multiple faults
CN111831556A (en) * 2020-06-18 2020-10-27 中国科学院空间应用工程与技术中心 Software multi-fault decoupling and parallel positioning method and device
CN112711537A (en) * 2020-12-31 2021-04-27 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) Software defect positioning method and device, electronic equipment and storage medium
CN114153735A (en) * 2021-12-06 2022-03-08 杭州电子科技大学 Defect positioning method based on frequency spectrum technology and assertion switching technology

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9043761B2 (en) * 2010-09-01 2015-05-26 International Business Machines Corporation Fault localization using condition modeling and return value modeling
US10678673B2 (en) * 2017-07-12 2020-06-09 Fujitsu Limited Software program fault localization

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105760295A (en) * 2015-12-28 2016-07-13 天津大学 Multi-defect positioning method based on search algorithm
CN109165159A (en) * 2018-08-10 2019-01-08 北京理工大学 A kind of more defect positioning methods based on program frequency spectrum
CN109254924A (en) * 2018-09-28 2019-01-22 中国科学院长春光学精密机械与物理研究所 A kind of software fault positioning method, device, equipment and readable storage medium storing program for executing
CN109919500A (en) * 2019-03-13 2019-06-21 中南大学 Auto-Evaluation System with the error feedback function based on ontology
CN110362484A (en) * 2019-07-03 2019-10-22 北京航空航天大学 Localization method, device, electronic equipment and the storage medium of software multiple faults
CN111831556A (en) * 2020-06-18 2020-10-27 中国科学院空间应用工程与技术中心 Software multi-fault decoupling and parallel positioning method and device
CN112711537A (en) * 2020-12-31 2021-04-27 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) Software defect positioning method and device, electronic equipment and storage medium
CN114153735A (en) * 2021-12-06 2022-03-08 杭州电子科技大学 Defect positioning method based on frequency spectrum technology and assertion switching technology

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
Evaluation and Analysis of Spectrum-Based Fault Localization with Modified Similarity Coefficients for Software Debugging;Yi-Sian You等;《2013 IEEE 37th Annual Computer Software and Applications Conference》;20131031;180-189 *
Statement spectrum with two dimensional eigenvalues for intelligent software fault localization;shengbing ren等;《Journal of Intelligent & Fuzzy Systems》;20220304;2899-2914 *
一种基于频谱信息并结合碰集和遗传算法的缺陷定位方法;周明泉等;《计算机科学》;20180915(第09期);207-212 *
基于二维程序频谱的智能软件缺陷定位;左兴;《中国优秀硕士学位论文全文数据库 信息科技辑》;20240215;I138-352 *
基于模糊C均值聚类的软件多缺陷定位方法;王兴亚等;《计算机学报》;20190604;206-232 *
多故障环境下的频谱故障定位技术实证分析;于全江;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160815;I138-114 *
通过增大边际权重提高基于频谱的错误定位效率;谭德贵等;《计算机学报》;20101215(第12期);2335-2342 *

Also Published As

Publication number Publication date
CN115185814A (en) 2022-10-14

Similar Documents

Publication Publication Date Title
Yang et al. Benchmarking attribution methods with relative feature importance
Nakazawa et al. Wafer map defect pattern classification and image retrieval using convolutional neural network
CN116126945B (en) Sensor running state analysis method and system based on data analysis
Verma et al. An ensemble approach to identifying the student gender towards information and communication technology awareness in european schools using machine learning
Morales et al. LAMDA-HAD, an Extension to the LAMDA Classifier in the Context of Supervised Learning
CN111586728B (en) Small sample characteristic-oriented heterogeneous wireless network fault detection and diagnosis method
Ferreira et al. Adversarial learning for a robust iris presentation attack detection method against unseen attack presentations
CN113610747A (en) Automatically selecting an algorithm module to examine a sample
Dinkelberg et al. Detecting opinion-based groups and polarization in survey-based attitude networks and estimating question relevance
CN111767273B (en) Data intelligent detection method and device based on improved SOM algorithm
CN115185814B (en) Multi-defect positioning method, system and equipment based on two-dimensional program frequency spectrum
CN113743443A (en) Image evidence classification and identification method and device
CN117152528A (en) Insulator state recognition method, insulator state recognition device, insulator state recognition apparatus, insulator state recognition program, and insulator state recognition program
CN111177388A (en) Processing method and computer equipment
US20220230028A1 (en) Determination method, non-transitory computer-readable storage medium, and information processing device
CN111666985B (en) Deep learning confrontation sample image classification defense method based on dropout
CN114818945A (en) Small sample image classification method and device integrating category adaptive metric learning
CN108429589B (en) Optical source of optical network based on spectral analysis and optical path identification method
CN111553418B (en) Method and device for detecting neuron reconstruction errors and computer equipment
CN117313899B (en) Method, apparatus and medium for data processing
CN117313900B (en) Method, apparatus and medium for data processing
CN112685324B (en) Method and system for generating test scheme
WO2022139402A1 (en) Diagnostic classification device and method
Dinkelberg et al. Detect opinion-based groups and reveal polarisation in survey data
CN113139447A (en) Feature analysis method, feature analysis device, computer equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant