Production Transaction Replay for Automated Software Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Testing computing systems, particularly for performance, regression, and security, is labor-intensive and time-consuming due to the complexity of developing and maintaining test scripts that provide adequate code coverage.

Innovation Solution

A system captures transactions from a production computing system to generate test scripts that simulate actual user behavior and code coverage, allowing for automated testing by mirroring the production environment in a test environment, thereby simplifying and streamlining the testing process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual test scripts are developed to provide adequate code coverage, then testing reliability is improved, but labor intensity and time consumption increase

Engineering Contradiction:
Improvetesting reliabilityVSAvoidtime consumption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent captures actual production transactions and replays them in the test environment, copying real user behavior patterns instead of manually creating test scripts. This automatically provides comprehensive code coverage while eliminating manual script development time.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system automatically generates test scripts by capturing and replaying production transactions without requiring manual intervention. The transaction capture and replay mechanism serves itself to create comprehensive test coverage, reducing both labor and time requirements.

Inventive Principle:
Principle #25Self-service

2Reliability

If manual test scripts are developed to provide adequate code coverage, then testing reliability is improved, but labor intensity increases

Engineering Contradiction:
Improvetesting reliabilityVSAvoidlabor intensity
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The system copies actual production transactions to create test scripts, eliminating the need for manual script development. This automated copying process maintains comprehensive code coverage while removing human labor from the script creation process.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The transaction capture and replay system automatically generates and maintains test scripts without human intervention, making the system self-sufficient for creating comprehensive test coverage and eliminating manual labor.

Inventive Principle:
Principle #25Self-service

3Reliability

If test scripts are maintained throughout their life cycle, then testing reliability is improved, but maintenance effort increases

Engineering Contradiction:
Improvetesting reliabilityVSAvoidmaintenance effort
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of maintaining static test scripts, the system continuously copies fresh transactions from production, automatically updating the test data source. This eliminates the complexity of maintaining manually created test scripts while preserving reliability through real production behavior.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The test script generation is made dynamic and adaptive, automatically updating based on new production transactions rather than remaining static. This dynamic approach reduces maintenance effort by self-updating while maintaining reliability through continuous alignment with actual production behavior.

Inventive Principle:
Principle #15Dynamics

4Manufacturing precision

If production-level code coverage is achieved, then testing quality is improved, but test script complexity increases

Engineering Contradiction:
Improvecode coverageVSAvoidtest script complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The system achieves comprehensive code coverage by copying actual production transactions that naturally exercise all code paths. This eliminates the complexity of designing complex test scripts manually, as the copied transactions inherently provide complete coverage.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10997063B1System testing from production transactions
Publication Date: 2021.05.04 WELLS FARGO BANK NA
  • US10997063B1 patent drawing
  • US10997063B1 patent drawing
  • US10997063B1 patent drawing

AI summary

Generating, from transactions performed at a production computing system, information that can be used to effectively test new, updated, and/or modified source code to be deployed within the production computing system. In one example, this disclosure describes a method that includes communicating with a production processing system to determine an initial state of the production processing system; capturing information about a plurality of transactions executing across a plurality of application servers included within the production processing system; communicating with a test processing system to deploy source code within the test processing system that is not included in the production processing system; generating a replay test script; and communicating with the test processing system to enable the test processing system to execute the replay test script.