Smartphone vendors apply both device and brand-specific customisations to the underlying operating systems, resulting in a wide range of device configurations. It is crucial that all of the device variations provide compatibility with the default version of the underlying operating system, such as Android. To ensure that widely and commonly used apps run on each of these device variations without any problem, vendors depend on automated GUI level testing of widely and commonly used apps: the failure of a GUI test script that emulates a routine usage of these apps would raise an alarm that a recent change made to a specific device variation may have caused a regression fault. These GUI level compatibility smoke tests are unique in the sense that they are GUI level automated test scripts that are written outside the software development lifecycle of the target apps: they are written and maintained by the engineers of the smartphone vendors, and not the app developers. As such, these test scripts are extra vulnerable to the fragility of GUI test scripts, which are already known to be fragile when maintained by app developers. This paper introduces a repair technique for View Identification Failures (VIFs) in those smoke tests so that the smartphone vendors can quickly update their GUI test scripts when they break due to changed view ids. Our technique matches view ids between old and new versions of the target app based on various similarity metrics such as the semantic embedding similarity between ids and GUI labels, and layout similarity based on node embeddings of the GUI layout tree. We evaluate the proposed technique using 512 VIFs collected from real-world Android mobile apps. The proposed technique can repair 72% of the 512 studied VIFs with only one attempt, compared to 28% repaired using lexical distance-based matching.
Thu 7 AprDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
11:30 - 12:45 | ICST API Testing and Program RepairIndustry / Research Papers at Margaret Hamilton Chair(s): Thomas Durieux KTH | ||
11:30 15mTalk | Harvesting Production GraphQL Queries to Detect Schema Faults Research Papers Louise Zetterlund Redeye AB, Deepika Tiwari KTH Royal Institute of Technology, Martin Monperrus KTH Royal Institute of Technology, Benoit Baudry KTH | ||
11:45 15mTalk | Automated Repair of Responsive Web Page Layouts Research Papers Ibrahim Althomali The University of Sheffield, Gregory Kapfhammer Allegheny College, Phil McMinn University of Sheffield | ||
12:00 15mTalk | Repairing Fragile GUI Test Cases Using Word and Layout Embedding Industry Juyeon Yoon Korea Advanced Institute of Science and Technology, Seungjun Chung KAIST, Kihyuck Shin Samsung Electronics, Jinhan Kim KAIST, Shin Hong Handong Global University, Shin Yoo KAIST | ||
12:15 15mTalk | Testing a PL/I Compiler using Precomputation-based Program Generation Industry Jesse Postema Universiteit Van Amsterdam, Johan Fabry Raincode Labs, Belgium, Yannick Barthol Raincode Labs, Ana Oprescu University of Amsterdam | ||
12:30 15mLive Q&A | Discussion and Q&A Research Papers |