Adaptive Framework Automatically Prioritizing Software Test Cases

US2016162392A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016162392-A1
Application numberUS-201414565220-A
CountryUS
Kind codeA1
Filing dateDec 9, 2014
Priority dateDec 9, 2014
Publication dateJun 9, 2016
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.

An automated, self-adaptive framework prioritizes software testing in a consistent and effective manner. A metric evaluates past test execution information for assigning regression testing priority. The metric may be calculated with reference to one or more of the following factors taken in combination: requirement, coverage, history, and cost. The requirement factor considers customer-assigned priority of testing the code, complexity of implementing the code, and proneness of the code to faults. The coverage factor considers code coverage, feature coverage, and common usage rate. The history factor considers previous bug found rate, case stable rate, and priority to calculate. The cost factor considers test case execution time, and step length. A value of each factor for one test case is measured according to that test case and is not related to other test cases. The calculation result representing the metric for each test case determines a priority of the test case.

First claim

Opening claim text (preview).

What is claimed is: 1 . A computer-implemented method comprising: an engine receiving a user input and information about a software test case from a database; the engine processing the information to calculate in a first testing round, a first metric for the software test case; the engine assigning a testing priority to the software test case for the first testing round based upon the first metric; and the engine communicating the testing priority to the database for storage. 2 . A method as in claim 1 further comprising: the engine receiving another user input and updated information about the software test case from the database; the engine processing the updated information to calculate in a second testing round, a second metric for the software test case; the engine assigning an adaptive testing priority to the software test case for the second testing round based on the second metric; and the engine communicating the adaptive testing priority to the database for storage. 3 . A method as in claim 2 wherein: the engine receives the testing priority from the database; and the engine calculates the second metric based upon the testing priority and the updated information. 4 . A method as in claim 2 wherein the updated information comprises at least one of updated history information, updated coverage information, and updated cost information. 5 . A method as in claim 1 wherein the information comprises requirement information including at least one of a customer-assigned priority value, an implementation complexity value, and a fault proneness value. 6 . A method as in claim 1 wherein the information comprises coverage information including at least one of a code coverage rate, and a feature coverage rate. 7 . A method as in claim 1 wherein the information comprises history information including at least one of a case stable rate and a bug found rate. 8 . A method as in claim 1 wherein the information comprises cost information including at least one of a step length rate and a test case execution time rate. 9 . A method as in claim 1 further comprising the engine communicating the first metric to the database for storage. 10 . A non-transitory computer readable storage medium embodying a computer program for performing a method, said method comprising: an engine receiving a user input and information about a software test case from a database, the information comprising at least one of requirement information, coverage information, history information, and cost information; the engine processing the information to calculate in a first testing round, a first metric for the software test case; the engine assigning a testing priority to the software test case for the first testing round based upon the first metric; and the engine communicating the testing priority to the database for storage. 11 . A non-transitory computer readable storage medium as in claim 10 wherein the method further comprises: the engine receiving another user input and updated information about the software test case from the database; the engine processing the updated information to calculate in a second testing round, a second metric for the software test case; the engine assigning an adaptive testing priority to the software test case for the second testing round based on the second metric; and the engine communicating the adaptive testing priority to the database for storage. 12 . A non-transitory computer readable storage medium as in claim 11 wherein: the engine receives the testing priority from the database; and the engine calculates the second metric based upon the testing priority and the updated information. 13 . A non-transitory computer readable storage medium as in claim 12 wherein the updated information comprises updated history information, updated coverage information, or updated cost information. 14 . A non-transitory computer readable storage medium as in claim 10 wherein the information comprises at least one of: requirement information including at least one of a customer-assigned priority value, an implementation complexity value, and a fault proneness value; coverage information including at least one of a code coverage rate, and a feature coverage rate; history information including at least one of a case stable rate and a bug found rate; and cost information including at least one of a step length rate and a test case execution time rate. 15 . A non-transitory computer readable storage medium as in claim 10 wherein the method further comprises the engine communicating the first metric to the database for storage. 16 . A computer system comprising: one or more processors; a software program, executable on said computer system, the software program configured to: cause an engine to receive a user input and information about a software test case from a database; cause the engine to process the information to calculate in a first testing round, a first metric for the software test case; cause the engine to assign a testing priority to the software test case for the first testing round based upon the first metric; cause the engine to communicate the testing priority to the database for storage; cause the engine to receive another user input and updated information about the software test case from the database; cause the engine to process the updated information to calculate in a second testing round, a second metric for the software test case; cause the engine to assign an adaptive testing priority to the software test case for the second testing round based on the second metric; and cause the engine to communicate the adaptive testing priority to the database for storage. 17 . A computer system as in claim 16 wherein: the engine receives the testing priority from the database; and the engine calculates the second metric based upon the testing priority and the updated information. 18 . A computer system as in claim 17 wherein the updated information comprises at least one of updated coverage information, updated history information, and updated cost information. 19 . A computer system as in claim 16 wherein the information comprises at least one of: requirement information including at least one of a customer-assigned priority value, an implementation complexity value, and a fault proneness value; coverage information including at least one of a code coverage rate, and a feature coverage rate; history information including at least one of a case stable rate and a bug found rate; and cost information including at least one of a step length rate and a test case execution time rate. 20 . A computer system as in claim 16 wherein the software program further comprises code configured to cause the engine to communicate the first metric to the database for storage.

Assignees

Inventors

Classifications

  • for test execution, e.g. scheduling of test suites · 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 US2016162392A1 cover?
An automated, self-adaptive framework prioritizes software testing in a consistent and effective manner. A metric evaluates past test execution information for assigning regression testing priority. The metric may be calculated with reference to one or more of the following factors taken in combination: requirement, coverage, history, and cost. The requirement factor considers customer-assigned…
Who is the assignee on this patent?
Hu Ziheng, Li Jing, Li Xin, and 2 more
What technology area does this patent fall under?
Primary CPC classification G06F11/3684. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jun 09 2016 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 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).