AppFlow: Using Machine Learning to Synthesize Robust, Reusable UI Tests
UI testing is known to be difficult, especially as today’s development cycles become faster. Manual UI testing is tedious, costly and error- prone. Automated UI tests are costly to write and maintain. This paper presents AppFlow, a system for synthesizing highly robust, highly reusable UI tests. It leverages machine learning to automatically recognize common screens and widgets, relieving developers from writing ad hoc, fragile logic to use them in tests. It enables developers to write a library of modular tests for the main functionality of an app category (e.g., an “add to cart” test for shopping apps). It can then quickly test a new app in the same category by synthesizing full tests from the modular ones in the library. By focusing on the main functionality, AppFlow provides “smoke testing” requiring little manual work. Optionally, developers can customize AppFlow by adding app-specific tests for completeness. We evaluated AppFlow on 60 popular apps in the shopping and the news category, two case studies on the BBC news app and the JackThreads shopping app, and a user-study of 15 subjects on the Wish shopping app. Results show that AppFlow accurately recognizes screens and widgets, synthesizes highly robust and reusable tests, covers 46.6% of all automatable tests for Jackthreads with the tests it synthesizes, and reduces the effort to test a new app by up to 90%. Interestingly, it found eight bugs in the evaluated apps, including seven functionality bugs, despite that they were publicly released and supposedly went through thorough testing.
Wed 7 NovDisplayed time zone: Guadalajara, Mexico City, Monterrey change
10:30 - 12:00 | Mobile AppsResearch Papers / Journal-First at Horizons 10-11 Chair(s): Shane McIntosh McGill University | ||
10:30 22mTalk | Getting the Most from Map Data Structures in Android Journal-First Rubén Saborido Infantes Department of Computer Science and Software Engineering, Concordia University, Montreal, Rodrigo Morales Concordia University, Foutse Khomh Polytechnique Montréal, Yann-Gaël Guéhéneuc Concordia University and Polytechnique Montréal, Giuliano Antoniol Polytechnique Montréal DOI | ||
10:52 22mTalk | Successes, Challenges, and Rethinking – An Industrial Investigation on Crowdsourced Mobile Application Testing Journal-First Ruizhi Gao , Yabin Wang , Yang Feng University of California, Irvine, Zhenyu Chen Nanjing University, W. Eric Wong DOI | ||
11:15 22mTalk | AppFlow: Using Machine Learning to Synthesize Robust, Reusable UI Tests Research Papers | ||
11:37 22mTalk | Winning the App Production Rally Research Papers Ehsan Noei University of Toronto, Daniel Alencar Da Costa Queen's University, Kingston, Ontario, Ying Zou Queen's University, Kingston, Ontario |