Source code test consolidation
US-11474932-B2 · Oct 18, 2022 · US
US12339764B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12339764-B2 |
| Application number | US-202018007246-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 31, 2020 |
| Priority date | Jul 31, 2020 |
| Publication date | Jun 24, 2025 |
| Grant date | Jun 24, 2025 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A technique of training a model for determining a test case for software testing is presented, wherein the software testing is based on a set of test cases built for a set of software modules comprised by a software to be tested. The technique uses artificial intelligence and comprises obtaining log information resulting from execution of each of the test cases, wherein the log information is obtained per software module and per executed test case, and performing supervised machine learning based on the log information obtained per software module and per executed test case as input to train a model for predicting the executed test case.
Opening claim text (preview).
The invention claimed is: 1. A method of training a model for determining a test case (Ti) for software testing, wherein the software testing is based on a set of test cases built for a set of software modules (Mj) comprised by a software to be tested, the method comprising: obtaining log information resulting from execution of each of the test cases, the log information being obtained per software module and per executed test case, the log information comprising one or more logged events; performing supervised machine learning based on the log information obtained per software module and per executed test case as input to train a model for predicting the executed test case, the input to the model being representable as a set of training vectors, each training vector being associated with a particular executed test case and having a dimension corresponding to a number of software modules comprised by the set of software modules, each training vector having vector components derived from the log information; and processing the log information prior to deriving the vector components, processing the log information obtained for a particular software module comprising pruning a portion of the log information pertaining to one or more logged events repeatedly occurring upon execution of the particular software module across the test cases. 2. The method of claim 1 , wherein an output of the model is representable as a one hot vector indicative of the executed test case. 3. The method of claim 1 , wherein the vector components for a given software module in different training vectors are weighted relative to each other across the executed test cases to reflect an amount of log information created by the given software module upon execution of a particular test case relative to an amount of log information created by the given software module upon execution of another test case. 4. The method of claim 1 , wherein the log information is contained as logged events in a log file created per test case execution and per software module. 5. The method of claim 3 , wherein the amount of log information is derived from a number of logged events contained in a particular log file. 6. The method of claim 1 , wherein the amount of log information is defined by the number of logged events contained in a particular log file after logged events repeatedly occurring upon execution of the particular software model across the test cases have been pruned. 7. The method of claim 1 , wherein deriving a vector component for a given executed test case and a given software module comprises normalizing an amount of log information created for the given test case and the given software module relative to a maximum amount of log information created for the given software module upon execution of any of the test cases. 8. The method of claim 1 , wherein the model comprises a neural network. 9. The method of claim 1 , comprising using the trained model for determining at least one test case for software testing. 10. The method of claim 9 , wherein the software to be tested comprises a new release of the set of software modules in which at least one of the software modules was modified compared to an earlier release of the software modules. 11. The method of claim 10 , comprising determining, per software module, if the software module in the new release was modified relative to the earlier release. 12. The method of claim 11 , comprising generating an input vector having a dimension corresponding to a number of software modules comprised by the set of software modules, with the input vector having vector components quantifying a modification of the respective software module. 13. The method of claim 12 , wherein the vector components are one of integers, floating point numbers and binary values. 14. The method of claim 12 , wherein determining the at least one test case for the new release of software modules comprises inputting the input vector to the trained model. 15. A method of determining at least one test case (Ti) for software testing out of a set of test cases built for a set of new software modules (Mi) comprised by a software to be tested, the method comprising: obtaining a trained model configured to predict the at least one test case; obtaining the software to be tested, in the new release of the software modules at least one of the software modules having been modified compared to an earlier release of the software modules; determining, per software module, if the software module in the new release was modified relative to the earlier release; generating a data structure representable as an input vector having a dimension corresponding to a number of software modules comprised by the set of software modules, with the input vector having vector components quantifying a modification of the respective software module; and determining the at least one test case for the new release of software modules based on an output of the trained model using the data structure as an input. 16. An apparatus configured to train a model for determining a test case (Ti) for software testing, wherein the software testing is based on a set of test cases built for a set of software modules (Mj) comprised by a software to be tested, the apparatus comprising a processor configured to: obtain log information resulting from execution of each of the test cases, the log information being obtained per software module and per executed test case, the log information comprising one or more logged events; perform supervised machine learning based on the log information obtained per software module and per executed test case as input to train a model for predicting the executed test case, the input to the model being representable as a set of training vectors, each training vector being associated with a particular executed test case and having a dimension corresponding to a number of software modules comprised by the set of software modules, each training vector having vector components derived from the log information; and process the log information prior to deriving the vector components, processing the log information obtained for a particular software module comprising pruning a portion of the log information pertaining to one or more logged events repeatedly occurring upon execution of the particular software module across the test cases. 17. An apparatus configured to determine at least one test case (Ti) for software testing out of a set of test cases built for a set of new software modules (Mi) comprised by a software to be tested, the apparatus comprising a processor configured to: obtain a trained model configured to predict the at least one test case; obtain the software to be tested, in the new release of the software modules at least one of the software modules having been modified compared to an earlier release of the software modules; determine, per software module, if the software module in the new release was modified relative to the earlier release; generate a data structure representable as an input vector having a dimension corresponding to a number of software modules comprised by the set of software modules, with the input vector having vector components quantifying a modification of the respective software module; and determine the at least one test case for the new release of software modules based on an output of the trained model using the data structure as an input.
for coverage analysis · CPC title
for test execution, e.g. scheduling of test suites · CPC title
for test version control, e.g. updating test cases to a new software version · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.