Maintenance of Android Widget-Based GUI Testing: A Taxonomy of Test Case Modification Causes

  title={Maintenance of Android Widget-Based GUI Testing: A Taxonomy of Test Case Modification Causes},
  author={Riccardo Coppola and Maurizio Morisio and Marco Torchiano},
  journal={2018 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)},
Automated GUI testing is a fundamental part of the V&V process of every software, but - especially for fast evolving applications - is linked to relevant maintenance costs. Android (and mobile, in general) apps are also particularly prone to fragility, i.e. even minor modifications in the graphical user interface may induce relevant adaptation effort on test code. Based on a preliminary exploration about the evolution and fragility of test suites that we made on a set of nearly 20 thousand… 
Scripted GUI testing of Android open-source apps: evolution of test code and fragility causes
The objective of this study is to examine the diffusion of test classes created with a set of popular GUI Automation Frameworks for Android apps, the amount of changes required to keep test classes up to date, and the amounts of code churn in existing test suites, along with the underlying modifications in the AUT that caused such modifications.
Evolution and Fragility of Mobile Automated Test Suites
Assessment of the usability of existing GUI testing techniques applicable to Android apps and the adoption of existing tools by developers from the open-source environment showed that the diffusion of testing tools is limited on the set of projects mined from GitHub, the largest context for this kind of quantitative experience.
Mobile Testing: New Challenges and Perceived Difficulties From Developers of the Italian Industry
It is confirmed that automated testing is still not widely adopted and rarely formalized by industry, with manual testing being still the primary form of testing.
An Approach to Test Classification in Big Android Applications
Identifying anti patterns and smells, general guidelines and patterns for testing big Android applications are established, as well as metrics for test code quality which have been applied and found useful in the Catrobat project.
Fragility of layout-based and visual GUI test scripts: an assessment study on a hybrid mobile application
An assessment of the maintenance needed by test cases for a hybrid mobile app, and the related fragility causes, and guidelines for developers are deduced.


Evolution and Fragilities in Scripted GUI Testing of Android applications
A set of metrics to quantify the amount of fragility of any testing suite were defined, and measured them automatically for a set of repositories hosted on GitHub and found that, for projects featuring GUI tests, the incidence of Fragility is around 10% for test classes, and around 5% fortest methods.
Scripted GUI Testing of Android Apps: A Study on Diffusion, Evolution and Fragility
This first evaluation and measure of fragility of Android scripted GUI testing can constitute a benchmark for developers, and the basis for the definition of a taxonomy of Fragility causes, and actionable guidelines to mitigate the issue.
MobiGUITAR: Automated Model-Based Testing of Mobile Apps
MobiGUITAR (Mobile GUI Testing Framework) provides automated GUI-driven testing of Android apps, based on observation, extraction, and abstraction of GUI widgets' run-time state that automatically generates test cases and reports new bugs.
Automated mobile UI test fragility: an exploratory assessment study on Android
An exploratory assessment of the extent and causes of the fragility of UI automated tests for mobile applications found that up to 75% of code-based tests and up to 100% of image recognition tests had to be adapted because of the changes induced by the evolution of the application between two different versions.
A Grey-Box Approach for Automated GUI-Model Generation of Mobile Applications
This work presents a novel grey-box approach for automatically extracting a model of a given mobile app, which can efficiently extract compact yet reasonably comprehensive models of high quality for such apps.
CrashScope: A Practical Tool for Automated Testing of Android Applications
Results of preliminary studies show that CRASHSCOPE is able to uncover about as many crashes as other state of the art tools, while providing detailed useful crash reports and test scripts to developers.
Software test-code engineering: A systematic mapping
The results of the systematic mapping can help researchers to obtain an overview of existing STCE approaches and spot areas in the field that require more attention from the research community.
Towards Black Box Testing of Android Apps
A framework called BBOXTESTER that is able to generate code coverage reports and produce uniform coverage metrics in testing without the source code is designed and implemented and its efficiency and effectiveness are assessed.
PATS: A Parallel GUI Testing Framework for Android Applications
A parallel GUI testing platform called PATS (Parallel Android Testing System) which performs GUI testing based on a master-slave model which can effectively improve the testing time with 18.87-35.78% performance improvements.
Exploring the Presence of Technical Debt in Industrial GUI-Based Testware: A Case Study
Investigation of an industrial case study at a Swedish avionics software development company provides initial support that the concept of TTD is applicable to GUI-based testware and shows the presence of both TD items unique toGUI-basedTestware and items common to software.