To Share, or Not to Share: Exploring Test-Case Reusability in Fork Ecosystems
Code is often reused to facilitate collaborative development, to create software variants, to experiment with new ideas, or to develop new features in isolation. Social-coding platforms, such as GitHub, enable enhanced code reuse with forking, pull requests, and cross-project traceability. With these concepts, forking has become a common strategy to reuse code by creating clones (i.e., forks) of projects. Thereby, forking establishes fork ecosystems of co-existing projects that are similar, but developed in parallel, often with rather sporadic code propagation and synchronization. Consequently, forked projects vary in quality and often involve redundant development efforts. Unfortunately, as we will show, many projects do not benefit from test cases created in other forks, even though those test cases could actually be reused to enhance the quality of other projects. We believe that reusing test cases—in addition to the implementation code—can improve software quality, software maintainability, and coding efficiency in fork ecosystems. While researchers have worked on test-case-reuse techniques, their potential to improve the quality of real fork ecosystems is unknown. To shed light on test-case reusability, we study to what extent test cases can be reused across forked projects. We mined a dataset of test cases from 305 fork ecosystems on GitHub—totaling 1,089 projects—and assessed the potential for reusing these test cases among the forked projects. By performing a manual inspection of the test cases’ applicability, by transplanting the test cases, and by analyzing the causes of non-applicability, we contribute an understanding of the benefits (e.g., uncovering bugs) and of the challenges (e.g., automated code transplantation, deciding about applicability) of reusing test cases in fork ecosystems.
Pre-print (ase-main-2023-617-testcase-reusability-inforkecosystems.pdf) | 277KiB |
Wed 13 SepDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
13:30 - 15:00 | Open Source and Software Ecosystems 2Research Papers / Journal-first Papers / Industry Showcase (Papers) at Room D Chair(s): Paul Grünbacher Johannes Kepler University Linz, Austria | ||
13:30 12mTalk | Personalized First Issue Recommender for Newcomers in Open Source Projects Research Papers Wenxin Xiao School of Computer Science, Peking University, Jingyue Li Norwegian University of Science and Technology, Hao He Carnegie Mellon University, Ruiqiao Qiu Beijing Institute of Technology, Minghui Zhou Peking University Pre-print | ||
13:42 12mTalk | Understanding and Enhancing Issue Prioritization in GitHub Research Papers Yingying He Nanjing University of Aeronautics and Astronautics, Wenhua Yang Nanjing University of Aeronautics and Astronautics, Minxue Pan Nanjing University, Yasir Hussain Nanjing University of Aeronautics and Astronautics, Yu Zhou Nanjing University of Aeronautics and Astronautics | ||
13:55 12mResearch paper | Who is the Real Hero? Measuring Developer Contribution via Multi-dimensional Data Integration Research Papers Yuqiang Sun Nanyang Technological University, Zhengzi Xu Nanyang Technological University, Chengwei Liu Nanyang Technological University, Yiran Zhang Nanyang Technological University, Yang Liu Nanyang Technological University Pre-print | ||
14:08 12mTalk | Predicting Health Indicators for Open Source Projects (using Hyperparameter Optimization) Journal-first Papers Tianpei Xia North Carolina State University, Wei Fu North Carolina State University, Rui Shu North Carolina State University, Rishabh Agrawal North Carolina State University, Tim Menzies North Carolina State University Link to publication DOI Pre-print | ||
14:21 12mTalk | To Share, or Not to Share: Exploring Test-Case Reusability in Fork Ecosystems Research Papers Mukelabai Mukelabai The University of Zambia, Zambia, Christoph Derks Ruhr-University Bochum, Germany, Jacob Krüger Eindhoven University of Technology, Thorsten Berger Ruhr University Bochum File Attached | ||
14:34 12mTalk | LiSum: Open Source Software License Summarization with Multi-Task LearningRecorded talk Research Papers Linyu Li , Sihan Xu Nankai University, Yang Liu Nanyang Technological University, Ya Gao Nankai University, Xiangrui Cai Nankai University, Jiarun Wu Nankai University, Wenli Song Civil Aviation University of China, Zheli Liu Nankai University Pre-print Media Attached | ||
14:47 12mTalk | Open Source Software Tools for Data Management and Deep Model Training Automation Industry Showcase (Papers) Umut Tıraşoğlu ORDULU Corp., Abdussamet Türker ORDULU Corp., Adnan Ekici ORDULU Corp., Hayri Yiğit ORDULU Corp., Yusuf Enes Bölükbaşı ORDULU Corp., Toygar Akgun TOBB ETU |