Skip to main content
QUICK REVIEW

[论文解读] Testing RESTful APIs: A Survey

Amid Golmohammadi, Man Zhang|arXiv (Cornell University)|Dec 30, 2022
Software System Performance and Reliability被引用 7
一句话总结

本综述分析了92篇关于RESTful API测试的学术论文,对自动化测试中的技术、工具和挑战进行了分类。研究识别出若干关键趋势,包括自2017年以来研究兴趣显著上升,黑盒测试占主导地位,以及在处理外部服务、数据库和规格不明确问题方面仍存在开放挑战。

ABSTRACT

In industry, RESTful APIs are widely used to build modern Cloud Applications. Testing them is challenging, because not only they rely on network communications, but also they deal with external services like databases. Therefore, there has been a large amount of research sprout in recent years on how to automatically verify this kind of web services. In this paper, we review the current state-of-the-art on testing RESTful APIs, based on an analysis of 92 scientific articles. This review categories and summarizes the existing scientific work on this topic, and discusses the current challenges in the verification of RESTful APIs.

研究动机与目标

  • 为RESTful API自动化测试的当前最先进技术提供系统性概述。
  • 识别并分类该领域中使用的研究技术、工具和评估实践。
  • 突出RESTful API测试中的开放挑战与研究空白,特别是关于外部依赖和规格限制的问题。
  • 通过提供对92篇该主题科学论文的结构化分析,支持未来研究。

提出的方法

  • 对主要学术数据库中92篇关于RESTful API测试的同行评审论文进行了系统性文献综述。
  • 采用正向与反向雪球法,以最小化遗漏相关研究的可能性,确保覆盖全面。
  • 通过多作者共识流程减少选择偏差,并提高论文纳入与数据提取的可靠性。
  • 根据发表趋势、测试技术(黑盒与白盒)、评估指标和工具功能对研究进行分类。
  • 通过主题编码分析研究中的开放问题与局限性,识别研究挑战。
  • 评估工具支持情况,包括开源原型与商业工具,重点关注测试用例生成和覆盖率指标等功能。

实验结果

研究问题

  • RQ1RQ1: 每年发表的RESTful API测试相关论文数量是多少?
  • RQ2RQ2: 这些论文在哪些学术期刊或会议上发表?
  • RQ3RQ3: 文献中关于RESTful API测试最常见的贡献是什么?
  • RQ4RQ4: 评估测试技术有效性的常用指标有哪些?
  • RQ5RQ5: 常用于RESTful API的自动化测试技术有哪些?

主要发现

  • 自2017年以来,对RESTful API测试的研究兴趣呈指数级增长,主要软件工程领域期刊与会议中发表的论文数量显著上升。
  • 黑盒测试在文献中占主导地位,许多方法依赖模糊测试(fuzzer-based)的测试用例生成和API规格分析。
  • 仅有单一工具EvoMaster支持RESTful API的自动化白盒测试,表明在深层代码级测试方面仍存在研究空白。
  • 处理数据库和第三方服务等外部依赖仍是主要挑战,尤其在黑盒测试中,状态依赖关系难以推断。
  • 规格不明确的数据结构——即数据约束未正式记录——对测试用例生成和覆盖率造成重大挑战,目前仅有少数工具解决此问题。
  • 尽管存在开源原型,但大多数工具缺乏对现代数据存储(如NoSQL数据库,例如MongoDB)的支持,限制了其实际适用性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。