State Machine Model for Automated Test Script Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Manual creation of test scripts for software testing is time-consuming and costly, often leading to insufficiently tested software being released to market, due to the resource-intensive nature of this process.

Innovation Solution

A method for automatically generating test scripts by modeling graphical user interface (GUI) objects on a webpage using a state machine approach, where GUI objects are grouped into 'Smart Tags' and a 'blueprint' of the website is created, allowing for the generation of test scripts with reduced human involvement through the Smart Tag Workbench and Appvance AIQ, leveraging user logs and scanning options to optimize state machine complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If test scripts are manually created, then testing thoroughness can be maintained, but time consumption and cost increase significantly

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

Solution Approach 1:

The system enables self-service automated test script generation by allowing the application under test to generate its own test scripts through the state machine model and blueprint, eliminating the need for manual creation while maintaining comprehensive test coverage

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary actions by pre-building the state machine model and blueprint representations of the application before test execution, enabling rapid generation of test scripts without time-consuming manual analysis during the testing phase

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the state machine model includes all GUI objects, then testing coverage is complete, but model complexity increases

Engineering Contradiction:
Improvetesting coverageVSAvoidmodel complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the application model into hierarchical components: Smart Tags representing GUI object groups, blueprints representing application structure, and state machines representing execution flows. This segmentation allows comprehensive coverage while managing complexity through modular organization

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The blueprint serves as an intermediary layer between the detailed Smart Tag models and the state machine execution model, abstracting and organizing the complexity so that complete testing coverage can be achieved without overwhelming model complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10628630B1Method and apparatus for generating a state machine model of an application using models of GUI objects and scanning modes
Publication Date: 2020.04.21 APPVANCE
  • US10628630B1 patent drawing
  • US10628630B1 patent drawing
  • US10628630B1 patent drawing

AI summary

Models of certain groups of graphical user interface (GUI) objects (e.g., menu objects, product objects, title objects, etc.) are created. A website is then modeled as a state machine (also called a blueprint), in which states are used to model webpages of the website. Identifying characteristics of the states are specified based on the models of the GUI objects. Certain scanning options are used to reduce the complexity of the state machine and accelerate the state machine creation process, known as the “one per page” and “once per app” scanning options. After the state machine model of the website has been created, test cases are generated as traversals through the state machine. In one embodiment, user logs direct the generation of test cases so that the test cases resemble past user behavior.