paperbot · PL 论文追踪

全部论文 待读 收藏

P2 To Share, or Not to Share: Exploring Test-Case Reusability in Fork Ecosystems

共享还是不共享:探究 fork 生态中的测试用例可复用性
ASE 2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)2023匹配度 1/10 · 论文研究 GitHub fork 生态中的测试用例复用,属于软件工程/测试挖掘与复用方向,未涉及静态分析、LLM/Agent、浮点程序分析或贝叶斯程序分析,与用户研究画像的核心方向基本无关。引用 7 inbox
Mukelabai Mukelabai, Christoph Derks, Jacob Krüger, Thorsten Berger
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:通过挖掘 GitHub 上 305 个 fork 生态并实际移植测试用例,实证评估测试用例跨 fork 复用的可行性与收益。

社交编程平台上的 fork 使项目通过克隆并行演化,形成 fork 生态,但代码传播与同步零散,各项目质量不一、重复开发严重;测试用例往往未被其他 fork 复用,其跨项目可复用性尚不清楚。本文从 GitHub 挖掘 305 个 fork 生态(共 1,089 个项目)的测试用例数据集,通过人工审查可适用性、实际移植测试用例并分析不可适用原因,系统评估测试用例在 fork 项目间的复用潜力。研究给出了复用测试用例的收益(如发现缺陷)与挑战(如自动化代码移植与适用性判定),为在 fork 生态中复用测试用例以提升质量、可维护性与开发效率提供了实证依据。

问题
在 fork 生态中,项目通过克隆并行演化、代码传播与同步零散,测试用例难以在 fork 之间复用,其可复用性及对软件质量提升的潜力尚不明确。
方法
作者从 GitHub 挖掘 305 个 fork 生态(共 1,089 个项目)的测试用例数据集,人工检查测试用例的可适用性,并进行测试用例移植与不可适用原因分析。
评估
在大规模真实 fork 生态上通过人工审查与移植实验,定量与定性地评估测试用例跨 fork 复用的收益(如发现缺陷)及挑战(如自动化代码移植、适用性判定)。
原文摘要(Abstract)

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.

链接与引用

DOI 原文 · PDF(开放获取) · DBLP

BibTeX
@inproceedings{MukelabaiDKB23,
  title = {To Share, or Not to Share: Exploring Test-Case Reusability in Fork Ecosystems},
  author = {Mukelabai Mukelabai and Christoph Derks and Jacob Krüger and Thorsten Berger},
  booktitle = {ASE},
  year = {2023},
  doi = {10.1109/ase56229.2023.00191}
}