[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/3545258.3545270acmotherconferencesArticle/Chapter ViewAbstractPublication PagesinternetwareConference Proceedingsconference-collections
research-article
Open access

Functional Scenario Classification for Android Applications using GNNs

Published: 15 September 2022 Publication History

Abstract

Functional scenario comprehension of screens in Android applications paves the way for Android app development and Android UI testing, especially in automated UI testing and test reuse. On the one hand, the screens of diverse Android applications contain widgets with many combinations. On the other hand, the screens of different scenarios may leverage similar widgets to fulfill the functionalities. Due to the above reasons, scenario comprehension is still hard to be solved by current approaches. In this paper, to fully understand the functionality of each screen, we propose a novel approach that employs Graph Neural Networks (GNN) to classify scenarios leveraging the transitions between screens and other available information of screens altogether. According to the result evaluated on 30 popular applications in the file management category, our approach improves the classification accuracy by at least 6% compared to previous work, demonstrating that GNN can fully utilize the potential relations and dependencies between the transitioned screens.

References

[1]
Luca Ardito, Riccardo Coppola, Simone Leonardi, Maurizio Morisio, and Ugo Buy. 2020. Automated test selection for Android apps based on APK and activity classification. IEEE Access 8(2020), 187648–187670.
[2]
Jane Bromley, Isabelle Guyon, Yann LeCun, Eduard Säckinger, and Roopak Shah. 1993. Signature verification using a” siamese” time delay neural network. Advances in neural information processing systems 6 (1993), 737–744.
[3]
Kyunghyun Cho, Bart van Merriënboer, Dzmitry Bahdanau, and Yoshua Bengio. 2014. On the Properties of Neural Machine Translation: Encoder–Decoder Approaches. In Proceedings of SSST-8, Eighth Workshop on Syntax, Semantics and Structure in Statistical Translation. 103–111.
[4]
Li Deng and Dong Yu. 2014. Deep learning: methods and applications. Foundations and trends in signal processing 7, 3-4 (2014), 197–387.
[5]
Matthias Fey and Jan Eric Lenssen. 2019. Fast graph representation learning with PyTorch Geometric. In Proceedings of the 7th International Conference on Learning Representations, RLGM Workshop (ICLR’19).
[6]
JS Foundation. 2022. Appium: Mobile App Automation Made Awesome.http://appium.io/. Online; accessed 15-Feb-2022.
[7]
Google. 2022. ListView. https://developer.android.google.cn/reference/android/. Online; accessed 15-Feb-2022.
[8]
Google. 2022. Monkeyrunner. https://developer.android.com/studio/test/monkeyrunner. Online; accessed 15-Feb-2022.
[9]
William L Hamilton, Zhitao Ying, and Jure Leskovec. 2017. Inductive representation learning on large graphs. In Proceedings of the 31st International Conference on Neural Information Processing Systems (NIPS’17). MIT Press, 1025–1035.
[10]
Gang Hu, Linjie Zhu, and Junfeng Yang. 2018. AppFlow: using machine learning to synthesize robust, reusable UI tests. In Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE’18). ACM, 269–282.
[11]
Diederik P Kingma and Jimmy Ba. 2015. Adam: A method for stochastic optimization. In Proceedings of the 3th International Conference on Learning Representations (ICLR’15).
[12]
Thomas N Kipf and Max Welling. 2017. Semi-supervised classification with graph convolutional networks. In Proceedings of the 5th International Conference on Learning Representations (ICLR’17).
[13]
Yujia Li, Richard Zemel, Marc Brockschmidt, and Daniel Tarlow. 2016. Gated graph sequence neural networks. In Proceedings of the 4th International Conference on Learning Representations (ICLR’16).
[14]
Minxue Pan, An Huang, Guoxin Wang, Tian Zhang, and Xuandong Li. 2020. Reinforcement learning based curiosity-driven testing of Android applications. In Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA’20). ACM, 153–164.
[15]
Minxue Pan, Tongtong Xu, Yu Pei, Zhong Li, Tian Zhang, and Xuandong Li. 2020. GUI-Guided Test Script Repair for Mobile Apps. IEEE Transactions on Software Engineering(2020), 1–1.
[16]
Adam Paszke, Sam Gross, Soumith Chintala, Gregory Chanan, Edward Yang, Zachary DeVito, Zeming Lin, Alban Desmaison, Luca Antiga, and Adam Lerer. 2017. Automatic differentiation in pytorch. In Proceedings of the 31st International Conference on Neural Information Processing Systems,Workshop (NIPS’17). MIT Press.
[17]
Robotium.org. 2022. Android UI Testing. http://www.robotium.org. Online; accessed 15-Feb-2022.
[18]
Ariel Rosenfeld, Odaya Kardashov, and Orel Zang. 2017. Automation of Android Applications Testing Using Machine Learning Activities Classification. http://arxiv.org/abs/1709.00928
[19]
Selenium. 2022. WebDriver. https://www.selenium.dev/documentation/webdriver/. Online; accessed 15-Feb-2022.
[20]
Petar Veličković, Guillem Cucurull, Arantxa Casanova, Adriana Romero, Pietro Lio, and Yoshua Bengio. 2018. Graph attention networks. In Proceedings of the 6th International Conference on Learning Representations (ICLR’18).
[21]
Zonghan Wu, Shirui Pan, Fengwen Chen, Guodong Long, Chengqi Zhang, and Philip S. Yu. 2021. A Comprehensive Survey on Graph Neural Networks. IEEE Transactions on Neural Networks and Learning Systems 32, 1(2021), 4–24.
[22]
Keyulu Xu, Weihua Hu, Jure Leskovec, and Stefanie Jegelka. 2019. How powerful are graph neural networks?. In Proceedings of the 7th International Conference on Learning Representations (ICLR’19).
[23]
Tongtong Xu, Minxue Pan, Yu Pei, Guiyin Li, Xia Zeng, Tian Zhang, Yuetang Deng, and Xuandong Li. 2021. GUIDER: GUI structure and vision co-guided test script repair for Android apps. In Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA’21). ACM, 191–203.
[24]
Jie Zhou, Ganqu Cui, Shengding Hu, Zhengyan Zhang, Cheng Yang, Zhiyuan Liu, Lifeng Wang, Changcheng Li, and Maosong Sun. 2020. Graph neural networks: A review of methods and applications. AI Open 1(2020), 57–81.

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
Internetware '22: Proceedings of the 13th Asia-Pacific Symposium on Internetware
June 2022
291 pages
ISBN:9781450397803
DOI:10.1145/3545258
This work is licensed under a Creative Commons Attribution International 4.0 License.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 15 September 2022

Check for updates

Author Tags

  1. Android testing
  2. Graph neural networks
  3. UI testing
  4. functional scenario classification

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

Internetware 2022

Acceptance Rates

Overall Acceptance Rate 55 of 111 submissions, 50%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 408
    Total Downloads
  • Downloads (Last 12 months)158
  • Downloads (Last 6 weeks)24
Reflects downloads up to 06 Jan 2025

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media