TL;DR
This paper introduces ARES, a Deep Reinforcement Learning approach for black-box testing of Android apps, achieving higher code coverage and fault detection than existing RL-based tools by leveraging neural networks.
Contribution
The paper presents ARES, the first Deep RL-based tool for Android app testing, outperforming existing RL tools in coverage and fault detection.
Findings
ARES outperforms TimeMachine and Q-Testing in coverage and fault revelation
Deep RL is particularly effective for Android apps with chained and blocking activities
Key features of Android apps influence Deep RL performance
Abstract
The state space of Android apps is huge and its thorough exploration during testing remains a major challenge. In fact, the best exploration strategy is highly dependent on the features of the app under test. Reinforcement Learning (RL) is a machine learning technique that learns the optimal strategy to solve a task by trial and error, guided by positive or negative reward, rather than by explicit supervision. Deep RL is a recent extension of RL that takes advantage of the learning capabilities of neural networks. Such capabilities make Deep RL suitable for complex exploration spaces such as the one of Android apps. However, state of the art, publicly available tools only support basic, tabular RL. We have developed ARES, a Deep RL approach for black-box testing of Android apps. Experimental results show that it achieves higher coverage and fault revelation than the baselines, which…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
