Hybrid Testing Automation Engine Object Learning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing test automation frameworks face challenges in efficiently learning and maintaining object properties, especially with dynamic objects, and require significant manual effort due to hardcoded identification means, leading to high maintenance costs and errors in agile development environments.
Innovation Solution
A hybrid testing automation framework with an object learning module that automatically identifies and updates object properties, a test data manager for hierarchical data organization, and a scripting module with pre-built libraries to reduce manual intervention and increase reusability, enabling auto-recalibration and efficient test execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional test automation frameworks use hardcoded identification means for objects, then the testing process can be executed, but the maintenance effort and time increase significantly when application changes occur
Solution Approach 1:
The framework transitions from static hardcoded identification means to dynamic object learning capabilities. The system automatically learns and updates object properties, identification means, and relationships by interacting with the application under test, allowing the test automation to adapt to application changes without manual intervention.
Solution Approach 2:
The test automation framework performs self-updating of object repositories and identification means through automated object learning. The system serves itself by automatically detecting changes in the application and updating its internal object models without requiring manual maintenance from testers.
2Adaptability or versatility
If manual testing is performed, then flexibility and adaptability to changes are maintained, but laborious repeated tasks increase human intervention and effort
Solution Approach 1:
The framework automatically learns object properties and updates its internal models through self-service mechanisms, eliminating the need for manual updates while maintaining adaptability to application changes.
Solution Approach 2:
The system incorporates feedback loops where test execution results and object interactions are automatically analyzed to update the object repository and identification means, enabling continuous adaptation without manual intervention.
3Productivity
If record and playback approach is used, then quick test creation is achieved, but maintainability and long-term adaptability deteriorate
Solution Approach 1:
The framework moves beyond static record-and-playback to dynamic object learning where the system continuously adapts its object models based on actual application interactions, maintaining both quick test creation and long-term maintainability.
Solution Approach 2:
The system performs preliminary object learning and relationship establishment automatically before test execution, preparing the object repository in advance so that tests can be created quickly without sacrificing maintainability.
4Reliability
If comprehensive object identification means are stored for each element, then test execution reliability improves, but the complexity of managing multiple identification means increases
Solution Approach 1:
The framework creates a universal object model that can be identified through multiple means (properties, relationships, hierarchical paths), where a single object representation serves multiple identification purposes, reducing the need for separate management of each identification method.
Solution Approach 2:
The system introduces an intermediary object learning layer that manages the complexity of multiple identification means by automatically selecting and coordinating different identification strategies, shielding the user from the underlying complexity while maintaining high reliability.
Data Source
AI summary
A hybrid testing automation engine tests a main application using a client browser and includes an object learning module to parse code describing a web page destined to be rendered by the client browser to identify predetermined types of page elements and associate therewith a respective plurality of identification means to locate such elements and store such data in an object repository. A test data manager module manages test data in a hierarchy including a global level, a scenario level, and a step level and store such data in a test data repository. A scripting module facilitates script generation but also includes the capability of recording steps (actions) for playback during testing. A test execution module executes a test scenario including the playback of recorded steps and/or execution of scripts with reference to the object repository and the test data repository.


