Model-Based Test Template Generation with User Constraint Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software testing methods rely heavily on fully automated or manual test case generation, which can lead to fragile, error-prone, and impractical approaches due to hard-coded test values, making it difficult to adapt to software changes and ensuring data consistency between test flows and test data.

Innovation Solution

A computer-implemented method for generating verified software application tests using a model-based approach that automatically generates test templates with data input fields and constraints, allowing user input validation and adjustment to meet these constraints, thereby ensuring consistent and reliable test data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If fully automated test case generation is used, then productivity is improved, but reliability deteriorates due to hard-coded test values and data inconsistency

Engineering Contradiction:
Improvetest case generation efficiencyVSAvoidtest data consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments test data into two distinct components: test flows (test logic and structure) and test data values (concrete data). This segmentation allows automated generation of test flows while enabling separate manual or automated provision of test data values, thereby maintaining data consistency without sacrificing automation benefits.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces test data models as an intermediary layer between test flows and actual test data values. These models define constraints and validation rules that ensure data consistency, acting as a mediator that reconciles automated test generation with reliable data provision.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If manual test case generation is used, then reliability is improved through user control, but productivity deteriorates due to manual effort

Engineering Contradiction:
Improvetest data consistencyVSAvoidtest case generation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial automation where test flows are generated automatically but test data values can be provided manually or semi-automatically. This partial action approach maintains user control over critical data aspects while automating repetitive test flow generation, balancing reliability and productivity.

Inventive Principle:
Principle #16Partial or excessive action

3Ease of operation

If hard-coded test values are used, then ease of operation is improved, but adaptability deteriorates when software changes

Engineering Contradiction:
Improvetest execution simplicityVSAvoidsoftware change adaptation
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent transforms static hard-coded test values into dynamic test data values that can be independently modified through test data models. This dynamic approach allows test data to be updated without changing test flow code, enabling easy adaptation to software changes while maintaining operational simplicity.

Inventive Principle:
Principle #15Dynamics

4Adaptability or versatility

If test code rewriting is required for software changes, then adaptability is improved, but loss of time increases

Engineering Contradiction:
Improvesoftware change adaptationVSAvoidtest maintenance time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent extracts test data values from test flow code into separate test data models. This extraction eliminates the need to rewrite test code when software changes occur, as only the independent test data values need to be updated, significantly reducing maintenance time while preserving adaptability.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10942841B2User assisted automated test case generation
Publication Date: 2021.03.09 CONFORMIQ HOLDING LLC
  • US10942841B2 patent drawing
  • US10942841B2 patent drawing
  • US10942841B2 patent drawing

AI summary

There is provided a computer-implemented method for generating verified software application tests, the method comprising: acquiring a computer readable model representing a functionality of a software application to be tested; generating, based at least partly on the model, a test template for generating a plurality of verified software application tests, the test template comprising a plurality of data input fields for data values and defining data value constraints for the data values; obtaining user data input regarding a data input field; determining whether said user data input defines a data value of the data input field according to the data value constraints; in response to determining that said user data input does not define a data value according to the data value constraints, adjusting one or more data values of the test template such that said data value constraints are met; and generating, based on the test template, at least one software application test meeting the data value constraints.