Gray-box testing based on concrete usages

US11074158B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11074158-B2
Application numberUS-201715828480-A
CountryUS
Kind codeB2
Filing dateDec 1, 2017
Priority dateDec 1, 2017
Publication dateJul 27, 2021
Grant dateJul 27, 2021

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 testing an application according to usage data includes receiving an application to be tested and a set of usage data corresponding to the application to be tested, wherein the set of usage data corresponds to previously executed code sequences, identifying one or more code sequences of interest corresponding to the received application, wherein the code sequences of interest correspond to codes sequences that are configured to exercise the received application, extracting concrete usages of the code sequence of interest from the received set of usage data, generating one or more test cases for the application according to the extracted usages, and providing the one or more generated test cases. The method may additionally include testing the application according to the one or more generated test cases.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer implemented method for testing an application according to usage data, the method comprising: receiving an application to be tested and a set of usage data corresponding to the application to be tested, wherein the set of usage data is sourced from code repositories that make use of the received application; identifying one or more code sequences of interest corresponding to the received application, wherein the code sequences of interest correspond to codes sequences that are configured to exercise the received application; extracting concrete usages of the code sequence of interest from the received set of usage data, wherein the concrete usages correspond to actual usages of the one or more code sequences of interest; identifying one or more parameters corresponding to the extracted concrete usages of the code sequence of interest; generating one or more test cases for the application according to the extracted usages and the identified one or more parameters, wherein the one or more test cases test combinations of the identified parameters to determine if an application failure is caused by one or more unique combinations of parameters; and outputting the one or more generated test cases. 2. The computer implemented method of claim 1 , further comprising identifying one or more dependencies corresponding to the extracted concrete usages of the code sequence of interest. 3. The computer implemented method of claim 2 , wherein generating one or more test cases for the application according to the extracted usages includes generating test cases configured to test the application with respect to the identified one or more dependencies corresponding to the extracted concrete usages. 4. The computer implemented method of claim 1 , wherein generating one or more test cases for the application according to the extracted usages includes generating test cases configured to test the application with respect to the identified one or more parameters corresponding to the extracted concrete usages. 5. The computer implemented method of claim 1 , wherein identifying one or more code sequences of interest includes searching for invocations executed with respect to the received application. 6. The computer implemented method of claim 1 , wherein providing the one or more generated test cases includes generating a report that indicates a set of parameters or dependencies being tested by each generated test case. 7. The computer implemented method of claim 1 , further comprising executing the generated test according to the one or more generated test cases. 8. The method of claim 1 , wherein the one or more test cases test parameter value ranges corresponding to the identified one or more parameters to determine if a unique range of parameters causes an application failure. 9. The method of claim 1 , wherein the one or more test cases test dependencies among methods or endpoints according to the identified one or more parameters. 10. The method of claim 9 , wherein generating one or more test cases further includes: determining that a method or end point can have up to “n” parameters; and generating test cases to test combinations of the n parameters to determine if there is an application failure caused by one or more unique combinations. 11. A computer program product for testing an application according to usage data, the computer program product comprising: one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising instructions to: receive an application to be tested and a set of usage data corresponding to the application to be tested, wherein the set of usage data is sourced from code repositories that make use of the received application; identify one or more code sequences of interest corresponding to the received application, wherein the code sequences of interest correspond to codes sequences that are configured to exercise the received application; extract concrete usages of the code sequence of interest from the received set of usage data, wherein the concrete usages correspond to actual usages of the one or more code sequences of interest; identify one or more parameters corresponding to the extracted concrete usages of the code sequence of interest; generate one or more test cases for the application according to the extracted usages and the identified one or more parameters, wherein the one or more test cases test combinations of the identified parameters to determine if an application failure is caused by one or more unique combinations of parameters; and output the one or more generated test cases. 12. The computer program product of claim 11 , further comprising instructions to identify one or more dependencies corresponding to the extracted concrete usages of the code sequence of interest. 13. The computer program product of claim 11 , wherein generating one or more test cases for the application according to the extracted usages includes generating test cases configured to test the application with respect to the identified one or more parameters corresponding to the extracted concrete usages. 14. The computer program product of claim 11 , wherein instructions to identify one or more code sequences of interest comprise instructions to search for invocations executed with respect to the received application. 15. The computer program product of claim 11 , wherein instructions to provide the one or more generated test cases comprise instructions to generate a report that indicates a set of parameters or dependencies being tested by each generated test case. 16. A computer system for testing an application according to usage data, the computer program product comprising: one or more computer processors; one or more computer readable storage media; program instructions stored on the one or more computer readable storage media, the program instructions comprising instructions to: receive an application to be tested and a set of usage data corresponding to the application to be tested, wherein the set of usage data is sourced from code repositories that make use of the received application; identify one or more code sequences of interest corresponding to the received application, wherein the code sequences of interest correspond to codes sequences that are configured to exercise the received application; extract concrete usages of the code sequence of interest from the received set of usage data, wherein the concrete usages correspond to actual usages of the one or more code sequences of interest; identify one or more parameters corresponding to the extracted concrete usages of the code sequence of interest; generate one or more test cases for the application according to the extracted usages and the identified one or more parameters, wherein the one or more test cases test combinations of the identified parameters to determine if an application failure is caused by one or more unique combinations of parameters; and output the one or more generated test cases. 17. The computer system of claim 16 , further comprising instructions to identify one or more dependencies corresponding to the extracted concrete usages of the code sequence of interest. 18. The computer system of claim 16 , wherein generating one or more test cases for the application according to the extracted usages includes generating test cases configured to test the application with respect to the identified one or more parameters correspo

Assignees

Inventors

Classifications

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

  • Dependency analysis; Data or control flow analysis · CPC title

  • Workload generation, e.g. scripts, playback · CPC title

  • for test execution, e.g. scheduling of test suites · 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 US11074158B2 cover?
A computer implemented method for testing an application according to usage data includes receiving an application to be tested and a set of usage data corresponding to the application to be tested, wherein the set of usage data corresponds to previously executed code sequences, identifying one or more code sequences of interest corresponding to the received application, wherein the code sequen…
Who is the assignee on this patent?
IBM
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 Tue Jul 27 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).