背景: 敏捷软件开发需要快速且持续的测试,以支持频繁的软件交付并维持软件质量。测试自动化框架为自动化测试执行提供了结构化方法,在敏捷和持续集成/持续交付环境中日益重要。
目标: 本研究旨在通过考察Pytest、Cypress和Playwright的开发活动、维护实践、发布行为、问题管理、拉取请求活动、社区参与以及持续集成与快速交付指标,对其进行实证比较。
方法: 采用仓库挖掘技术,通过GitHub REST API从Pytest、Cypress和Playwright的GitHub仓库中收集数据。收集的数据包括提交记录、问题、拉取请求、版本发布、贡献者及仓库特征。使用描述性统计和仓库指标在研究周期内对三个框架进行比较。
结果: 结果显示仓库活动和维护特征存在显著差异。Playwright记录了最高的提交数和合并拉取请求数,而Cypress记录了最高的版本发布数和持续集成/持续交付相关提交占比。Playwright的中位数问题解决时间和拉取请求合并时间最短,而Pytest表现出较低的发布频率,这与其成熟且注重稳定性的开发方式一致。
结论: 研究结果表明,Pytest、Cypress和Playwright展现出不同的开发、维护、发布和社区参与模式。该实证证据可支持从业者和组织根据项目需求选择测试自动化框架,同时展示了仓库挖掘在评估软件开发与维护实践方面的价值。