Automated Test Case Generation from Product Specifications

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software testing methods require significant manual effort and are laborious, especially for GUI-based applications, as they depend on GUI object maps and test data creation, leading to inefficiencies and increased costs due to the need for frequent updates with minor changes in product specifications.

Innovation Solution

A system and method using machine learning models and natural language processing to generate and execute automated test cases and test data from product specifications, allowing for tracking changes and reducing manual intervention, enabling testing before software completion and improving documentation and reporting.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual test procedures are written by QA engineers using GUI object maps, then testing can be performed on software applications, but the process requires significant manual effort and time, and test procedures must be updated for every minor change in product specification

Engineering Contradiction:
Improvesoftware quality assuranceVSAvoidtime for writing and updating test procedures
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent replaces the manual mechanical process of writing test procedures with an automated machine learning-based system. The ML model automatically generates test procedures from product specifications, eliminating the need for manual coding by QA engineers and reducing the time required to create and update tests.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The system enables self-service testing by allowing the machine learning model to autonomously generate and update test procedures based on product specifications without requiring continuous manual intervention. The system tracks changes in specifications and automatically regenerates relevant test cases, making the testing process self-sustaining.

Inventive Principle:
Principle #25Self-service

2Productivity

If test procedures are written after software application with GUI exists, then automated testing can be performed, but the QA team must wait for the development team to build the GUI before writing automated tests

Engineering Contradiction:
Improvetesting efficiencyVSAvoidwaiting time for GUI development
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent enables preliminary generation of test procedures from product specifications before the actual software application or GUI is built. The machine learning model can create test cases based on specification documents alone, allowing QA teams to prepare testing frameworks in advance and reduce waiting time for development completion.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If test data is manually created for software applications with GUI, then comprehensive testing can be performed, but the process is laborious and error-prone, and minor changes in product specification lead to major changes in test data requirements

Engineering Contradiction:
Improvetesting comprehensivenessVSAvoidcomplexity of maintaining test data
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent replaces manual test data creation with automated machine learning-based generation. The system automatically generates appropriate test data based on product specifications and tracks changes in specifications to update test data accordingly, eliminating manual effort and reducing errors while maintaining comprehensive testing coverage.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

4Loss of information

If QA engineers maintain documentation of test procedures and results manually, then testing can be documented and tracked, but the time required for documentation limits the amount of testing that can be performed

Engineering Contradiction:
Improvetest documentation completenessVSAvoidamount of testing performed
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent replaces manual documentation maintenance with automated machine learning-based documentation. The system automatically generates and updates test procedure documentation and result tracking based on product specifications and test execution, eliminating the time QA engineers would spend on manual documentation and enabling more extensive testing.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS11720478B2System and method for automated generation of test cases and test data for validating a software application
Publication Date: 2023.08.08 KUMAR RAJAT
  • US11720478B2 patent drawing
  • US11720478B2 patent drawing
  • US11720478B2 patent drawing

AI summary

A system and method for automated validation testing of software applications during software development and after development stages of the product life lifecycle. The disclosed system uses pre-trained machine learning models and image recognition algorithms to generate test cases and test data from text and images in product specification documents of the software applications.