five

Defects4REST

收藏
github2026-01-30 更新2026-01-25 收录
下载链接:
https://github.com/ANSWER-OSU/Defects4REST
下载链接
链接失效反馈
官方服务:
资源简介:
一个全面的基准和错误挖掘框架,用于系统地部署、测试和分析REST API应用程序中可重现的真实错误。该基准包括12个真实世界开源项目中的110个缺陷,以及部署脚本、复制步骤和详细的元数据。

A comprehensive benchmark and bug mining framework for systematically deploying, testing, and analyzing reproducible real-world bugs in REST API applications. This benchmark includes 110 defects from 12 real-world open-source projects, as well as deployment scripts, reproduction steps and detailed metadata.
创建时间:
2026-01-03
原始信息汇总

Defects4REST 数据集概述

数据集基本信息

  • 数据集名称:Defects4REST Version 1.0
  • 简介:一个用于系统化部署、测试和分析REST API应用程序中可复现真实错误的综合基准和错误挖掘框架。
  • 规模:包含110个缺陷,涵盖12个真实世界的开源项目。

核心特性

  • 单命令部署:可即时部署系统的错误版本或修复版本。
  • 预配置的、特定于错误的环境:为每个错误初始化所需的复制设置,例如管理员账户、API令牌、测试数据或其他必要的配置。
  • 逐步指南:为所有110个错误提供详细的、特定于错误的复制步骤。

支持的项目与缺陷数量

项目 缺陷数量
awx 5
dolibarr 25
enviroCar-server 4
flowable-engine 5
kafka-rest 3
mastodon 5
netbox 6
nocodb 6
podman 23
restcountries 16
seaweedfs 9
signal-cli-rest-api 3

完整错误列表见:https://github.com/ANSWER-OSU/Defects4REST/blob/main/bug_replication/README.md

安装与使用

先决条件

  • Linux / macOS:Python 3.9+、Docker和Docker Compose、Git、Go 1.16+。
  • Windows:Python 3.9+、Docker和Docker Compose、Git、Go 1.16+、安装有Ubuntu的WSL2、启用WSL集成的Docker Desktop。
  • 项目特定要求(Podman):仅复制Podman项目的缺陷时需要。需Linux环境、sudo权限及特定系统包。

从源代码安装

bash git clone https://github.com/ANSWER-OSU/Defects4REST.git cd Defects4REST pip install -e . defects4rest --help

基本用法

  • 查看错误详情:defects4rest info -p <project> -i <issue>
  • 部署错误版本:defects4rest checkout -p <project> -i <issue> --buggy --start
  • 部署修复版本:defects4rest checkout -p <project> -i <issue> --patched --start
  • 清理环境:defects4rest checkout -p <project> -i <issue> --clean

详细文档:

  • info命令:https://github.com/ANSWER-OSU/Defects4REST/blob/main/docs/commands/info.md
  • checkout命令:https://github.com/ANSWER-OSU/Defects4REST/blob/main/docs/commands/checkout.md

数据内容与规范

  • OpenAPI规范:每个错误的OpenAPI规范文件位于 bug_replication/<project>/<project>#<issue>/<project>#<issue>_spec.json/yaml 路径下。
    • 示例:https://github.com/ANSWER-OSU/Defects4REST/blob/main/bug_replication/awx/awx%2311130/awx%2311130_spec.json

REST API缺陷分类法

缺陷类型 子缺陷类型
配置与环境问题 (T1) 容器与资源配额处理错误 (ST1)
作业执行与工作流配置缺陷 (ST2)
环境特定行为与配置错误 (ST3)
数据验证与查询处理错误 (T2) POST API中的模式与负载验证错误 (ST4)
查询过滤器与搜索参数处理错误 (ST5)
认证、授权与会话管理问题 (T3) 认证与令牌管理错误 (ST6)
会话、令牌与账户生命周期管理错误 (ST7)
集成、中间件与运行时环境故障 (T4) REST API中的中间件集成故障 (ST8)
容器化API中的进程信号与分组问题 (ST9)
运行时与依赖错误 (ST10)
数据存储、访问与卷错误 (T5) 卷与文件上传/访问错误 (ST11)
数据库/表用户访问处理错误 (ST12)
分布式系统与集群故障 (T6) 索引与集群协调故障 (ST13)

贡献与许可

  • 贡献:欢迎贡献新缺陷,指南见:https://github.com/ANSWER-OSU/Defects4REST/blob/main/docs/ADDING_BUGS.md
  • 许可证:本项目采用MIT许可证,详情见:https://github.com/ANSWER-OSU/Defects4REST/blob/main/LICENSE
