US 12,072,790 B1
Mutation testing within continuous integration systems
Andrew L Pearson, Normal, IL (US); and Nate Shepherd, Bloomington, IL (US)
Assigned to State Farm Mutual Automobile Insurance Company, Bloomington, IL (US)
Filed by State Farm Mutual Automobile Insurance Company, Bloomington, IL (US)
Filed on Apr. 7, 2021, as Appl. No. 17/224,904.
Int. Cl. G06F 9/44 (2018.01); G06F 11/36 (2006.01)
CPC G06F 11/3688 (2013.01) [G06F 11/3676 (2013.01); G06F 11/3684 (2013.01); G06F 11/3692 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method, comprising:
receiving, by a computer system, a request to integrate a source code change into a codebase associated with an application; determining an application test suite associated with the application;
determining a first line of source code associated with the requested source code change;
analyzing, by the computer system, the first line of source code to determine a first source code attribute associated with the first line of source code, wherein the first source code attribute includes at least one of (a) a type of programming statement in the first line of source code, (b) a type of operator in the first line of source code, (c) an indication of a type of function invoked by the first line of source code, (d) an indication of whether the first line of source code is within a conditional code block, or (e) an indication of whether the first line of source code is within a programming loop;
determining a first test subset of the application test suite, based at least in part on the first source code attribute associated with the first line of source code, wherein determining the first test subset comprises inputting the first source code attribute into a trained model configured to output data identifying a subset of the test suite;
mutating, by the computer system, the source code change into a mutated source code change;
building, by the computer system, a mutated application by compiling one or more software classes including the mutated source code change; and
executing, by the computer system, the first test subset of the application test suite on the mutated application.