Test Optimization for UI Workflows via Input Combination Selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software testing methods are inadequate for intensive workflows due to the impracticality of fully exhaustive testing, as they fail to consider the large number of possible input combinations and are not applicable to new products or functional testing phases, leading to numerous errors.

Innovation Solution

A test optimization system that determines optimal input combinations through a combination of a target program analyzer, grouping engine, and optimal input combination selector, using approaches like linked and unlinked gear methods to select a subset of input combinations that are representative of all program features, thereby enabling feature exhaustive testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If fully exhaustive testing is conducted to cover all possible input combinations, then testing completeness is improved, but testing time and resource requirements become impractically large

Engineering Contradiction:
Improvetesting completenessVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies partial action by selecting a representative subset of input combinations rather than testing all possible combinations. The system identifies and tests only those combinations that are most likely to reveal defects, based on historical data and risk analysis, thereby achieving sufficient testing coverage without the prohibitive time cost of exhaustive testing.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent changes the parameter of test selection from uniform random selection to risk-based prioritized selection. By adjusting the selection criteria to incorporate historical defect data and risk metrics, the system transforms the testing approach to focus on high-risk areas, improving testing effectiveness while reducing overall test volume.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If risk-based testing strategies using historical data are employed, then testing efficiency is improved, but applicability to new products without historical data is reduced

Engineering Contradiction:
Improvetesting efficiencyVSAvoidapplicability to new products
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent applies preliminary action by establishing a framework that prepares for both historical data-driven testing and new product testing in advance. The system is designed to automatically adapt its data sources based on availability, having pre-configured multiple data acquisition strategies that can be activated depending on whether historical data exists or the product is new.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements universality by creating a testing system that can operate effectively in multiple scenarios: products with historical data, new products without historical data, and products with limited data. The system universally applies risk-based testing principles while flexibly sourcing input from available data repositories, making it adaptable across different product lifecycles and organizations.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Measurement precision

If component or API level priority testing is applied, then unit test effectiveness is improved, but scalability to larger test cases is reduced

Engineering Contradiction:
Improveunit test effectivenessVSAvoidtest case scalability
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent merges component-level testing with system-level testing by integrating the priority assignment mechanisms at multiple levels. The system combines fine-grained component priority assessment with coarse-grained system workflow priority, creating a unified testing approach that maintains precision at the unit level while scaling to comprehensive system testing through hierarchical aggregation.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS7979845B2Test effort optimization for UI intensive workflows
Publication Date: 2011.07.12 CISCO TECHNOLOGY INC
  • US7979845B2 patent drawing
  • US7979845B2 patent drawing
  • US7979845B2 patent drawing

AI summary

A system and method provide for determining optimal input combinations useable in testing program code that includes user interface intensive workflows. Various embodiments provides for determining an input set corresponding to the target program code, determining mutually exclusive feature groups corresponding to the input set and determining a set of optimal input combinations corresponding to the feature groups. A more specific embodiment provides for determining the set of optimal input combinations in accordance with a linked or unlinked gear approach.