CLASSES2TEST
收藏arXiv2025-11-25 更新2025-11-27 收录
下载链接:
https://anonymous.4open.science/r/classes2test
下载链接
链接失效反馈官方服务:
资源简介:
CLASSES2TEST是由巴里理工大学与Wideverse公司联合创建的Java单元测试基准数据集,扩展自METHODS2TEST数据集。该数据集包含9,410个GitHub仓库的类级测试映射,涵盖真实项目中的完整类测试场景。数据集通过自动化流程从开源项目提取被测类与对应测试类的关联关系,支持类级交互测试的评估。主要应用于软件测试领域,旨在解决大语言模型在复杂类级别单元测试生成中的性能评估问题,为测试质量比较提供标准化基准。
CLASSES2TEST is a Java unit test benchmark dataset jointly developed by Polytechnic University of Bari and Wideverse Inc., which is extended from the METHODS2TEST dataset. This dataset contains class-level test mappings from 9,410 GitHub repositories, covering complete class-level test scenarios in real-world projects. The dataset extracts the association relationships between classes under test and their corresponding test classes from open-source projects via an automated pipeline, supporting the evaluation of class-level interactive testing. It is mainly applied in the field of software testing, aiming to address the performance evaluation issue of Large Language Models (LLMs) when generating complex class-level unit tests, and providing a standardized benchmark for test quality comparison.
提供机构:
巴里理工大学, 巴里大学, Wideverse公司
创建时间:
2025-11-25
搜集汇总
数据集介绍

构建方式
CLASSES2TEST数据集构建过程体现了软件测试领域对高质量基准数据的迫切需求。该数据集基于METHODS2TEST的9,410个GitHub仓库进行扩展,通过严格的筛选标准确保项目活跃度与可编译性。构建流程采用两阶段映射策略:首先依据Java命名规范识别候选测试类,随后通过抽象语法树分析验证类与测试类之间的结构关联。当测试类涉及多个被测类时,采用证据占比阈值(≥60%)的保守策略确保映射精确性,最终形成包含147,473个测试类的完整数据集。
特点
该数据集在软件测试基准领域展现出显著特色。其核心价值在于实现了类级别测试评估,覆盖方法交互与共享状态等真实开发场景。数据集规模庞大且质量可控,平均每个类包含1,178行代码,复杂度达55.3。技术生态方面完整呈现现代Java测试框架分布,JUnit 4与JUnit 5分别占比55%和41%,同时涵盖Java 8至21等主流长期支持版本。这种多维特征使其成为评估大语言模型生成类级别测试能力的理想基准。
使用方法
在AGONETEST框架中,该数据集通过标准化流程支撑测试生成评估。系统首先解析项目配置参数,包括测试框架版本与Java环境信息,随后结合零样本或少样本提示策略生成测试代码。评估阶段集成代码覆盖率、变异分数与测试坏味等质量指标,通过自动化构建流程确保结果可复现。研究人员可通过YAML配置文件灵活调整大语言模型与提示策略,系统将自动生成包含质量指标对比的详细报告,为测试生成策略优化提供数据支撑。
背景与挑战
背景概述
CLASSES2TEST数据集由意大利巴里理工大学与Wideverse公司于2025年联合创建,旨在解决软件工程中单元测试自动生成的评估难题。该数据集扩展自METHODS2TEST,聚焦于Java类级别的测试映射,涵盖9,410个活跃维护的开源项目与14.7万组类-测试类对应关系。其核心研究在于通过标准化框架AGONETEST,系统评估大语言模型生成单元测试的效能,推动软件测试自动化研究向真实开发场景深化,为测试质量度量与模型优化提供关键数据支撑。
当前挑战
该数据集应对的领域挑战在于类级别单元测试生成的复杂性,需解决多方法交互、共享状态维护及测试冗余控制等核心问题。构建过程中面临三重挑战:其一,数据映射需通过AST分析与命名规约双重验证,确保类与测试类关联的精确性;其二,项目依赖异构性导致编译环境配置困难,需动态适配Maven/Gradle构建体系;其三,测试质量评估需整合突变分数、代码覆盖率与18种测试坏味指标,实现多维度量体系的无缝集成。
常用场景
经典使用场景
在软件测试研究领域,CLASSES2TEST数据集为评估大语言模型生成的单元测试质量提供了标准化基准。该数据集通过映射Java被测类与其对应测试类的关系,构建了包含147,473个测试类的完整语料库,覆盖9,410个真实GitHub仓库。研究人员利用该数据集进行类级别测试生成的系统性评估,通过自动化流水线比较不同LLM模型在代码覆盖率、变异分数等指标上的表现,为测试生成算法的优化提供数据支撑。
实际应用
在工业实践中,CLASSES2TEST为软件开发团队提供了测试生成工具选型的决策依据。开发人员可通过该数据集评估不同LLM在具体项目场景下的测试生成效果,优化提示工程策略。数据集涵盖JUnit4、JUnit5等主流测试框架和Java8至21等多个LTS版本,确保了技术栈的广泛适用性。企业可利用该基准降低测试代码的维护成本,提升单元测试的自动化水平与质量保障能力。
衍生相关工作
基于CLASSES2TEST数据集,研究社区衍生出多项重要工作。AGONETEST框架利用该数据集构建了端到端的测试评估流水线,支持多LLM对比分析。后续研究扩展了提示工程的优化策略,探索了增强编译成功率的路径规划方法。该数据集还促进了类级别测试生成与项目依赖管理的交叉研究,为软件工程领域的测试智能化发展提供了基础支撑环境。
以上内容由遇见数据集搜集并总结生成



