Test suite reduction in android application using refactoring

The vast increase in demand for android applications has made android application testing inevitable. The android open source feature has led to developers of unknown level of expertise developing the application, thus raising concerns on quality issues. Currently, android applications are found lag...

全面介绍

Saved in:
书目详细资料
主要作者: Ahmed, Maryam Temitayo
格式: Thesis
语言:English
English
English
出版: 2016
主题:
在线阅读:http://eprints.uthm.edu.my/10032/2/24p%20MARYAM%20TEMITAYO%20AHMED.pdf
http://eprints.uthm.edu.my/10032/1/MARYAM%20TEMITAYO%20AHMED%20COPYRIGHT%20DELARATION.pdf
http://eprints.uthm.edu.my/10032/3/MARYAM%20TEMITAYO%20AHMED%20WATERMARK.pdf
http://eprints.uthm.edu.my/10032/
标签: 添加标签
没有标签, 成为第一个标记此记录!
实物特征
总结:The vast increase in demand for android applications has made android application testing inevitable. The android open source feature has led to developers of unknown level of expertise developing the application, thus raising concerns on quality issues. Currently, android applications are found lagging in the area of testing. Test case generation is the most important and challenging area of software testing. Test cases tend to be large in number as redundant test cases are generated due to the presence of code smells in the software. Code smells are unnecessary codes, as a result of poor design or implementation. Several approaches have been proposed in the past by both academy and industrial researchers to tackle the high number of generated test cases in android applications, including test case minimization and prioritization technique. Nonetheless, these approaches are reactive rather than proactive. The technique used in this study is to apply code refactoring before test case generation to avoid redundant test cases from being generated. To achieve this, the detection of smells was done, followed by refactoring of detected smells. Test cases were then generated from the refactored code. More explicitly, this research presents three rules for detection of three code smells; lazy class, small method and duplicate, and three rules for their refactoring. The rules were implemented in a tool named DART (Detection and Refactoring Tool) to refactor the android source code for the reduction of test cases. The resultant source code is compared with the original source code by generating a number of branches, branch coverage and complexity using Clover. The results of this research show a reduction of about 7.7% in the cyclomatic complexity of the source code, while increasing the branch coverage with up to 9.2% increment. Also, there is a 28% reduction in the number of test cases generated. These show that refactoring can be used to reduce redundant test cases