Reinforcement Learning Mobile Test Sequence Generation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional monkey testing for mobile applications is inefficient due to randomness, often repeating the same sequences and missing other meaningful action sequences, lacking the intelligence of human testing.
Innovation Solution
A method using reinforcement learning to generate test sequences by training a recurrent neural network (RNN) model to encode action frequencies and prioritize meaningful sequences, leveraging ε-greedy policy and Q-value updates to systematically explore and discover target screens in mobile apps.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional monkey testing is used to generate test sequences, then test coverage can be achieved through random exploration, but the same sequences are explored many times and meaningful action sequences are missed due to randomness
Solution Approach 1:
The patent implements feedback mechanisms where the system learns from previously executed test sequences. The reinforcement learning model receives feedback in the form of rewards or penalties based on the quality and effectiveness of generated sequences, allowing the system to iteratively improve its sequence generation strategy and avoid repeating ineffective patterns.
Solution Approach 2:
The system dynamically changes parameters of the test sequence generation process by using learned probability distributions and policies. Instead of fixed random selection, the parameters of sequence generation are adapted based on learned patterns from human behavior data, transforming the generation process from static randomness to dynamic, intelligence-driven selection.
2Device complexity
If random monkey testing is performed, then simple implementation is achieved, but the testing lacks human intelligence and cannot effectively simulate meaningful user behavior
Solution Approach 1:
The patent replaces the mechanical random selection mechanism with an intelligent reinforcement learning system. Instead of using simple random number generators, the system employs neural networks and reinforcement learning algorithms that can learn and simulate human decision-making patterns, substituting mechanical randomness with cognitive intelligence.
Solution Approach 2:
The system copies and learns from actual human user behavior patterns by training on datasets of real user interactions. It creates virtual models of human testing behavior that replicate meaningful action sequences, allowing the automated system to mimic human intelligence without requiring actual human operators.
3Reliability
If more test sequences are generated to improve coverage, then more crashes may be found, but the same sequences are repeatedly explored wasting time
Solution Approach 1:
The system performs preliminary learning by analyzing human behavior patterns and pre-computing probability distributions for action sequences before actual testing begins. This preliminary action allows the system to anticipate which sequences are likely to be meaningful and prioritize them, avoiding time-wasting random exploration during the actual testing phase.
Solution Approach 2:
The test sequence generation is made dynamic through reinforcement learning that continuously adapts the generation strategy based on feedback from executed sequences. The system dynamically adjusts which sequences to generate next based on what has been learned, making the testing process flexible and responsive rather than static and repetitive.
Data Source
AI summary
A test sequence generation method, system, and computer program product, include creating an ε-greedy policy from a recurrent neural network (RNN) model to prioritize an action from an action sequence.


