Evaluating an Automatic Text-based Test Case Selection using a Non-Instrumented Code Coverage Analysis

During development, systems may be tested several times. In general, a system evolves from change requests, aiming at improving its behavior in terms of new features as well as fixing failures. Thus, selecting the best test plan in terms of the closeness between test cases and the changed code and its dependencies is pursued by industry and academia. In this paper we measure the coverage achieved by an automatic test case selection based on information retrieval that relates change requests and test cases. But instead of using off-the-shelf coverage tools, like JaCoCo, we propose a way of obtaining code coverage of Android apk's without instrumentation. This was a basic requirement of our industrial partner. We performed some experiments on this industrial partner and promising results were obtained.

[1]  Ashish Sureka,et al.  SARATHI: Characterization Study on Regression Bugs and Identification of Regression Bug Inducing Changes: A Case-Study on Google Chromium Project , 2015, ISEC.

[2]  Jørn Ola Birkeland From a Timebox Tangle to a More Flexible Flow , 2010, XP.

[3]  Tony Gorschek,et al.  Large-scale information retrieval in software engineering - an experience report from industrial application , 2016, Empirical Software Engineering.

[4]  Gerardo Canfora,et al.  Impact analysis by mining software and change request repositories , 2005, 11th IEEE International Software Metrics Symposium (METRICS'05).

[5]  Hinrich Schütze,et al.  Introduction to information retrieval , 2008 .

[6]  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.

[7]  Paolo Tonella,et al.  Test Case Prioritization for Audit Testing of Evolving Web Services Using Information Retrieval Techniques , 2011, 2011 IEEE International Conference on Web Services.

[8]  Tibor Gyimóthy,et al.  Test suite evaluation using code coverage based metrics , 2015, SPLST.

[9]  Patrícia Duarte de Lima Machado,et al.  Seleção Automática de Casos de Teste de Regressão Baseada em Similaridade e Valores , 2013, RITA.

[10]  Darko Marinov,et al.  Balancing trade-offs in test-suite reduction , 2014, SIGSOFT FSE.

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

[12]  Alexandre Mota,et al.  Automatic Selection of Test Cases for Regression Testing , 2016, SAST.

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

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

[15]  Bogdan Korel,et al.  Model based regression test reduction using dependence analysis , 2002, International Conference on Software Maintenance, 2002. Proceedings..

[16]  Patrícia Duarte de Lima Machado,et al.  On the use of a similarity function for test case selection in the context of model‐based testing , 2011, Softw. Test. Verification Reliab..

[17]  Alexandre Mota,et al.  Automatically Finding Hidden Industrial Criteria used in Test Selection , 2016, SEKE.