中文

Meta 中基于观测的单元测试生成

软件工程 2024-02-12 v1

摘要

TestGen 自动生成单元测试,这些测试是从应用执行期间观察到的复杂对象的序列化观测中雕刻而来的。我们描述了 TestGen 在 Meta 的开发和部署。特别是,我们重点关注了开发期间为在工业界大规模部署基于观测的测试雕刻所克服的可扩展性挑战。迄今为止,TestGen 已将 518 个测试落地到生产环境中,这些测试在持续集成中执行了 9,617,349 次,发现了 5,702 个故障。Meta 目前正在推进更广泛的部署。我们的评估显示,当从 4,361 个可靠的端到端测试中雕刻其观测时,TestGen 能够为端到端测试覆盖的至少 86% 的类生成测试。在 16 个 Kotlin Instagram 应用启动阻塞任务上的测试表明,TestGen 测试本可以在其中 13 个成为启动阻塞之前将其捕获。

关键词

引用

@article{arxiv.2402.06111,
  title  = {Observation-based unit test generation at Meta},
  author = {Nadia Alshahwan and Mark Harman and Alexandru Marginean and Rotem Tal and Eddy Wang},
  journal= {arXiv preprint arXiv:2402.06111},
  year   = {2024}
}

备注

12 pages, 8 figures, FSE 2024, Mon 15 - Fri 19 July 2024, Porto de Galinhas, Brazil