ML-Based Test Template Selection and Filling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current automated software testing tools are inefficient and prone to errors when dealing with complex calculations and navigation across multiple screens, requiring extensive subject matter expert involvement and manual template selection and filling, which leads to mistakes and false positives, and are performance-intensive for desktop applications.

Innovation Solution

A system and method that uses machine learning and natural language processing to automatically select and fill testing templates by interpreting test scenarios, eliminating the need for knowledge of business processes or testing tools, and accommodating changes in template versions by comparing new and old versions for updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If traditional automated testing tools are used for complex calculations and multi-screen navigation, then automation coverage is achieved, but accuracy and reliability deteriorate due to errors and false positives

Engineering Contradiction:
Improveautomation coverageVSAvoidtesting accuracy
Core Design Contradiction:
Extent of automationVSReliability

Solution Approach 1:

The patent introduces subject matter experts (SMEs) as intermediaries who manually select appropriate test templates based on their knowledge of business processes and application behavior. This intermediary step bridges the gap between automated testing tools and reliable test execution, allowing automation to cover complex scenarios while maintaining accuracy through human expertise in template selection.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system enables SMEs to independently select and configure test templates without requiring deep knowledge of testing tool internals. The template library and selection interface allow SMEs to self-service the template selection process, reducing errors while maintaining automation benefits.

Inventive Principle:
Principle #25Self-service

2Reliability

If subject matter experts manually select and fill test templates, then testing accuracy improves, but productivity and efficiency deteriorate due to time-consuming manual processes

Engineering Contradiction:
Improvetesting accuracyVSAvoidtesting efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Test templates are pre-configured with appropriate fields, data types, and validation rules based on common business processes and application patterns. This preliminary preparation allows SMEs to quickly select and populate templates without performing complex configuration tasks, maintaining accuracy while significantly reducing the time required for test setup.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system provides reusable test templates that can be copied and adapted for similar testing scenarios. Once a template is created and validated, it can be reused across multiple test cases, eliminating the need to manually create templates from scratch each time and大幅提高 testing efficiency.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If SMEs learn to adjust processes for new template versions, then adaptability improves, but ease of operation deteriorates due to continuous learning requirements

Engineering Contradiction:
Improvetemplate version adaptabilityVSAvoidoperational simplicity
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The system provides feedback mechanisms that notify SMEs of template version changes and guide them through necessary adjustments. The interface highlights modified fields and provides contextual help, allowing SMEs to adapt to new versions without requiring comprehensive retraining, thus maintaining ease of operation while ensuring adaptability to updates.

Inventive Principle:
Principle #23Feedback

4Extent of automation

If desktop applications are tested using traditional automation tools, then testing capability is achieved, but system performance deteriorates due to CPU and memory intensity

Engineering Contradiction:
Improvetesting capabilityVSAvoidsystem performance
Core Design Contradiction:
Extent of automationVSUse of energy by moving object

Solution Approach 1:

The testing system is segmented into separate components: template selection, test execution, and result analysis. The template selection and configuration occur separately from the actual application execution, allowing the testing framework to be lightweight and not compete heavily for resources during the critical application testing phase, thus maintaining automation capability while reducing performance impact.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP3958130B1Intelligent software testing
Publication Date: 2023.08.30 ACCENTURE GLOBAL SOLUTIONS LTD
  • EP3958130B1 patent drawingFigure 1
  • EP3958130B1 patent drawingFigure 2
  • EP3958130B1 patent drawingFigure 3

AI summary

A system and method that improves the efficiency and accuracy of template selection process by applying machine learning to perform natural language processing (NLP) to automatically interpret the intent of the test scenarios and to match the intent of the test scenarios to appropriate test template(s). The system and method can use keyphrases and part-of-speech (POS) tokens to accurately capture the intent of test scenarios and templates. The system and method can additionally use machine learning to perform NLP to identify information from the test scenario(s) that relates to fields in templates to automatically fill in fields in the selected test template(s). In situations where the processing of the test scenario(s) does not provide all of the information necessary to fill every field of a template, the system and method can use machine learning to perform NLP to automatically create and execute a search statement to find the missing information related to empty fields in an application database.