Wednesday 4 March 2020

A Study on Open-Source Android Applications

A Study on Open-Source Android Applications
Android applications do not seem to be tested as thor-oughly as desktop ones. In particular, graphical user interface(GUI) testing appears generally limited. Like web-based appli-cations, mobile apps suffer from GUI test fragility, i.e., GUI testclasses failing or needing updates due to even minor modifica-tions in the GUI or in the application under test. The objective ofour study is to estimate the adoption of GUI testing frameworksamong Android open-source applications, the quantity of modifi-cations needed to keep test classes up to date, and their amount dueto GUI test fragility. We introduce a set of 21 metrics to measurethe adoption of testing tools and the evolution of test classes andtest methods, and to estimate the fragility of test suites. We com-puted our metrics for six GUI testing frameworks, none of whichachieved a significant adoption among Android projects hosted onGitHub. When present, GUI test methods associated with the con-sidered tools are modified often, and a relevant portion (70% onaverage) of those modifications is induced by GUI-related fragili-ties. On average, for the projects considered, more than 7% of thetotal modified lines of code between consecutive releases belong totest classes developed with the analyzed testing frameworks. Themeasured percentage was higher on average than the one requiredby other generic test code, based on the JUnit testing framework.Fragility of GUI tests constitutes a relevant concern, probably anobstacle for developers to adopt test automation. This first evalua-tion of the fragility of Android scripted GUI testing can constitutea benchmark for developers and testers leveraging the analyzedtest tools and the basis for the definition of a taxonomy of fragilitycauses and guidelines to mitigate the issue.CodeShoppy
A Study on Open-Source Android Applications



present in older releases but are removed in the masterbranch, the project will not be extracted.2) Only files smaller than 384 kB are searchable.3) Only repositories with fewer than 500 000 files are search-able.The second and third issues may be not very relevant inour context, since the size of projects and files considered istypically not so big (with the exception of projects containingwhole firmwares or clones of the Android operating system).3) Count of Lines of Code:We used the open-source cloc16tool to count the total lines of code inside a repository (or, ingeneral, a set of files).To compute the number of modifications performed to files ofa GitHub project, thegit diffcommand is used to obtain all themodified, added, and removed lines of code between the two re-leases considered. By default, the diff command shows the mod-ifications performed to the whole repository; as an alternative, itis possible to specify the full paths of a file for both the releasesto obtain the modifications that were performed only on it.The -M parameter allows us to identify files that have beenrenamed or moved in the transition between the releases, withoutconsidering such operation as the combination of a deletion andan addition of a file. The git diff command takes into accountalso blank lines and rows of comments inside files.
https://codeshoppy.com/php-projects-titles-topics.html
 

No comments:

Post a Comment