10990516

Method, Apparatus, and Computer Program Product for Predictive API Test Suite Selection

PublishedApril 27, 2021
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
20 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. An apparatus for selecting a test suite for an API, the apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to: receive test patterns and heuristics; receive an input API, wherein the input API comprises a set of subroutine definitions, protocols, and tools for building a software application; parse the input API to extract API specifications; and based at least in part on the extracted API specifications, the test patterns, and the heuristics, programmatically generate a test suite based at least in part on a machine learning model, wherein programmatically generating the test suite comprises selecting one or more tests for inclusion in the test suite from a plurality of recommended tests, wherein the one or more tests are selected for inclusion in the test suite based at least in part on the one or more tests being assigned a high importance indicator, and wherein the test suite comprises one or more test routines, one or more data values, and one or more expected results.

2

2. The apparatus of claim 1 , wherein the at least one memory and the computer program code configured to, with the at least one processor, further cause the apparatus to: execute the test suite on the input API; and export test results generated by the execution of the test suite to the machine learning model.

3

3. The apparatus of claim 2 , wherein the test results generated by the execution of the test suite include one or more of API calls used during the test execution, inputs, operations, actual results, expected results, performance metrics, or test heuristics used.

4

4. The apparatus of claim 1 , wherein the at least one memory and the computer program code is configured to, with the at least one processor, further cause the apparatus to: apply the machine learning model for producing one or more hypotheses about the test suite; and in accordance with the one or more hypotheses, generate new test routines to be added to the test suite.

5

5. The apparatus of claim 1 , wherein the test patterns and heuristics comprise one or more techniques, one or more data values, and one or more approaches to use in a test suite; and wherein the test patterns and heuristics are based at least in part on one or more of a datatype, integration, step, or operation.

6

6. The apparatus of claim 1 , wherein the API specifications comprise one or more of descriptions of functional characteristics, expected functionality, design datatypes, or support datatypes of the input API.

7

7. The apparatus of claim 1 , wherein the machine learning model determines one or more of field values to use for a given operation and data type in a test, expected results given a set of request inputs, which high-value tests to execute, which datatype and operations to test, or variances in performance.

8

8. A method for selecting a test suite for an API, the method comprising: receiving test patterns and heuristics; receiving an input API, wherein the input API comprises a set of subroutine definitions, protocols, and tools for building a software application; parsing the input API to extract API specifications; and based at least in part on the extracted API specifications, the test patterns, and the heuristics, programmatically generating a test suite based at least in part on a machine learning model, wherein programmatically generating the test suite comprises selecting one or more tests for inclusion in the test suite from a plurality of recommended tests, wherein the one or more tests are selected for inclusion in the test suite based at least in part on the one or more tests being assigned a high importance indicator, and wherein the test suite comprises one or more test routines, one or more data values, and one or more expected results.

9

9. The method of claim 8 , further comprising: executing the test suite on the input API; and exporting test results generated by the execution of the test suite to the machine learning model.

10

10. The method of claim 9 , wherein the test results generated by the execution of the test suite include one or more of API calls used during the test execution, inputs, operations, actual results, expected results, performance metrics, or test heuristics used.

11

11. The method of claim 8 , further comprising: applying the machine learning model for producing one or more hypotheses about the test suite; and in accordance with the one or more hypotheses, generating new test routines to be added to the test suite.

12

12. The method of claim 8 , wherein the test patterns and heuristics comprise one or more techniques, one or more data values, and one or more approaches to use in a test suite; and wherein the test patterns and heuristics are based at least in part on one or more of a datatype, integration, step, or operation.

13

13. The method of claim 8 , wherein the API specifications comprise one or more of descriptions of functional characteristics, expected functionality, design datatypes, or support datatypes of the input API.

14

14. The method of claim 8 , wherein the machine learning model determines one or more of field values to use for a given operation and data type in a test, expected results given a set of request inputs, which high-value tests to execute, which datatype and operations to test, or variances in performance.

15

15. A computer program product for selecting a test suite for an API, the computer program product comprising at least one computer readable non-transitory memory medium having program code instructions stored thereon, the program code instructions which when executed by an apparatus causes the apparatus at least to: receive test patterns and heuristics; receive an input API, wherein the input API comprises a set of subroutine definitions, protocols, and tools for building a software application; parse the input API to extract API specifications; and based at least in part on the extracted API specifications, the test patterns, and the heuristics, programmatically generate a test suite based at least in part on a machine learning model, wherein programmatically generating the test suite comprises selecting one or more tests for inclusion in the test suite from a plurality of recommended tests, wherein the one or more tests are selected for inclusion in the test suite based at least in part on the one or more tests being assigned a high importance indicator, and wherein the test suite comprises one or more test routines, one or more data values, and one or more expected results.

16

16. The computer program product of claim 15 , wherein the program code instructions which when executed by the apparatus, further cause the apparatus to: execute the test suite on the input API; and export test results generated by the execution of the test suite to the machine learning model.

17

17. The computer program product of claim 16 , wherein the test results generated by the execution of the test suite include one or more of API calls used during the test execution, inputs, operations, actual results, expected results, performance metrics, or test heuristics used.

18

18. The computer program product of claim 15 , wherein the program code instructions which when executed by the apparatus, further cause the apparatus to: apply the machine learning model for producing one or more hypotheses about the test suite; and in accordance with the one or more hypotheses, generate new test routines to be added to the test suite.

19

19. The computer program product of claim 15 , wherein the test patterns and heuristics comprise one or more techniques, one or more data values, and one or more approaches to use in a test suite; and wherein the test patterns and heuristics are based at least in part on one or more of a datatype, integration, step, or operation.

20

20. The computer program product of claim 15 , wherein the API specifications comprise one or more of descriptions of functional characteristics, expected functionality, design datatypes, or support datatypes of the input API.

Patent Metadata

Filing Date

Unknown

Publication Date

April 27, 2021

Inventors

Gordon Merritt

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “METHOD, APPARATUS, AND COMPUTER PROGRAM PRODUCT FOR PREDICTIVE API TEST SUITE SELECTION” (10990516). https://patentable.app/patents/10990516

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.