论文标题
测试自动化成熟度提高了产品质量 - 使用连续集成对开源项目的定量研究
Test Automation Maturity Improves Product Quality -- Quantitative Study of Open Source Projects Using Continuous Integration
论文作者
论文摘要
由于市场压力释放产品功能或经常更新,连续集成(CI)的普及正在增加。 CI以速度交付质量的能力取决于可靠的测试自动化。在本文中,我们提出了一项实证研究,以观察测试自动化成熟度(通过文献中的标准最佳实践评估)对产品质量,测试自动化工作以及在开源项目的CI背景下的释放周期的影响。我们运行测试自动化成熟度调查,并从37个开源Java项目中得到回复。我们还挖掘了同一项目的软件存储库。回归分析的主要结果表明,较高水平的测试自动化成熟度与较高的产品质量(P值= 0.000624)和较短的释放周期(P值= 0.01891)呈正相关;由于测试自动化的成熟度和产品质量较高,因此没有统计学上的显着证据表明,测试自动化工作增加。因此,我们得出的结论是,提高测试自动化成熟度(使用标准最佳实践)的潜在好处是在开源项目的CI环境中的产品质量改进和释放周期加速。我们鼓励未来的研究通过添加更多具有不同编程语言和CI工具,封闭源项目和大规模工业项目的数据集来扩展我们的发现。我们向从业人员(在类似的CI环境中)提出的建议是利用标准最佳实践来提高测试自动化成熟度。
The popularity of continuous integration (CI) is increasing as a result of market pressure to release product features or updates frequently. The ability of CI to deliver quality at speed depends on reliable test automation. In this paper, we present an empirical study to observe the effect of test automation maturity (assessed by standard best practices in the literature) on product quality, test automation effort, and release cycle in the CI context of open source projects. We run our test automation maturity survey and got responses from 37 open source java projects. We also mined software repositories of the same projects. The main results of regression analysis reveal that, higher levels of test automation maturity are positively associated with higher product quality (p-value=0.000624) and shorter release cycle (p-value=0.01891); There is no statistically significant evidence of increased test automation effort due to higher levels of test automation maturity and product quality. Thus, we conclude that, a potential benefit of improving test automation maturity (using standard best practices) is product quality improvement and release cycle acceleration in the CI context of open source projects. We encourage future research to extend our findings by adding more datasets with different programming languages and CI tools, closed source projects, and large-scale industrial projects. Our recommendation to practitioners (in the similar CI context) is to utilize standard best practices to improve test automation maturity.