Update testing by build introspection

US9870314B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9870314-B1
Application numberUS-201615376097-A
CountryUS
Kind codeB1
Filing dateDec 12, 2016
Priority dateDec 12, 2016
Publication dateJan 16, 2018
Grant dateJan 16, 2018

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.

The present disclosure provides new and innovative methods and systems for ordering tests in an application update environment. For example, an update to an application may be received. A file name of a file affected by the update may be detected. A correlation matrix, which associates file names and the test names with correlations based on test metrics, may be queried with the file name to return a correlation between the file name and a test. A test plan may be built based on the correlation between the detected file name and the test, and may include an ordered list based on correlations from the correlation matrix. The test plan may then be run. A test failure and test metric of a test may be detected and the correlation matrix may be updated with a correlation between the file name and the failed test based on the test metric.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method comprising: storing, in a memory, a plurality of files, the plurality of files including a first file and a second file that are used by an application, wherein each file in the plurality of files has a respective file name; storing, in the memory, a plurality of tests, the plurality of tests including a first test and a second test that are used to test the application, wherein each test in the plurality of tests has a respective test name; storing, in the memory, a plurality of test results, the plurality of test results including a first test result, which includes a first file name of the first file, which was updated by the application after a first update was applied to the application, a first test name of the first test, and a first test metric based on the first test; storing, in the memory, a correlation matrix, which associates the first file name and the first test name with a first correlation between the first file and the first test based on the first test metric; receiving a second update to the application, wherein the second update includes a first test profile including a first plurality of test names designated as test failure candidates; detecting the first test profile; detecting a second file name of the second file, which is updated by the application after the second update is applied to the application; detecting, by querying the correlation matrix with the second file name, a second correlation between the second file and the second test; building a first test plan based on at least the second correlation and the first test profile, wherein the first test plan includes an ordered list of a second plurality of test names including the second test name and the first plurality of test names, and wherein the second test name and the first plurality of test names are respectively ordered based on at least a plurality of correlations from the correlation matrix including the second correlation; running the first test plan based on the ordered list; detecting a first failure of the second test; generating a second test result, which includes the second file name, the second test name, and a second test metric based on the second test; and updating, in the correlation matrix, the second correlation between the second file and the second test, based on the second test metric. 2. The method of claim 1 , wherein the first test plan is stopped after the first failure of the second test. 3. The method of claim 1 , wherein a preliminary test result is generated after the failure of the second test and wherein the first test plan continues to run after the first failure of the second test. 4. The method of claim 1 , wherein the first test profile includes the second file name. 5. The system of claim 1 , wherein each of the plurality of test results are stored in the correlation matrix. 6. The method of claim 1 , wherein the first correlation includes at least a failure time and a pass time. 7. The method of claim 1 , wherein the first correlation includes an average time. 8. The method of claim 1 , wherein the first correlation includes a plurality of failure times. 9. The method of claim 1 , further comprising: receiving a third update to the application, wherein the third update includes a second test profile including a second plurality of test names designated as test failure candidates; detecting the second test profile; detecting a third file name of a third file, which is updated by the application after the third update is applied to the application; detecting, by querying the correlation matrix with the third file name, a third correlation between the third file and a third test; building a second test plan based on at least the third correlation and the second test profile, wherein the second test plan includes a second ordered list of a third plurality of test names including the third test name and a second plurality of test names, and wherein the third test name and the second plurality of test names are respectively ordered based on at least a second plurality of correlations from the correlation matrix including the third correlation; running the second test plan based on the second ordered list; detecting a second failure of the third test; generating a third test result, which includes the third file name, the third test name, and a third test metric based on the third test; and updating, in the correlation matrix, the third correlation between the third file and the third test, based on the third test metric. 10. The method of claim 1 , wherein the correlation matrix includes a test DAG for each file in the plurality of files. 11. A system comprising: a memory, wherein the memory stores: a plurality of files, the plurality of files including a first file and a second file that are used by an application, wherein each file in the plurality of files has a respective file name, a plurality of tests, the plurality of tests including a first test and a second test that are used to test the application, wherein each test in the plurality of tests has a respective test name, a plurality of test results, the plurality of test results including a first test result, which includes a first file name of the first file, which was updated by the application after a first update was applied to the application, a first test name of the first test, and a first test metric based on the first test, and a correlation matrix, which associates the first file name and the first test name with a first correlation between the first file and the first test based on the first test metric; and a processor, wherein the processor: receives a second update to the application, wherein the second update includes a first test profile including a first plurality of test names designated as test failure candidates; detects the first test profile; detects a second file name of the second file, which is updated by the application after the second update is applied to the application; detects, by querying the correlation matrix with the second file name, a second correlation between the second file and the second test; builds a first test plan based on at least the second correlation and the first test profile, wherein the first test plan includes an ordered list of a second plurality of test names including the second test name and the first plurality of test names, and wherein the second test name and the first plurality of test names are respectively ordered based on at least a plurality of correlations from the correlation matrix including the second correlation; runs the first test plan based on the ordered list; detects a first failure of the second test; generates a second test result, which includes the second file name, the second test name, and a second test metric based on the second test; and updates, in the correlation matrix, the second correlation between the second file and the second test, based on the second test metric. 12. The system of claim 11 , wherein the first test plan is stopped after the first failure of the second test. 13. The system of claim 11 , wherein the processor generates a preliminary test result after the first failure of the second test and continues to run the first test plan after the first failure of the second test. 14. The system of claim 11 , wherein updating the correlation matrix includes storing the second test result in the correlation matrix. 15. The system of claim 11 , wherein, after receiving the second update, the processor: detects the first file name of first file, which is updated by

Assignees

Inventors

Classifications

  • Test management · CPC title

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

  • for test results analysis · CPC title

  • Physics · mapped topic

  • Environments for analysis, debugging or testing of software · 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 US9870314B1 cover?
The present disclosure provides new and innovative methods and systems for ordering tests in an application update environment. For example, an update to an application may be received. A file name of a file affected by the update may be detected. A correlation matrix, which associates file names and the test names with correlations based on test metrics, may be queried with the file name to re…
Who is the assignee on this patent?
Red Hat Inc
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 Tue Jan 16 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).