Dynamic Mocking Service for API Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional mocking services in cloud platforms generate only static responses based on API specifications, limiting their ability to simulate dynamic behavior and respond to requests as a fully implemented API would, which restricts their usability for developers testing and validating APIs before full implementation.

Innovation Solution

A mocking service that receives behavior parameters with requests for API resources, allowing it to generate dynamic responses, including delayed responses, error rates, error codes, validations, and random data, thereby simulating a full implementation of the API and enabling more realistic testing scenarios.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If mocking services generate only static responses based on API specifications, then the service implementation is simple and easy to maintain, but the ability to simulate dynamic behavior and respond to requests as a fully implemented API would is limited

Engineering Contradiction:
Improveability to simulate dynamic behaviorVSAvoidmocking service complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The mocking service transitions from static response generation to dynamic response generation by accepting behavior parameters (such as delay, error rate, random data) that modify the response characteristics based on request conditions. This allows the mock service to adapt its behavior dynamically while maintaining a relatively simple implementation structure.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces behavior parameters that can be passed to the mocking service to change its response characteristics. These parameters (delay, error rate, random data generation) allow the service to simulate different API behaviors without requiring complex implementation logic, resolving the contradiction between adaptability and complexity.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If mocking services use only behaviors encoded in API specification, then the service structure remains simple, but the simulation accuracy compared to full API implementation is reduced

Engineering Contradiction:
ImproveAPI simulation accuracyVSAvoidservice configuration complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Behavior parameters act as an intermediary between the API specification and the mocking service implementation. These parameters enable the service to achieve higher simulation accuracy by allowing developers to configure specific behavioral characteristics (delays, errors, random data) that bridge the gap between static specifications and dynamic API behavior.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If mocking services generate dynamic responses with behavior parameters, then the testing and validation capability is enhanced, but the service complexity and configuration requirements increase

Engineering Contradiction:
Improvetesting and validation efficiencyVSAvoidservice configuration ease
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The mocking service implements dynamic behavior through optional behavior parameters that can be selectively applied. Developers can use simple static responses when sufficient or add specific behavior parameters (delay, error rate, random data) as needed, rather than requiring full dynamic configuration for all scenarios. This partial action approach enhances testing capability while maintaining operational simplicity for basic use cases.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11030085B2User defined mocking service behavior
Publication Date: 2021.06.08 SALESFORCE INC
  • US11030085B2 patent drawing
  • US11030085B2 patent drawing
  • US11030085B2 patent drawing

AI summary

A mocking service allows a mocking instance of an API specification to receive behavior parameters with requests for resources of the API specification. The mocking service may digest these parameters and generate a response according to the parameters and using the instance of the API specification. The dynamic responses allow a service to be configured for interacting with an API corresponding to the API specification and for interacting with different response scenarios of the API. The parameters may define response behaviors such as a fixed time until a response is received, a variable time until a response is received, error rate, error codes, validations, etc. In some cases, based on a behavior parameter indicating a request for random data for a requested resource, the mock implementation of the API may generate and return random data according to variables defined in the API specification.