Patent Issued for Artificial intelligence driven testing (USPTO 11853196): Allstate Insurance Company
2024 JAN 11 (NewsRx) -- By a
The patent’s inventors are Pandurangarao,
This patent was filed on
From the background information supplied by the inventors, news correspondents obtained the following quote: “Software development typically involves several activities or phases, some of which may be completed in series. For example, software engineers may follow a waterfall model, where a project’s requirements, design, implementation, and test may be conducted as an ordered set of phases. Alternatively, an agile approach may be followed in which features may be incrementally developed and tested. In either approach, during the test phase, a test team may execute functional tests following a release of source code, in order to verify that the software works as expected. For large software projects, the test phase may be lengthy, as it may involve the execution of a large number of tests. For an example, the test phase in a large software project might require six weeks to complete.
“As new features are implemented, in order to save time, software engineers sometimes select, using ad-hoc methods, a subset of tests to run to test new features. However, the software engineer may not be aware of available tests, or tests that may be applicable, and the subset of tests selected may not optimally test the features. Therefore, the ad-hoc testing may fail to catch software errors and non-compliances, and may not be optimal with regards to time and effort spent by the software engineer.”
Supplementing the background information on this patent, NewsRx reporters also obtained the inventors’ summary information for this patent: “In light of the foregoing background, the following presents a simplified summary of the present disclosure in order to provide a basic understanding of some aspects of the invention. This summary is not an extensive overview of the invention. It is not intended to identify key or critical elements of the invention or to delineate the scope of the invention. The following summary merely presents some concepts of the invention in a simplified form as a prelude to the more detailed description provided below.
“Aspects of the disclosure include methods, computer-readable storage media, software, systems, and apparatuses for artificial intelligence driven testing (AIDT). In particular, source code may be analyzed to identify source code keywords, which may then be mapped to test keywords that have been associated with test cases. In some aspects, the test cases may be executed to test the source code.
“In some aspects, the source code keywords may be determined by using artificial intelligence, including by use of natural language processing of the source code.
“In some aspects, the mapping of the source code keywords to the test keywords may include determining a similarity ratio between a source code keyword and a test keyword, and determining that the source code keyword maps to the test keyword, based on a determination that the similarity ratio meets a predetermined threshold.
“In some aspects, the test cases may be executed to functionally test the source code, before the software engineer commits the source code to a version control system, making it visible to other developers or testers. The results of the tests may be analyzed by use of a machine learning algorithm that has been trained on causes of previous test failures, and test failures may be categorized, based on the analysis.”
The claims supplied by the inventors are:
“1. A method comprising: initiating a release of a source code file into a branch in a version control system; triggering, automatically and without user intervention, artificial intelligence driven testing of the source code file based on the initiating and prior to the release, the artificial intelligence driven testing including: determining by a computing device, one or more source code keywords via analysis of the source code file; removing at least one stop word from the source code keywords to obtain at least one remaining source code keyword; mapping the at least one remaining source code keyword to one or more test keywords, based on a similarity between the at least one remaining source code keyword and the one or more test keywords, wherein the one or more test keywords are associated with one or more test cases; using a risk based algorithm for identifying a minimum set of the one or more test cases for reducing duplicate coverage; and eliminating at least one of the one or more test cases with duplicate coverage from the one or more test cases based on the minimum set of the one or more test cases as identified; causing execution of the minimum set of the one or more test cases; and releasing the source code file into the branch in the version control system upon at least one of the minimum set of the one or more test cases satisfying a passing threshold, wherein the passing threshold is a predetermined combination of the tests performed during the artificial intelligence driven testing, and the predetermined combination of the tests are a subset of the tests performed during artificial intelligence driven testing.
“2. The method of claim 1, wherein the mapping the at least one remaining source code keyword to the one or more test keywords comprises: determining a similarity ratio between the at least one remaining source code keyword and a test keyword of the one or more test keywords; and determining that the at least one remaining source code keyword maps to the test keyword based on a determination that the similarity ratio meets a predetermined threshold.
“3. The method of claim 1, wherein the determining of the one or more source code keywords comprises determining the one or more source code keywords by natural language processing of the source code file.
“4. The method of claim 1, wherein after the causing of the execution of the minimum set of the one or more test cases, the method further comprises: enabling check-in of the source code file to the version control system.
“5. The method of claim 1, wherein the one or more test keywords comprise one or more text strings located in one or more column headings of a table and wherein one or more test case identifiers corresponding to the one or more test cases are located in one or more rows of the table, and wherein the one or more test case identifiers are associated with the one or more test keywords by one or more entries in the table.
“6. The method of claim 1, further comprising: analyzing, by use of a machine learning algorithm that has been trained on one or more causes of one or more previous test failures, one or more test script failures associated with the one or more test cases; and based on the analyzing, categorizing at least one test script failure as a sync issue, a source code change issue, a test environment issue, or a new feature introduction issue.
“7. A method comprising: initiating a release of a source code file into a branch in a version control system; triggering, automatically and without user intervention, artificial intelligence driven testing of the source code file based on the initiating and prior to the release, the artificial intelligence driven testing including: comparing, by a computing device, source code of the source code file to a previous version of the source code; based on the comparing, determining one or more source code keywords in the source code, wherein the one or more source code keywords comprise one or more function names found in the source code; mapping at least one of the one or more source code keywords to one or more test keywords, based on a similarity between the at least one of the one or more source code keywords and the one or more test keywords, wherein the one or more test keywords are associated with one or more test case identifiers; selecting one or more test cases from a test repository, wherein the one or more test cases are associated with the one or more test case identifiers; using a risk based algorithm for identifying a minimum set of the one or more test cases for reducing duplicative coverage; eliminating at least one of the one or more test cases with duplicate coverage from the one or more test cases based on the minimum set of the one or more test cases as identified; causing execution of the minimum set of the one or more test cases; and releasing the source code file into the branch in the version control system upon at least one of the minimum set of the one or more test cases satisfying a passing threshold, wherein the passing threshold is a predetermined combination of the tests performed during the artificial intelligence driven testing, and the predetermined combination of the tests are a subset of the tests performed during artificial intelligence driven testing.
“8. The method of claim 7, wherein the mapping of the at least one of the one or more source code keywords to the one or more test keywords, based on the similarity between the at least one of the one or more source code keywords and the one or more test keywords, comprises: determining a similarity ratio between the at least one of the one or more source code keywords and a test keyword of the one or more test keywords, wherein the similarity ratio is based on a Levenshtein distance between the at least one of the one or more source code keywords and the test keyword; and determining that the at least one of the one or more source code keywords maps to the test keyword based on a determination that the similarity ratio meets a predetermined threshold.
“9. The method of claim 8, wherein the predetermined threshold is 70.
“10. The method of claim 7, wherein the determining of the one or more source code keywords in the source code comprises: determining one or more candidate words by natural language processing of the source code; discarding one or more of the one or more candidate words matching predetermined one or more stop words; and identifying one or more of the remaining one or more candidate words as the one or more source code keywords.
“11. The method of claim 7, wherein after the causing of the execution of the minimum set of the one or more test cases, further comprises: enabling check-in of the source code to the version control system.
“12. The method of claim 7, wherein the one or more test keywords comprise one or more text strings located in one or more column headings of a table and wherein the one or more test case identifiers are located in rows of the table, and wherein the one or more test case identifiers are associated with the one or more test keywords by one or more entries in the table.
“13. The method of claim 7, further comprising: analyzing, by use of a machine learning algorithm that has been trained on one or more causes of previous one or more test failures, one or more test script failures associated with the one or more test cases; and based on the analyzing, categorizing at least one test script failure as a sync issue, a source code change issue, a test environment issue, or a new feature introduction issue.
“14. A method comprising: initiating a release of a source code file into a branch in a version control system; triggering, automatically and without user intervention, artificial intelligence driven testing of the source code file based on the initiating and prior to the release, the artificial intelligence driven testing including: comparing, by a computing device, source code of the source code file to a previous version of the source code, in order to identify new source code; analyzing, by use of natural language processing (NLP), the new source code to identify one or more source code keywords, wherein the one or more source code keywords comprise one or more function names found in the source code; removing at least one stop word from the one or more source code keywords to obtain at least one remaining source code keyword; mapping the at least one remaining source code keyword to one or more test keywords, by determining a similarity ratio between each source code keyword and each test keyword, wherein the similarity ratio is based on a Levenshtein distance between the source code keyword and the test keyword, and wherein the one or more test keywords are associated with one or more test case identifiers; selecting one or more test cases from a test repository, wherein the one or more test cases that are selected are associated with the one or more test case identifiers; using a risk-based algorithm to identify a minimum set of the one or more test cases for reducing duplicate coverage; eliminating at least one of the one or more test cases with duplicate coverage from the test cases based on the minimum set of the one or more test cases as identified; causing execution of the minimum set of the one or more test cases; releasing the source code file into the branch in the version control system upon at least one of the minimum set of the one or more test cases satisfying a passing threshold, wherein the passing threshold is a predetermined combination of the tests performed during the artificial intelligence driven testing, and the predetermined combination of the tests are a subset of the tests performed during artificial intelligence driven testing.
“15. The method of claim 14, wherein the natural language processing comprises an NLP clustering algorithm, based on a Latent Dirichlet Allocation (LDA) statistical model.”
There are additional claims. Please visit full patent to read further.
For the URL and additional information on this patent, see: Pandurangarao,
(Our reports deliver fact-based news of research and discoveries from around the world.)
Researchers Submit Patent Application, “Electronic Pharmacy Adjudication System And Associated Method And Computer Program Product”, for Approval (USPTO 20230419415): Patent Application
Patent Issued for Multi-computer processing system for compliance monitoring and control (USPTO 11854369): Allstate Insurance Company
Advisor News
Annuity News
Health/Employee Benefits News
Life Insurance News