论文

PrismaDV:自动化任务感知数据单元测试生成

PrismaDV: Automated Task-Aware Data Unit Test Generation

摘要

数据是现代企业的核心资源,数据验证对于确保下游应用的可靠性至关重要。然而,现有的自动化数据单元测试框架在很大程度上与任务无关:它们验证数据集而不考虑使用数据的代码的语义和要求。我们推出了 PrismaDV,这是一种复合人工智能系统,它可以分析下游任务代码和数据集配置文件,以识别数据访问模式、推断隐式数据假设并生成任务感知的可执行数据单元测试。为了进一步使数据单元测试随着时间的推移适应特定的数据集和下游任务,我们提出了“任务适应的选择性信息反馈”(SIFTA),这是一个提示优化框架,利用数据单元测试和下游任务执行的稀缺结果。我们在跨越五个数据集的 60 个任务的两个新基准上评估 PrismaDV,在生成反映数据错误的端到端影响的单元测试方面,它始终优于任务无关和任务感知的基准。此外,我们还表明,通过 SIFTA,我们可以自动学习 PrismaDV 模块的提示,其性能优于手工编写的提示或从通用提示优化器生成的提示。我们公开发布我们的基准和原型实现。