Location-Based Test Case Prioritization for Software Embedded in Mobile Devices Using the Law of Gravitation

Considering that some intelligent software in mobile devices is related to location of sensors and devices, regression testing for it faces a major challenge. Test case prioritization (TCP), as a kind of regression test optimization technique, is beneficial to improve test efficiency. However, traditional TCP techniques may have limitations on testing intelligent software embedded in mobile devices because they do not take into account characteristics of mobile devices. This paper uses a smart mall as a scenario to design a novel location-based TCP technique for software embedded in mobile devices using the law of gravitation. First, test gravitation is proposed by applying the idea of universal gravitation. Second, a specific calculation model of test gravitation is designed for a smart mall scenario. Third, how to create a faulted test case set is designed by the pseudocode. Fourth, a location-based TCP using the law of gravitation algorithm is proposed, which utilizes test case information, fault information, and location information to prioritize test cases. Finally, an empirical evaluation is presented by using one industrial project. The observation, underlying the experimental results, is that our proposed TCP approach performs better than traditional TCP techniques. In addition, besides location information, the level of devices is also an important factor which affects the prioritization efficiency.

[1]  Kostas E. Psannis,et al.  Secure integration of IoT and Cloud Computing , 2018, Future Gener. Comput. Syst..

[2]  Gregg Rothermel,et al.  Incorporating varying test costs and fault severities into test case prioritization , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[3]  T. H. Tse,et al.  Taking Advantage of Service Selection: A Study on the Testing of Location-Based Web Services Through Test Case Prioritization , 2010, 2010 IEEE International Conference on Web Services.

[4]  Chen Xiang,et al.  Survey of Test Case Prioritization Techniques for Regression Testing , 2013 .

[5]  Mary Lou Soffa,et al.  TimeAware test suite prioritization , 2006, ISSTA '06.

[6]  Antonio Iera,et al.  The Internet of Things: A survey , 2010, Comput. Networks.

[7]  Wei-Tek Tsai,et al.  Mobile Application Testing: A Tutorial , 2014, Computer.

[8]  Nigel Davies,et al.  Evaluating a location-based application: a hybrid test and simulation environment , 2004, IEEE Pervasive Computing.

[9]  David Leon,et al.  Finding failures by cluster analysis of execution profiles , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[10]  Chin-Yu Huang,et al.  Design and analysis of GUI test-case prioritization using weight-based methods , 2010, J. Syst. Softw..

[11]  Bo Yang,et al.  Data gravitation based classification , 2009, Inf. Sci..

[12]  Porfirio Tramontana,et al.  Considering Context Events in Event-Based Testing of Mobile Applications , 2013, 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation Workshops.

[13]  Dongsong Zhang,et al.  Challenges, Methodologies, and Issues in the Usability Testing of Mobile Applications , 2005, Int. J. Hum. Comput. Interact..

[14]  Shuai Wang,et al.  Enhancing Test Case Prioritization in an Industrial Setting with Resource Awareness and Multi-objective Search , 2016, 2016 IEEE/ACM 38th International Conference on Software Engineering Companion (ICSE-C).

[15]  P. M. Adams,et al.  Location-Based Services — An Overview of the Standards , 2003 .

[16]  Miryung Kim,et al.  Prioritizing test cases for early detection of refactoring faults , 2016, Softw. Test. Verification Reliab..

[17]  Byoungju Choi,et al.  Performance Testing of Mobile Applications at the Unit Test Level , 2009, 2009 Third IEEE International Conference on Secure Software Integration and Reliability Improvement.

[18]  Hyunsook Do,et al.  Test Case Prioritization Using Requirements-Based Clustering , 2013, 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation.

[19]  Sarfraz Khurshid,et al.  An Information Retrieval Approach for Regression Test Prioritization Based on Program Changes , 2015, 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering.

