RESTCov: A Tool for Structural Coverage Analysis of REST APIs
University of Antwerp(安特卫普大学)
本文提出轻量级工具RESTCov,可基于OpenAPI规范和HTTP请求/响应日志计算REST API结构覆盖率,生成可读报告,用于检查覆盖率缺口、诊断不匹配问题及评估测试套件。
2026-08-31 cs.SE
Empirical Comparison of Black-box Test Case Generation Tools for RESTful APIs
在文献中,我们可以找到自动生成RESTful API测试用例的研究工具,解决这个特定编程领域的特殊性。但是,这些工具之间没有直接的比较,无法指导开发人员决定哪种工具最适合他们的REST API项目。在本文中,我们提出了REST API的自动黑盒测试用例生成方法的实证比较结果。我们调查了最近文献中提出的可用的黑盒测试工具,找到了四个可用的原型:RestTestGen,RESTler,bBOXRT和RESTest。我们使用这些工具为14个真实的REST服务生成测试用例。然后,从鲁棒性(即,成功率)和测试覆盖率。在考虑的工具中,RESTler似乎是最可靠的,能够成功地测试所有案例研究(其他工具经历了崩溃)。相反,RestTestGen生成的测试用例覆盖率最高,这表明它的测试策略在测试REST API方面最有效。
2021-08-18 cs.SE
You Can REST Now: Automated REST API Documentation and Testing via LLM-Assisted Request Mutations
本文提出RESTSpecIT,一种利用LLM自动推断REST API文档并进行黑盒测试的方法,通过生成和变异API请求种子,在最少用户输入下实现高效文档推断与测试辅助。
2025-07-15 cs.SE
foREST: A Tree-based Approach for Fuzzing RESTful APIs
表述性状态转移(REST)是Web应用程序和云广泛采用的架构。用户可以根据其应用程序接口(即RESTful API)的规范调用此类服务。现有的模糊RESTful API的方法通常基于经典的API依赖图。然而,由于API之间的依赖关系激增,这种依赖关系对于REST服务来说效率低下。在本文中,我们提出了一种新的基于树的方法,可以更好地捕获基本的依赖关系,并在很大程度上提高了RESTful API模糊的效率。特别地,跨多个API的端点的层次信息使我们能够构建API树,并且树节点的关系可以指示资源依赖的优先级,\textit{e.g.,}节点更可能依赖于其父结点而不是其后代或兄弟节点。在评估部分,我们首先确认,这种基于树的方法是更有效的比传统的基于图的方法。然后,我们应用我们的工具模糊两个现实世界的RESTful服务,并比较性能与两个国家的最先进的工具,EvoMaster和RESTler。我们的结果表明,在所有的实验中,foREST可以提高代码覆盖率,从11.5%到82.5%。此外,我们的工具发现了11个以前未知的新错误。
2022-03-06 cs.SE
Restats: A Test Coverage Tool for RESTful APIs
测试覆盖率是用来评估测试套件完整性的标准度量。覆盖率通常在源代码上计算,通过评估源代码实体的范围(例如,语句、数据依赖、控制依赖)。在考虑REST API时,评估测试套件完整性的另一个角度是服务定义。本文介绍了Restats,一个用于REST API的测试覆盖工具,它支持八个最先进的测试覆盖度量,具有黑盒视角,即,仅依赖于测试中REST API的OpenAPI接口规范。事实上,度量是通过只观察测试时发生的HTTP请求和响应来计算的,并且不需要访问REST API的源代码/编译代码。这些覆盖率度量对以下人员来说很有用:(i)从事开发和维护任务的开发人员和测试工程师;(ii)想要评估验收测试完整性的利益相关者和客户;(iii)对比较不同的自动化测试用例生成策略感兴趣的研究人员。
2021-08-18 cs.SE
Detecting HTTP Status Code Misuses in REST APIs via Static and Dynamic Analysis
University of Namur(南纳慕尔大学);Kristiania University of Applied Sciences(克里斯蒂安应用科学大学);Oslo Metropolitan University(奥斯陆大都会大学);SnT, University of Luxembourg(卢森堡大学科学与技术中心)
本文提出结合静态与动态分析的方法,基于30条规则检测REST API中HTTP状态码误用,经2,625个真实规范验证,发现误用频繁且两种方法互补有效。
2026-09-14 cs.SE
Exploring Behaviours of RESTful APIs in an Industrial Setting
针对REST API测试中帮助用户理解API行为的挑战,本文提出一组通用行为属性,用于生成API行为示例,既辅助理解API又可作为自动化测试用例源,且在给定时间内达到与现有方法相似的代码覆盖率。
2023-10-26 cs.SE
REST API Testing in DevOps: A Study on an Evolving Healthcare IoT Application
本研究针对DevOps场景下医疗物联网应用持续演进的REST API测试需求,评估5款主流自动化REST API测试工具在真实应用14个版本、17个API上的回归测试效果,发现工具可检测部分故障与回归但存在大量无效测试开销。
2025-07-31 cs.SE
Morest: Model-based RESTful API Testing with Execution Feedback
RESTful API可以说是访问Web服务的最流行的端点。黑盒测试是确保RESTful API可靠性的新兴技术之一。测试RESTful API的主要挑战是需要正确的API操作调用序列以进行深入测试。为了构建有意义的操作调用序列,研究人员提出了基于OpenAPI规范学习和利用API依赖关系的技术。然而,这些技术要么缺乏对所有API如何连接的整体意识,要么缺乏自适应地固定学习知识的灵活性。在本文中,我们提出了Morest,一个基于模型的RESTful API测试技术,建立和维护一个动态更新的RESTful-service属性图(RPG)建模的RESTful-service的行为,并指导调用序列生成。我们对Morest进行了经验评估,结果表明,与最先进的技术相比,Morest可以成功请求平均多152.66%-232.45%的API操作,覆盖26.16%-103.24%的代码行,并检测40.64%-215.94%的错误。总的来说,我们将Morest应用于6个真实世界的项目,发现了44个错误(其中13个无法通过现有方法检测到)。具体来说,其中2个已确认的bug来自Bitbucket,这是一个著名的代码管理服务,拥有超过600万用户。
2022-04-26 cs.SE
Detecting and Mitigating Flakiness in REST API Fuzzing
Beihang University(北京航空航天大学);Kristiania University of Applied Sciences and Oslo Metropolitan University(克里斯蒂亚纳应用科学大学与奥斯陆都会大学)
本文研究了EvoMaster生成的REST API测试中的不稳定性,通过36个REST API的实证研究,分析了不稳定性来源,并提出FlakyCatch工具来检测和缓解不稳定性。
2026-03-30 cs.SE
QuickREST: Property-based Test Generation of OpenAPI-Described RESTful APIs
RESTful API是一种越来越常见的公开软件系统功能的方式,因此,寻找自动测试和验证此类API的方法具有很高的意义。为了降低行业采用的障碍,这些方法需要简单易用。本文介绍了一种探索RESTful API行为的方法。这是通过使用从描述测试中的REST API的OpenAPI文档中生成的基于属性的自动测试来完成的。我们描述了这种方法如何创建工件,这些工件既可以作为基于属性的测试生成器,也可以作为结果验证的来源(即,作为测试神谕)。在工业和开源服务上的实验结果表明,这种方法是一种查找真正故障的低成本方法。此外,它支持通过自动暴露规范和实现的不一致来构建关于被测系统的额外知识。由于测试是从OpenAPI文档中生成的,因此该方法会随着REST API的发展而自动发展测试用例。
2019-12-20 cs.SE
REST API Fuzzing by Coverage Level Guided Blackbox Testing
随着Web应用程序的增长,REST API已成为服务之间的主要通信方法。为了保证系统的可靠性和安全性,软件质量可以通过有效的测试方法来保证。黑盒模糊测试是进行大规模测试的有效方法之一。然而,传统的黑盒模糊测试产生随机数据而不判断输入的质量。我们为REST API实现了一个黑盒模糊测试方法。通过测试覆盖水平反馈,解决了在不知道突变有效性的情况下盲目突变的问题。我们还通过降低REST API的测试复杂度来增强变异策略,生成更合适的测试用例来覆盖可能的路径。我们通过测试两个大型开源项目来评估我们的方法,并报告和确认了89个错误。此外,我们在APIs.guru中发现了来自64个远程API服务的351个错误。该工作在https://github.com/iasthc/hsuan-fuzz上。
2021-12-31 cs.SE
Automated Program Repair Based on REST API Specifications Using Large Language Models
针对REST API误用调试难的问题,研究提出dcFix方法,结合违规代码片段与API规范构建提示,借助LLM自动修复,实验显示其检测准确且性能优于无违规提示的基线方法。
2025-10-29 cs.SE
Which RESTful API Design Rules Are Important and How Do They Improve Software Quality? A Delphi Study with Industry Experts
一些研究分析了现有的Web API对REST的约束,以估计最先进的API之间的REST合规程度。这些研究表明,只有少数Web API是真正的REST风格。此外,理论上的REST概念和实际实现之间的不匹配使我们相信,实践者在其重要性和对软件质量的影响方面对许多规则和最佳实践的看法与这些REST概念不同。因此,我们进行了一项Delphi研究,在这项研究中,我们向来自行业的八位Web API专家提出了82条REST API设计规则的目录。对于每个规则,我们让他们评估其重要性和软件质量影响。作为共识,我们的专家将28条规则评为高重要性,17条中等重要性,37条低重要性。此外,他们认为可用性、可维护性和兼容性是最受影响的质量属性。详细的分析显示,专家们认为达到Richardson成熟度等级2的规则是至关重要的,而达到等级3则不那么重要。由于所获得的共识数据可以作为设计工具支持的方法用于RESTful API的自动质量评估的有价值的输入,我们简要讨论了这种方法的要求,并评论了最重要的规则的适用性。
2021-07-30 cs.SE
Test Amplification for REST APIs Using "Out-of-the-box" Large Language Models
本文研究了使用“开箱即用”的大型语言模型(ChatGPT 和 GitHub Copilot)来放大 REST API 测试套件,通过覆盖率和可理解性评估测试效果,并总结了生成最强测试套件的提示词指南与经验教训。
2025-04-03 cs.SE
Automated Test Generation for REST APIs: No Time to Rest Yet
现代Web服务通常为客户端提供REST API以访问其功能。这些API为自动化测试带来了独特的挑战和机遇,推动了最近许多技术和工具的开发,这些技术和工具使用各种策略为API端点生成测试用例。理解这些技术如何相互比较是困难的,因为它们是在不同的基准上进行评估的,使用不同的指标。为了填补这一空白,我们进行了一项实证研究,旨在了解REST API自动化测试的前景,并指导该领域的未来研究。我们首先通过系统的选择过程确定了一组10个最先进的REST API测试工具,其中包括由研究人员和实践者开发的工具。然后,我们将这些工具应用于20个真实世界的开源RESTful服务的基准测试,并根据实现的代码覆盖率和触发的独特故障来分析它们的性能。这种分析使我们能够确定所考虑的工具及其基本策略的优点,缺点和局限性,以及我们的研究结果对这一领域未来研究的影响。
2022-07-06 cs.SE
REST-ler: Automatic Intelligent REST API Fuzzing
随着亚马逊网络服务和微软Azure等强大的云计算平台的出现,云服务最近出现了爆炸式增长。如今,大多数云服务都是通过REST API访问的,而Swagger可以说是REST API最流行的接口描述语言。Swagger规范描述了如何通过其REST API访问云服务(例如,服务可以处理什么请求以及可以预期什么响应)。本文介绍了REST-ler,第一个自动化智能REST API安全测试工具。REST-ler分析Swagger规范并生成测试,通过其REST API执行相应的云服务。每个测试都被定义为一系列请求和响应。REST-ler通过以下方式智能地生成测试:(1)推断Swagger规范中声明的请求类型之间的依赖关系(例如,推断“请求B不应在请求A之前执行”,因为B将由A返回的资源id x作为输入变元)以及通过(2)分析来自在先前测试执行期间观察到的响应的动态反馈以便生成新的测试(例如,学习“请求序列A;B之后的请求C被服务拒绝”,因此在将来避免这种组合)。我们表明,这两种技术是必要的,彻底行使测试下的服务,同时修剪可能的请求序列的大搜索空间。我们还讨论了REST-ler在测试GitLab(一个大型流行的开源自托管Git服务)中的应用,以及发现的新错误。
2018-06-26 cs.SE
Leveraging Large Language Models to Improve REST API Testing
针对现有REST API测试工具忽略规范中非结构化自然语言描述导致测试覆盖不足的问题,提出RESTGPT方法,利用大语言模型提取规则、生成参数值以增强规范,在规则提取和值生成上均优于现有技术。
2024-01-30 cs.SE
RBCTest: Leveraging LLMs to Mine and Verify Oracles of API Response Bodies for RESTful API Testing
Katalon Inc.(Katalon公司)
RBCTest利用LLM挖掘RESTful API响应体约束并验证Oracle,提高API测试的自动化和准确性。
2026-08-19 cs.SE
REST API Testing with Verified LLM-Inferred Dependencies and Response-Driven Refinement
University of Science, VNU-HCM(胡志明市国立大学科学大学);University of Texas at Dallas(德克萨斯大学达拉斯分校);Katalon LLC(Katalon有限责任公司)
本文提出APIPilot框架,通过执行验证LLM推断的REST API依赖关系,结合响应驱动优化,在16个真实API上实现高覆盖率与成功率,优于现有基线。
2026-08-21 cs.SE
Test Amplification for REST APIs via Single and Multi-Agent LLM Systems
该研究针对REST API测试套件构建难度大的问题,探索用单、多智能体LLM系统扩增测试用例,经多维度对比验证了二者在提升覆盖率、检测缺陷上的效果,并明确了其计算与能耗成本。
2025-08-04 cs.SE
RESTRuler: Towards Automatically Identifying Violations of RESTful Design Rules in Web APIs
基于HTTP的RESTful API是使数据和功能可用于应用程序和软件服务的最重要方法之一。然而,API设计的质量强烈影响API的可理解性和可用性,并且为此指定了许多规则。虽然我们有证据证明许多设计规则的有效性,但实践者仍然很难在他们的设计中识别违反规则的行为。因此,我们提出了RESTRECT,一个基于Java的开源工具,使用静态分析来检测OpenAPI描述中的设计规则违反。目前的原型支持14条规则,这些规则超出了简单的语法检查,部分依赖于自然语言处理。模块化架构也使得实现新规则变得容易。为了评估RESTRIDER,我们使用了超过2,300个公开的OpenAPI描述进行了基准测试,并请7位API专家构建了111个复杂的规则违反。为了提高健壮性,RESTRUCTURE成功分析了99%的真实OpenAPI定义,其中一些由于过大而失败。在性能效率方面,该工具对大多数文件表现良好,可以在不到23秒的时间内分析84%的文件,CPU和RAM使用率较低。最后,在有效性方面,RESTRIONAL实现了91%的精确度(每个规则的范围从60%到100%)和68%的召回率(范围从46%到100%)。基于规则实现之间的这些变化,我们确定了几个改进的机会。虽然RESTRECT仍然是一个研究原型,但评估表明,该工具对错误非常鲁棒,对于大多数API来说都是资源有效的,并且显示出良好的精度和良好的召回率。从业者可…
2024-02-21 cs.SE
Advanced White-Box Heuristics for Search-Based Fuzzing of REST APIs
本文针对REST API自动化测试中黑盒模糊测试受规范不足模式限制的问题,提出一系列新颖的白盒启发式方法,处理API模式与SQL数据库中规范不足的约束,并作为EvoMaster扩展实现,实证表明在部分API上取得显著改善。
2023-09-15 cs.SE
LRASGen: LLM-based RESTful API Specification Generation
Macau University of Science and Technology(澳门科技大学);Macau University of Science and Technology Zhuhai MUST Science and Technology Research Institute(澳门科技大学珠海慕思科学技术研究院);Beihang University(北京航空航天大学);University of Nottingham Ningbo China(宁波诺丁汉大学);China University of Mining and Technology(中国矿业大学)
该研究提出LRASGen,即首个结合LLM与API源代码生成RESTful API的OAS的方法,在20个真实API上的实验显示其生成的规范覆盖更多缺失实体,准确性较好。
2026-08-17 cs.SE
Reinforcement Learning-Based REST API Testing with Multi-Coverage
本文提出基于Q-learning的REST API测试方法MUCOREST,通过最大化代码覆盖率和输出覆盖率提升缺陷发现能力,实验表明其缺陷发现数量比现有方法高11.6%-261.1%,且所需API调用更少。
2024-10-20 cs.SE
APIRL: Deep Reinforcement Learning for REST API Fuzzing
Imperial College London(帝国理工学院);The Alan Turing Institute(艾伦·图灵研究所)
本文提出APIRL,一种基于深度强化学习的全自动REST API模糊测试工具,利用在JSON数据上预训练的transformer模块反馈来学习测试结果的细微差别并泛化到未知端点,实验证明其比现有技术发现更多漏洞且所需测试用例更少。
2024-12-20 cs.AI cs.NI cs.SE
Testing Real-World Healthcare IoT Application: Experiences and Lessons Learned
本文评估了RESTest方法在真实医疗物联网应用上的测试效果,发现其能发现多处API故障并达到约56%覆盖率,为自动化系统级测试提供了经验与教训。
2023-09-08 cs.SE
Prompt-Based REST API Test Amplification in Industry: An Experience Report
University of Antwerp(安特卫普大学);Flanders Make(佛兰德斯制造创新中心);Katoen Natie(卡滕纳蒂公司)
本文通过在工业环境中应用基于提示的REST API测试放大技术,验证了其在提高测试覆盖率和发现异常方面的有效性。
2026-01-25 cs.SE
DeepREST: Automated Test Case Generation for REST APIs Exploiting Deep Reinforcement Learning
针对现有REST API黑盒测试依赖OAS文档、缺乏业务逻辑语义导致测试用例有效性不足的问题,提出基于深度强化学习的DeepREST方法,通过好奇心驱动探索隐式约束、利用成功交互生成输入、变异交互提升覆盖,实现更高的测试覆盖率与故障检测能力。
2024-08-16 cs.SE
Generating GraphQL-Wrappers for REST(-like) APIs
GraphQL是一种查询语言,它是一种基于此的范例,用于实现客户端-服务器交互的Web应用程序编程接口(API)。使用GraphQL,客户端在类型化查询中定义精确的嵌套数据需求,这些需求由服务器针对(可能是多个)后端系统(如数据库,对象存储或其他API)解决。客户端在单个请求中只接收他们关心的数据。然而,现有REST(类)API的提供者需要实现额外的GraphQL接口来实现这些优势。我们在这里评估为现有REST(类)API自动生成GraphQL包装器的可行性。包装器在接收到GraphQL查询时,将其转换为针对目标API的请求。我们讨论了创建这样的包装器的挑战,包括处理数据卫生,身份验证,或处理嵌套查询。此外,我们提出了一个原型实现OASGraph。OASGraph将描述现有REST(类)Web API的OpenAPI规范(OAS)作为输入,并为其生成GraphQL包装器。我们通过运行OASGraph以及现有的开源替代方案,对959个公开可用的OAS进行评估。这个实验表明,OASGraph优于现有的替代方案,能够为89.5%的API创建GraphQL包装器-然而,在许多情况下存在局限性。随后对OASGraph产生的错误和警告的分析表明,在评估的OAS中缺少或模糊的信息阻碍了创建完整的包装器。最后,我们展示了IBM Watson Language Translator API的一个用例…
2018-09-21 cs.SE
A Multi-Agent Approach for REST API Testing with Semantic Graphs and LLM-Driven Inputs
Georgia Institute of Technology(佐治亚理工学院);IBM Research(IBM研究院)
本文提出AutoRestTest,一种结合多智能体强化学习、语义属性依赖图和大型语言模型的黑盒REST API测试工具,通过四个智能体协作优化API探索,在真实服务上显著提升覆盖率与故障检测能力。
2025-01-22 cs.AI cs.SE
Statically Checking Web API Requests in JavaScript
许多JavaScript应用程序对Web API执行HTTP请求,依赖于请求URL、HTTP方法和请求数据通过字符串操作正确构造。传统的编译时错误检查,例如调用Java中不存在的方法,无法检查此类请求是否符合Web API的要求。本文提出了一种在JavaScript中静态检查Web API请求的方法。我们的方法首先使用过程间字符串分析提取请求的URL字符串,HTTP方法和相应的请求数据,然后检查请求是否符合给定的Web API规范。我们通过检查从GitHub挖掘的JavaScript文件中的Web API请求是否与公开的API规范一致或不一致来评估我们的方法。从范围内的6575个请求中,我们的方法确定了请求的URL和HTTP方法是否与Web API规范一致或不一致,精度为96.0%。我们的方法还正确地确定了提取的请求数据是否与数据需求一致或不一致,有效负载数据的精度为87.9%,查询数据的精度为99.9%。在对不一致案例的系统分析中,我们发现其中许多是由于客户端代码中的错误造成的。这里提出的检查器可以与代码编辑器或持续集成工具集成,以警告程序员代码包含潜在的错误请求。
2017-02-15 cs.SE
Adaptive REST API Testing with Reinforcement Learning
提出一种结合强化学习的自适应 REST API 测试技术,通过动态分析请求与响应数据并对操作和参数进行优先级排序,在代码覆盖率、效率和故障发现能力上优于现有工具。
2023-09-08 cs.SE
DualMine: Static-Dynamic REST API Constraint Discovery with Dual Validation
University of Science, VNU-HCM(胡志明市国立大学科学大学);Universidad de Sevilla(塞维利亚大学);University of Texas at Dallas(德克萨斯大学达拉斯分校);Katalon LLC(Katalon有限责任公司)
DualMine提出混合框架,结合静态规范挖掘与动态不变量挖掘,通过双重验证和反例引导细化,在39个真实API上提升约束质量并检测48个故障。
2026-09-24 cs.SE
RESTful or RESTless -- Current State of Today's Top Web APIs
Web服务领域的最新发展表明,可用的Web API以及构建在其上的应用程序的数量都在不断增加。这种趋势通常归因于REST架构原则的广泛采用。尽管如此,Web API的开发是相当自主的,由提供者决定如何实现、公开和描述Web API。然后,各个实现通常以文本形式记录为网页的一部分,在内容,结构和详细程度方面显示出各种各样的内容。因此,客户端应用程序开发人员被迫手动处理和解释文档。在实现更高水平的自动化并对当前的实践和技术进行任何重大改进之前,我们需要更深入地了解它们的相似性和差异性。因此,在本文中,我们通过检查文档,对最流行的Web API进行了全面的分析。我们提供了关于常见描述形式、输出类型、API参数的使用、调用支持、可重用性级别、API粒度和身份验证细节的结论。收集的数据为识别缺陷奠定了坚实的基础,并可用作设计Web API开发的通用标准和指南的基础。
2019-02-20 cs.CY cs.DB cs.SE
Log-based, Business-aware REST API Testing
Nanjing University(南京大学);Tencent(腾讯)
本文提出LoBREST,通过利用历史请求日志和业务约束,有效测试复杂业务功能,优于现有工具,在17个真实服务中检测到108个5XX错误。
2026-04-09 cs.SE
Database-Augmented RAG for Automated Repair of REST API Misuses
Ritsumeikan University(立命馆大学)
本研究构建11种不同数据库结构的RAG配置,对比基线方法,发现按版本和内容类型组织API规范的四数据库RAG方法,能将REST API误用修复率从54.3%提升至88.6%。
2026-09-01 cs.IR cs.SE
Do RESTful API Design Rules Have an Impact on the Understandability of Web APIs? A Web-Based Experiment with API Descriptions
本文通过一项105人参与的受控Web实验,实证研究了12条RESTful API设计规则对可理解性的影响,发现大多数规则违反会显著降低理解表现和主观可理解性,为API设计规则的重要性提供了首个实证证据。
2023-07-20 cs.SE
Fuzzing REST APIs in Industry: Necessary Features and Open Problems
Kristiania University of Applied Sciences(克里斯蒂亚尼亚应用科学大学);Oslo Metropolitan University(奥斯陆都市大学);Volkswagen AG(大众汽车股份公司);University of Buenos Aires(布宜诺斯艾利斯大学);CONICET(阿根廷国家科学研究委员会);Erciyes University(埃尔吉耶斯大学);Beihang University(北京航空航天大学)
本文探讨了在工业中使用EvoMaster模糊测试REST API的挑战,总结了经验教训和需要改进的特征,同时指出了仍需解决的实际研究问题。
2026-04-02 cs.SE
RESTifAI: LLM-Based Workflow for Reusable REST API Testing
RESTifAI是一种基于大语言模型的工具,用于生成可重用且适用于CI/CD的REST API测试,通过系统性构建测试场景并验证功能和鲁棒性。
2025-12-09 cs.SE
APIScanner -- Towards Automated Detection of Deprecated APIs in Python Libraries
Python库广泛用于机器学习和科学计算任务。Python库中的API由于功能增强和错误修复而被弃用,与其他语言相同。不鼓励在进一步的软件开发中使用这些弃用的API。由于项目中使用了大量的API调用,手动检测和替换弃用的API是一项繁琐且耗时的任务。此外,缺乏适当的文档,这些弃用的API使任务具有挑战性。为了应对这一挑战,我们提出了一种算法和工具APIScanner,可以自动检测Python库中的弃用API。该算法使用抽象语法树(AST)解析库的源代码,并通过装饰器,硬编码警告或注释来识别弃用的API。APIScanner是一个Visual Studio代码扩展,它在编写源代码时突出显示并警告开发人员使用不推荐使用的API元素。该工具可以帮助开发人员避免在不执行代码的情况下使用已弃用的API元素。我们在六个流行的Python库上测试了我们的算法和工具,检测到871个弃用的API元素中的838个。APIScanner演示:https://youtu.be/1hy_ugf-iek。文档、工具和源代码可以在这里找到:https://rishitha957.github.io/APIScanner。
2021-05-10 cs.SE
Agentic LLMs for REST API Test Amplification: A Comparative Study Across Cloud Applications
本研究评估了单智能体与多智能体 LLM 配置在四个云应用中的 REST API 测试增强效果,证明其能有效提升端点与参数覆盖率并揭示缺陷,同时分析了计算成本与效率的权衡。
2025-10-31 cs.SE
SATORI: Static Test Oracle Generation for REST APIs
针对REST API测试工具支持的测试预言类型有限的问题,提出基于大语言模型、通过分析OpenAPI规范生成测试预言的静态方法SATORI,其F1值优于动态方法AGORA+,二者互补可发现90%的标注预言,还在主流API中发现18个漏洞。
2025-09-01 cs.SE
EMF-REST: Generation of RESTful APIs from Models
本文提出 EMF-REST 方法,利用模型驱动工程技术从 EMF 数据模型自动生成遵循 REST 原则的 Web API,并集成模型验证与安全能力,提升 Web 开发敏捷性并为 MDE 实践者提供云建模基础。
2015-04-14 cs.SE
From REST to MCP: An Empirical Study of API Wrapping and Automated Server Generation for LLM Agents
Grand Valley State University(大急流城州立大学);University of North Carolina Wilmington(北卡罗来纳大学威尔明顿分校);Oakland University(奥克兰大学);DePaul University(德保罗大学)
本文通过分析116个MCP服务器,探讨了其对REST的依赖及集成策略,评估了自动化生成和修复方法对正确性和复杂度的影响,揭示了MCP服务器的操作暴露模式。
2026-04-06 cs.SE
Pricing4APIs: A Rigorous Model for RESTful API Pricings
本文提出Pricing4APIs定价建模框架及SLA4OAI序列化格式,并配套自动化验证工具,通过分析268个真实API和54个定价模型验证其有效性与表达能力。
2023-11-21 cs.SE
Using OAI Overlay to Enhance REST API Fuzzing
Erciyes University(埃尔吉耶斯大学);Kristiania University College(克里斯蒂安尼亚大学学院);UniMetrik Teknoloji Ltd. Şti.(UniMetrik技术有限公司);Beihang University(北京航空航天大学);Volkswagen AG(大众汽车股份公司);Meituan(美团);Oslo Metropolitan University(奥斯陆都市大学)
研究如何增强REST API模糊测试,通过扩展EvoMaster支持OAI覆盖文件,经对全球五家企业的五个API测试,表明该方法可行。
2026-07-07 cs.SE
RESTOR: Automated Test Oracle Generation for RESTful APIs via Reinforcement Learning
Fudan University(复旦大学);ByteDance(字节跳动)
针对RESTful API测试中定义可靠测试预言机的挑战,Restor框架利用强化学习,通过数据增强管道微调大语言模型生成测试断言,在工业数据集和生产工作流程中表现出色,提升测试用例采用率并减少人工QA工作。
2026-07-28 cs.SE
OOPS: Automated generation of REST API specification via LLMs
Beihang University(北京航空航天大学);Sino-German Joint Software Institute, Beihang University(北京航空航天大学中德工程学院);School of Computer Science and Engineering, Beihang University(北京航空航天大学计算机科学与工程学院);School of Cyber Science and Technology, Beihang University(北京航空航天网络空间安全学院);Beijing Key Laboratory of Networking Technology(北京市网络技术重点实验室)
提出OOPS方法,利用LLM对服务器代码进行静态分析,通过端点方法提取和OAS生成两步工作流,自动生成高质量OpenAPI规范,无需技术特定规则或人工干预。
2026-06-07 cs.SE
Automatically Extracting Web API Specifications from HTML Documentation
Web API规范是机器可读的API描述。这些规范与相关工具相结合,简化并支持API的使用。然而,尽管Web API的分布越来越多,但规范很少,其创建和维护严重依赖于第三方的手动工作。在本文中,我们提出了一个自动的方法和相关的工具,称为D2 Spec提取规范的Web API文档页面。给定API上的种子在线文档页面,D2 Spec首先爬取API上的所有文档页面,然后使用一组机器学习技术来提取基本URL、路径模板和HTTP方法,它们共同描述API的端点。我们评估了D2 Spec是否可以从120个Web API的文档中准确提取端点。实验结果表明,D2 Spec对基本URL的识别准确率为87.5%,对路径模板的生成准确率为81.3%,召回率为80.6%,对HTTP方法的提取准确率为84.4%,召回率为76.2%。此外,我们发现D2 Spec在应用于已有API规范的API时很有用:D2 Spec揭示了Web API文档与其相应的公开规范之间的许多不一致之处。因此,Web API提供商可以使用D2 Spec来保持文档和规范的同步。
2018-01-26 cs.SE
Pythia: Grammar-Based Fuzzing of REST APIs with Coverage-guided Feedback and Learning-based Mutations
Columbia University(哥伦比亚大学);Microsoft Research(微软研究院)
本文介绍了Pythia,这是第一个模糊器,它通过覆盖率引导反馈和基于学习的变异策略来增强基于语法的模糊,用于有状态的REST API模糊。Pythia使用统计模型从结构上有效的种子输入中学习目标REST API的常见使用模式。然后,它通过注入少量偏离常见使用模式的噪声,同时仍然保持句法有效性,从而生成基于学习的突变。Pythia的变异策略有助于生成语法上有效的测试用例,覆盖率引导的反馈有助于优先考虑更有可能找到bug的测试用例。我们提出了三个生产规模的实验评估,开源云服务表明,Pythia优于以前的方法,无论是在代码覆盖率和新的错误发现。使用Pythia,我们发现了29个新的错误,我们正在向各自的服务所有者报告的过程中。
2020-05-23 cs.LG cs.SE
LlamaRestTest: Effective REST API Testing with Small Language Models
Georgia Institute of Technology(佐治亚理工学院);IBM Research(IBM研究院)
提出 LlamaRestTest 方法,通过微调和量化 Llama3-8B 模型生成真实测试输入并揭示参数依赖,实验证明小语言模型在 REST API 测试中优于大模型及现有工具。
2025-04-03 cs.AI cs.SE
WuppieFuzz: Coverage-Guided, Stateful REST API Fuzzing
The Netherlands Organisation for Applied Scientific Research (TNO)(荷兰应用科学研究组织);Radboud University(拉德堡德大学)
WuppieFuzz基于LibAFL构建,支持白盒、灰盒和黑盒模糊测试,通过OpenAPI生成初始输入集并利用变异器探索代码路径,自动化生成Harness以减少手动工作,通过Petstore API评估白盒方法的鲁棒性和不同功率计划的有效性。
2025-12-17 cs.SE
RAG Strategies for Natural Language-Based SQL Query and REST API Call Generation
IU International University of Applied Sciences(国际应用科学大学)
本文评估了三种RAG变体在生成SQL和API调用任务中的性能,发现CoRAG在混合文档环境下表现最佳,检索策略设计对自然语言接口至关重要。
2026-10-20 cs.AI cs.CL cs.SE