搜集汇总
数据集介绍
main_image_url
构建方式
在REST API应用缺陷研究领域,Defects4REST Version 1.0的构建体现了系统化与可复现性的核心理念。该数据集通过精心筛选12个真实世界的开源项目,从中提取了110个具有代表性的缺陷案例。每个缺陷均配备了详细的部署脚本、复制步骤及元数据,确保了实验环境的可重复搭建。构建过程中,团队为每个缺陷初始化了特定的预配置环境,包括管理员账户、API令牌及测试数据等必要组件,从而在单一命令下即可部署缺陷或修复版本,为后续的实证研究奠定了坚实基础。
使用方法
利用Defects4REST进行缺陷研究,研究者可通过命令行工具高效操作。安装后,使用`defects4rest info`命令可查阅特定缺陷的详细信息,而`defects4rest checkout`则支持一键部署缺陷或修复版本的环境,并可通过附加参数启动服务或清理资源。数据集为每个缺陷提供了OpenAPI规范文件,便于进行接口测试与验证。这种集成化的使用方法,不仅简化了实验流程,也支持对REST API缺陷的自动化分析与比较研究。
背景与挑战
背景概述
随着REST API在现代分布式系统中的广泛应用,其可靠性与安全性成为软件工程领域的关键研究课题。Defects4REST Version 1.0由ANSWER-OSU研究团队构建,作为一个综合性基准测试与缺陷挖掘框架,旨在系统性地部署、测试和分析REST API应用中的真实缺陷。该数据集涵盖了12个开源项目的110个缺陷,并提供了详细的部署脚本、复现步骤及元数据,为API测试、缺陷检测及修复技术的研究提供了标准化实验平台,显著推动了软件质量保障领域的发展。
当前挑战
在REST API缺陷研究领域,现有工作常面临缺陷样本稀缺、复现环境复杂及分类体系不统一等挑战。Defects4REST通过构建涵盖多类缺陷的基准数据集,直接应对了缺陷多样性不足与实验可重复性低的难题。在数据集构建过程中,研究人员需克服跨项目环境配置异构性、缺陷触发条件精确还原以及元数据标准化等困难,这些挑战的解决确保了数据集的科学性与实用性,为后续研究奠定了坚实基础。
常用场景
经典使用场景
在REST API软件测试与质量保障领域,Defects4REST数据集为研究人员提供了一个标准化的缺陷基准平台。该数据集通过集成12个真实开源项目的110个缺陷,支持单命令部署和预配置环境,使得用户能够便捷地复现和分析REST API中的各类错误。这一经典使用场景极大地促进了自动化测试工具、缺陷检测算法以及API可靠性评估方法的开发与验证,为软件工程实验提供了可重复的实证基础。
解决学术问题
Defects4REST数据集有效解决了REST API缺陷研究中缺乏标准化、可复现基准的学术难题。通过提供详细的缺陷分类、部署脚本和复制步骤,该数据集支持对配置错误、数据验证、身份认证、集成故障等六类常见缺陷进行系统性分析。其意义在于推动了软件测试、程序分析以及软件安全领域的方法创新,为理解REST API故障模式、提升软件可靠性提供了关键的数据支撑和实验平台。
实际应用
在实际应用层面,Defects4REST数据集被广泛应用于企业级API开发与运维流程中。开发团队可以利用该数据集训练和验证自动化测试工具,提升API接口的健壮性和安全性;质量保障工程师则能基于其缺陷分类体系,设计更全面的测试用例,覆盖容器化部署、分布式集群等复杂环境。此外,该数据集也为API网关、中间件等基础设施的容错设计与故障诊断提供了实用的参考案例。
数据集最近研究
最新研究方向
在REST API质量保障领域,Defects4REST数据集已成为推动自动化缺陷检测与修复技术发展的关键资源。该数据集整合了12个开源项目的110个真实缺陷,涵盖配置环境、数据验证、认证授权等六类典型故障,为学术界和工业界提供了可复现的基准测试平台。当前研究聚焦于利用该数据集训练智能模型,以提升API漏洞的自动识别与定位能力,特别是在容器化部署和分布式系统场景下,其精细化的缺陷分类体系正助力于构建更鲁棒的API安全防护机制。这一进展不仅加速了微服务架构的可靠性验证,也为持续集成环境中的异常预测提供了实证基础,显著降低了RESTful服务在复杂生态中的运维风险。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作