DinoDroid: Testing Android Apps Using Deep Q-Networks.

Autor: Zhao, Yu, Harrison, Brent, Yu, Tingting
Předmět:
Zdroj: ACM Transactions on Software Engineering & Methodology; Jun2024, Vol. 33 Issue 5, p1-24, 24p
Abstrakt: The large demand of mobile devices creates significant concerns about the quality of mobile applications (apps). Developers need to guarantee the quality of mobile apps before it is released to the market. There have been many approaches using different strategies to test the GUI of mobile apps. However, they still need improvement due to their limited effectiveness. In this article, we propose DinoDroid, an approach based on deep Q-networks to automate testing of Android apps. DinoDroid learns a behavior model from a set of existing apps and the learned model can be used to explore and generate tests for new apps. DinoDroid is able to capture the fine-grained details of GUI events (e.g., the content of GUI widgets) and use them as features that are fed into deep neural network, which acts as the agent to guide app exploration. DinoDroid automatically adapts the learned model during the exploration without the need of any modeling strategies or pre-defined rules. We conduct experiments on 64 open-source Android apps. The results showed that DinoDroid outperforms existing Android testing tools in terms of code coverage and bug detection. [ABSTRACT FROM AUTHOR]
Databáze: Complementary Index