[20]  Gregg Rothermel,et al.  Test case prioritization: an empirical study , 1999, Proceedings IEEE International Conference on Software Maintenance - 1999 (ICSM'99). 'Software Maintenance for Business Change' (Cat. No.99CB36360).

[21]  René Just,et al.  Higher accuracy and lower run time: efficient mutation analysis using non‐redundant mutation operators , 2015, Softw. Test. Verification Reliab..

[22]  Gregory M. Kapfhammer,et al.  History-Based Test Case Prioritization with Software Version Awareness , 2013, 2013 18th International Conference on Engineering of Complex Computer Systems.

[23]  Rossana M. de Castro Andrade,et al.  Testing requirements for mobile applications , 2009, 2009 24th International Symposium on Computer and Information Sciences.

[24]  Xiong Luo,et al.  Web Service QoS Prediction Based on Adaptive Dynamic Programming Using Fuzzy Neural Networks for Cloud Services , 2015, IEEE Access.

[25]  Hui Tian,et al.  A new user similarity model to improve the accuracy of collaborative filtering , 2014, Knowl. Based Syst..

[26]  Requirements-Based Test Case Prioritization , 2004 .

[27]  Bo Qu,et al.  Test Case Prioritization Based on Varying Testing Requirement Priorities and Test Case Costs , 2007, Seventh International Conference on Quality Software (QSIC 2007).

[28]  Amitava Datta,et al.  Test Case Prioritization Due to Database Changes in Web Applications , 2012, 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation.

[29]  Gregg Rothermel,et al.  Prioritizing test cases for regression testing , 2000, ISSTA '00.

[30]  Amitava Datta,et al.  A Two-Level Prioritization Approach for Regression Testing of Web Applications , 2012, 2012 19th Asia-Pacific Software Engineering Conference.

[31]  Gregg Rothermel,et al.  Analyzing Regression Test Selection Techniques , 1996, IEEE Trans. Software Eng..

[32]  Ji-Hong Chen,et al.  Survey of Test Case Prioritization Techniques for Regression Testing: Survey of Test Case Prioritization Techniques for Regression Testing , 2014 .

[33]  Adam A. Porter,et al.  A history-based test prioritization technique for regression testing in resource constrained environments , 2002, ICSE '02.

[34]  Gregg Rothermel,et al.  Test Case Prioritization: A Family of Empirical Studies , 2002, IEEE Trans. Software Eng..

[35]  Gregg Rothermel,et al.  A safe, efficient regression test selection technique , 1997, TSEM.

[36]  Hao Wang,et al.  A source location protection protocol based on dynamic routing in WSNs for the Social Internet of Things , 2017, Future Gener. Comput. Syst..

[37]  Sergiy Vilkomir Multi-device coverage testing of mobile applications , 2017, Software Quality Journal.

[38]  Mary Lou Soffa,et al.  Efficient time-aware prioritization with knapsack solvers , 2007, WEASELTech '07.

[39]  Chen Wang,et al.  Improving Nearest Neighbor Classification with Simulated Gravitational Collapse , 2005, ICNC.

[40]  Bo Jiang,et al.  Prioritizing Test Cases for Regression Testing of Location-Based Services: Metrics, Techniques, and Case Study , 2014, IEEE Transactions on Services Computing.

[41]  Hema Srikanth,et al.  Improving test efficiency through system test prioritization , 2012, J. Syst. Softw..

[42]  David Leon,et al.  A comparison of coverage-based and distribution-based techniques for filtering and prioritizing test cases , 2003, 14th International Symposium on Software Reliability Engineering, 2003. ISSRE 2003..

[43]  Laurie A. Williams,et al.  System test case prioritization of new and regression test cases , 2005, 2005 International Symposium on Empirical Software Engineering, 2005..

[44]  Marta Indulska,et al.  Gravity based spatial clustering , 2002, GIS '02.

[45]  Xu Zhao,et al.  Adaptive Test-Case Prioritization Guided by Output Inspection , 2013, 2013 IEEE 37th Annual Computer Software and Applications Conference.

[46]  Henry Muccini,et al.  Software testing of mobile applications: Challenges and future research directions , 2012, 2012 7th International Workshop on Automation of Software Test (AST).