Creating a higher order mutant for mutation testing software

US2021141714A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2021141714-A1
Application numberUS-201916679438-A
CountryUS
Kind codeA1
Filing dateNov 11, 2019
Priority dateNov 11, 2019
Publication dateMay 13, 2021
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computer-implemented method for creating a higher order mutant for mutation testing software is disclosed. The method includes, for each software test of a set of software tests, identifying a respective code path. The method further includes, for each first order mutant of a plurality of first order mutants, associating the first order mutant with the one or more identified code paths it interacts with. The method further includes creating a higher order mutant by combining two or more first order mutants based on the one or more associated code paths.

First claim

Opening claim text (preview).

1 . A computer-implemented method for creating a higher order mutant for mutation testing software, the method comprising: for each software test of a set of software tests, identifying a respective code path; for each first order mutant of a plurality of first order mutants, associating the first order mutant with the one or more identified code paths it interacts with; and creating a higher order mutant by combining two or more first order mutants of the plurality of first order mutants based on the one or more associated code paths, wherein: the one or more code paths associated with a particular first order mutant of the two or more first order mutants do not overlap with the one or more code paths associated with the other first order mutants of the two or more first order mutants. 2 . (canceled) 3 . The method of claim 1 , wherein, for each software test of the set of software tests, identifying the respective code path comprises: obtaining the respective code path; and assigning a path identifier to each of the one or more obtained code paths. 4 . The method of claim 1 , wherein associating the first order mutant with the one or more identified code paths it interacts with comprises: generating a first order mutant; identifying the one or more code paths the generated first order mutant interacts with; and in response to identifying the one or more code paths, associating the first order mutant with the one or more identified code paths it interacts with. 5 . The method of claim 1 , wherein associating the first order mutant with the one or more identified code paths it interacts with comprises: associating the first order mutant with the one or more identified code paths that comprise code affected by the first order mutant. 6 . The method of claim 1 , wherein creating the higher order mutant by combining the two or more first order mutants based on the one or more associated code paths comprises: organizing the two or more first order mutants based on the one or more associated code paths; and creating the higher order mutant by combining the two or more organized first order mutants. 7 . The method of claim 1 , further comprising: classifying a measure of performance for mutation testing software, including: for each of the set of software tests, executing the software test using the higher order mutant; and classifying a measure of performance of the software test based on the executed software test. 8 . The method of claim 7 , further comprising, in response to a software test detecting and rejecting the higher order mutant: disassembling the higher order mutant to obtain the two or more respective first order mutants; executing the software test using a first particular first order mutant of the two or more obtained first order mutants; and in response to the software test detecting and rejecting the first particular first order mutant, executing the software test using a second particular first order mutant from the two or more obtained first order mutants. 9 . A computer program product for creating a higher order mutant for mutation testing software, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processing unit to cause the processing unit to perform a method comprising: for each software test of a set of software tests, identifying a respective code path; for each first order mutant of a plurality of first order mutants, associating the first order mutant with the one or more identified code paths it interacts with; and creating a higher order mutant by combining two or more first order mutants of the plurality of first order mutants based on the one or more associated code paths, wherein: the one or more code paths associated with a particular first order mutant of the two or more first order mutants do not overlap with the one or more code paths associated with the other first order mutants of the two or more first order mutants. 10 . (canceled) 11 . The computer program product of claim 9 , wherein associating the first order mutant with the one or more identified code paths it interacts with comprises: associating the first order mutant with the one or more identified code paths that comprise code affected by the first order mutant. 12 . The computer program product of claim 9 , wherein creating the higher order mutant by combining the two or more first order mutants based on the one or more associated code paths comprises: organizing the two or more first order mutants based on the one or more associated code paths; and creating the higher order mutant by combining the two or more organized first order mutants. 13 . The computer program product of claim 9 , further comprising: classifying a measure of performance for mutation testing software, including: for each of the set of software tests, executing the software test using the higher order mutant; and classifying a measure of performance of the software test based on the executed software test. 14 . The computer program product of claim 13 , further comprising, in response to a software test detecting and rejecting the higher order mutant: disassembling the higher order mutant to obtain the two or more respective first order mutants; executing the software test using a first particular first order mutant of the two or more obtained first order mutants; and in response to the software test detecting and rejecting the first particular first order mutant, executing the software test using a second particular first order mutant from the two or more obtained first order mutants. 15 . A system for creating a higher order mutant for mutation testing software, the system comprising a processor configured to: for each software test of a set of software tests, identify a respective code path; for each first order mutant of a plurality of first order mutants, associate the first order mutant with the one or more identified code paths it interacts with; and create a higher order mutant by combining two or more first order mutants of the plurality of first order mutants based on the one or more associated code paths, wherein: the one or more code paths associated with a particular first order mutant of the two or more first order mutants do not overlap with the one or more code paths associated with the other first order mutants of the two or more first order mutants. 16 . The system of claim 15 , wherein, for each of the software tests of the set of software tests, identifying a respective code path comprises: obtaining the respective code path; and assigning a path identifier to each of the one or more obtained code paths. 17 . The system of claim 15 , wherein associating the first order mutant with the one or more identified code paths it interacts with comprises: generating the first order mutant; identifying the one or more code paths the generated first order mutant interacts with; and in response to identifying the one or more code paths, associate the first order mutant with the one or more identified code paths it interacts with. 18 . The system of claim 15 , wherein associating the first order mutant with the one or more identified code paths it interacts with comprises: associating the first order mutant with the one or more identified code paths that comprise code affected by the first order mutant. 19 . The system of claim 15 , wherein creating the higher or

Assignees

Inventors

Classifications

  • for test execution, e.g. scheduling of test suites · CPC title

  • where the computing system component is a software system · CPC title

  • for performance assessment · CPC title

  • for test design, e.g. generating new test cases · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2021141714A1 cover?
A computer-implemented method for creating a higher order mutant for mutation testing software is disclosed. The method includes, for each software test of a set of software tests, identifying a respective code path. The method further includes, for each first order mutant of a plurality of first order mutants, associating the first order mutant with the one or more identified code paths it int…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F11/3688. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu May 13 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).