<p>Unlike traditional refactorings, research on test-specific refactoring is limited. This paper presents a comprehensive catalogue of 57 test-specific refactoring types, out of which only 33 were previously documented in the literature. We have identified and classified those refactorings using a mixed-method approach grounded on three sources of data: a) Existing datasets of test-modifying commits, b) Monitoring of latest contributions to popular GitHub repositories, and c) Stack Overflow discussions. Our findings reveal that tools have limited support for test-specific refactorings. And, unlike the existing literature that mainly associates refactoring activity in tests with test smell resolution, test refactoring is driven by various motivations, such as improving test understandability, accommodating changes in production code, and test framework migration. Finally, we provide actionable implications for researchers and tool builders.</p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

A mixed-method in-depth study of test-specific refactorings

  • Victor Guerra Veloso,
  • Nikolaos Tsantalis,
  • Tse-Hsun Peter Chen

摘要

Unlike traditional refactorings, research on test-specific refactoring is limited. This paper presents a comprehensive catalogue of 57 test-specific refactoring types, out of which only 33 were previously documented in the literature. We have identified and classified those refactorings using a mixed-method approach grounded on three sources of data: a) Existing datasets of test-modifying commits, b) Monitoring of latest contributions to popular GitHub repositories, and c) Stack Overflow discussions. Our findings reveal that tools have limited support for test-specific refactorings. And, unlike the existing literature that mainly associates refactoring activity in tests with test smell resolution, test refactoring is driven by various motivations, such as improving test understandability, accommodating changes in production code, and test framework migration. Finally, we provide actionable implications for researchers and tool builders.