Model-Based Software Testing Automation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current software application testing methods are inefficient due to significant manual intervention, reliance on imperfect replicas, and separation of test case generation and execution, leading to increased time and complexity.
Innovation Solution
A system that generates and executes test cases based on a business process model, using computer-readable instructions to create executable scripts that link test data with application elements, allowing for automated testing directly on the software application.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Extent of automation
If manual or semi-automated testing is used, then test cases can be generated and executed, but significant manual intervention is required consuming hundreds of man-hours
Solution Approach 1:
The patent creates a model of the software application that replicates its structure and behavior. This model serves as a copy that can be used for automated test case generation, eliminating the need for manual test creation while preserving the application's testing characteristics.
Solution Approach 2:
The system performs preliminary analysis of the application model to automatically generate test cases before actual testing begins. This preliminary automated generation of test scenarios eliminates manual intervention and prepares comprehensive test suites in advance.
2Measurement precision
If test cases are applied against a model or replica of the system, then testing can be performed, but the accuracy of test results depends on the accuracy of the replica which may not be a perfect replica
Solution Approach 1:
The patent merges the model-based test generation with direct execution on the actual software application. By combining the structured approach of model-based testing with direct application testing, the system achieves accurate test results without requiring a separate perfect replica.
Solution Approach 2:
The patent uses an intermediary mapping mechanism that connects test cases generated from the model to the actual software application elements. This intermediary layer ensures that tests are executed on the real application while maintaining the structured benefits of model-based generation, thereby ensuring test result accuracy.
3Productivity
If test case generation and execution are implemented by different programs or entities, then testing can be performed, but the time required for and complexity involved with testing increases
Solution Approach 1:
The patent combines test case generation and execution into a single integrated system. The same software that generates test cases from the application model also executes them directly on the application, eliminating the need for separate tools and reducing system complexity while maintaining high productivity.
Data Source
AI summary
A method of testing a software application may include receiving a business process model of a software application, the business process model comprising representations of elements of the software application and labels for the elements of the software application. The method may further include generating a plurality of test cases according to the business process model, each test case comprising respective links between one or items of test data and the labels for the elements of the software application, and executing the test cases to test the software application. The method may further include prioritizing and generating pre-conditions for test cases. The method may be embodied in an article of manufacture, such as a non-transitory computer-readable medium storing instructions.


