Identifying semantic differences between source code versions
US-2016062765-A1 · Mar 3, 2016 · US
US9870314B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9870314-B1 |
| Application number | US-201615376097-A |
| Country | US |
| Kind code | B1 |
| Filing date | Dec 12, 2016 |
| Priority date | Dec 12, 2016 |
| Publication date | Jan 16, 2018 |
| Grant date | Jan 16, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
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.
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
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
Related publications grouped by family.
Answers are generated from the same data shown on this page.