Evolutionary Conflict Checking
Tao Ji, Liqian Chen, Xiaoguang Mao, Xin Yi, Jiahong Jiang

TL;DR
This paper introduces evolutionary conflict checking, a method to validate new software changes by detecting conflicts with existing behaviors, thereby improving regression testing and software quality assurance during evolution.
Contribution
It proposes a novel approach that extracts developer intentions and uses a three-way merge to identify conflicts between old and new code, enhancing regression detection.
Findings
Effective conflict detection between old and new code changes
Improves regression testing accuracy
Enhances software quality assurance
Abstract
During the software evolution, existing features may be adversely affected by new changes, which is well known as regression errors. Maintaining a high-quality test suite is helpful to prevent regression errors, whereas it heavily depends on developers. Continuously augmenting the existing test suite based on the new changes can assist developers in investigating the impact of these new changes. And by comparing the executions of the generated test case on two versions, existing techniques are able to detect some common errors. However, the requirements and oracles on the new changes with existing program behaviors are missing. In addition, the new changes may introduce new bugs when they are not sufficiently examined with other unchanged code, which finally fails to meet developers' real intentions on changes. In this paper, we propose the notion of evolutionary conflict checking to…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Software Engineering Research · Software Reliability and Analysis Research
