Paper titled "Mining Similar Methods for Test Adaptation", authored by Devika Sondhi (PhD student, IIIT Delhi), Mayank Jobanputra (Summer intern, IIIT Delhi), Divya Rani (B.Tech student, GITA, Bhubaneswar), Salil Purandare (B.Tech student, IIIT Delhi), Sakshi Sharma (B.Tech student, IIIT Bhubaneswar) and Rahul Purandare (Faculty CSE, IIIT Delhi), has been accepted for publication in the upcoming issue of the Transactions on Software Engineering (TSE).
Abstract: Developers may choose to implement a library despite the existence of similar libraries, considering factors such as computational performance, language or platform dependency, accuracy, convenience, and completeness of an API. As a result, GitHub hosts several library projects that have overlaps in their functionalities. These overlaps have been of interest to developers from the perspective of code reuse or the preference of one implementation over the other. Through an empirical study, the paper presents the extent and nature of the existence of these similarities in the library functions. The authors have further studied whether the similarity of functions across different libraries and their associated test suites can be leveraged to reveal defects in one another. The authors see scope for effectively using the mining of test suites from the perspective of revealing defects in a program or its documentation. Another noteworthy observation made in the study is that similar functions may exist across libraries implemented in the same language as well as in different languages. Identifying the challenges that lie in building a testing tool, this work automates the entire process in METALLICUS, a test mining and recommendation tool. METALLICUS returns a test suite for the given input of a query function and a template for its test suite. On a dataset of query functions taken from libraries implemented in Java or Python, METALLICUS revealed 46 defects.