CURLEXEC REST API Parser for Test Automation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for testing REST API requests require extensive manual coding and knowledge of codebases, making it inefficient and unsustainable for large-scale automation, especially in cloud services like Oracle Autonomous Database, where thousands of test cases need to be validated with complex data analysis.
Innovation Solution
A near-zero-code REST API parser, named CURLEXEC, implemented in Perl, allows for effortless automation of REST API requests and responses using a simplified test case format that requires only seven lines of code, eliminating the need for extra subroutines and codebase knowledge, and supports automatic verification logic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional manual coding methods are used for REST API testing, then test case validation accuracy is maintained, but coding complexity and time consumption increase significantly
Solution Approach 1:
The patent introduces CURLEXEC as an intermediary tool that translates high-level test case definitions into executable REST API test scripts. Users define test cases in a simplified format, and CURLEXEC automatically generates the complex cURL commands and validation logic, eliminating the need for users to write complex code manually while maintaining validation accuracy
Solution Approach 2:
The patent replaces manual mechanical coding processes with an automated parsing and generation system. Instead of manually writing and executing complex test scripts, users provide test case definitions in a user-friendly format, and the system automatically handles the code generation, execution, and validation processes
2Ease of operation
If extensive codebase knowledge is required for testing, then test accuracy is maintained, but ease of operation decreases
Solution Approach 1:
The patent implements a self-service approach where CURLEXEC automatically handles code generation, request execution, and response validation without requiring users to have knowledge of the underlying codebase. The system serves itself by interpreting user-friendly test case definitions and automatically generating the necessary technical implementations, eliminating the need for users to learn complex coding concepts while maintaining reliable validation through automated logic
3Productivity
If manual testing methods are used, then test case validation is thorough, but time consumption increases for large-scale automation
Solution Approach 1:
The patent applies preliminary action by pre-defining test case templates and validation logic in a standardized format. Users can create test cases quickly by filling in parameters rather than writing complete test scripts from scratch. The system also pre-configures automated execution and validation mechanisms, so once test cases are defined, they can be executed and validated automatically without time-consuming manual intervention
Solution Approach 2:
The patent replaces manual time-consuming testing processes with automated mechanical execution. CURLEXEC automatically generates, executes, and validates test cases at scale, replacing the need for manual test execution. The system handles large numbers of test cases efficiently through automated parallel execution and structured validation, dramatically reducing the time required for large-scale automation while maintaining thoroughness
Data Source
AI summary
Systems, methods, and other embodiments associated with a REST API parser for test automation are described. In one embodiment, a method for automating REST API testing includes parsing a test case to extract values for parts of a REST API request and a value for at least one validation parameter; automatically composing the REST API request at least in part from the extracted values for the parts of the REST API request; automatically submitting the REST API request for execution by an application; retrieving a value of a result of the execution of the REST API request from the application; determining that the value for the validation parameter(s) and the value of the result are a match; and generating an indication that the REST API is valid for the test case.


