Incremental Test Suite Update via Runtime Execution Capture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In the cloud computing and SaaS/PaaS models, ensuring software quality is challenging due to the lack of transparency and high costs associated with achieving comprehensive test coverage, leading to distrust among customers and software vendors, especially for small ISVs.

Innovation Solution

A method and system that capture real-time execution scenarios of applications, determine scenario variables, generate new test cases based on code templates, and update test suites to enhance quality testing, thereby increasing test coverage and transparency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If comprehensive software testing is conducted to achieve high test coverage, then software quality is improved, but the cost and time investment increases substantially

Engineering Contradiction:
Improvesoftware qualityVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by capturing execution scenarios and generating test cases during the development phase before deployment. Test cases are pre-generated based on static analysis and initial execution data, allowing the test suite to be prepared in advance rather than requiring extensive testing after deployment.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system enables self-service by automatically capturing execution scenarios from real-time applications, generating test cases autonomously, and incrementally updating test suites without requiring manual intervention. The testing system serves itself by using its own execution data to generate additional test cases, creating a self-improving testing mechanism.

Inventive Principle:
Principle #25Self-service

2Reliability

If comprehensive software testing is conducted to achieve high test coverage, then software quality is improved, but the cost increases substantially

Engineering Contradiction:
Improvesoftware qualityVSAvoidtesting cost
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system applies partial action by focusing testing efforts on the most critical and frequently executed code paths first. Rather than attempting to test every possible scenario equally, it prioritizes high-impact areas based on execution frequency and business importance, achieving adequate coverage with reduced cost.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system changes parameters by dynamically adjusting test case selection and execution based on observed execution patterns. It modifies testing depth and breadth according to actual usage data, focusing resources on parameter combinations that occur in practice rather than exhaustively testing all theoretical possibilities.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If real-time execution data is captured and used to generate test cases, then test coverage is improved, but the complexity of the testing system increases

Engineering Contradiction:
Improvetest coverageVSAvoidtesting system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system introduces an intermediary component that acts as a bridge between the application under test and the test case generation mechanism. This intermediary captures execution scenarios, processes them through pattern matching and template selection, and generates test cases automatically, simplifying the overall system architecture by centralizing the complex logic in a dedicated module.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If incremental updates to test suites are performed based on real-time executions, then test coverage is improved continuously, but the time required for maintenance increases

Engineering Contradiction:
Improvetest coverageVSAvoidmaintenance time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system implements periodic action by scheduling incremental test suite updates at regular intervals or triggered by specific events such as deployment cycles or milestone achievements. Rather than continuously updating tests in real-time, it accumulates execution data and performs batch updates periodically, reducing maintenance overhead while still improving coverage over time.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS10031841B2Method and system for incrementally updating a test suite utilizing run-time application executions
Publication Date: 2018.07.24 SAP SE
  • US10031841B2 patent drawing
  • US10031841B2 patent drawing
  • US10031841B2 patent drawing

AI summary

The method includes capturing an execution scenario associated with a real-time execution of an application, determining at least one scenario variable based on the execution scenario, generating a test case based on a code template, the execution scenario and the at least one scenario variable, and updating a test suite using the test case, the test suite configured to define a quality test of the application.