【测试基础】九、如何做 API 测试?异步的呢?

简介: 【测试基础】九、如何做 API 测试?异步的呢?

API 测试就是接口测试。


对于现在大多的互联网公司来说,API 测试可以实现良好的投入产出比,因此应该成为互联网产品的测试重点,也就是形成了菱形的测试策略


1268169-20210712131007704-527771055.png


原则是:


  • 重量级 API 测试
  • 轻量级 GUI 测试
  • 轻量级单元测试


一、API 测试的基本步骤


API 测试说简单也很简单,基本上就是三步走


  • 准备测试数据(也可能有现成的)。
  • 使用工具,对待测试 API 发起请求。
  • 验证返回的结果 response。


请求工具就很多了,常见的有:Postman、JMeter、cURL,还有代码里的请求库,比如 python 中的 requests、java 中的 okhttp 等等。我们通常根据业务特点和所处阶段,选用最适合的测试工具。


二、多 API 调用的复杂场景


除了我们最常见的单接口测试之外,还会遇到某些业务涉及调用多个 API 来完成的场景。


通常这个时候,我们需要知道多个 API 的调用顺序,这些可以借助工具(比如fiddler)或者系统日志来辅助我们完成。


对于有值传递的情况,比如 接口B 需要先调用接口A 并且使用 A的返回,当做入参。现在也是很好处理,不管是使用 GUI 工具,或者代码都可以完成。


我个人偏向使用代码,更加灵活轻便。


三、API 对第三方有依赖


API 之间是存在依赖关系的,比如你的被测对象是接口 A,但是接口 A 的内部调用了接口 B。此时如果由于某种原因,接口 B 处于不可用状态,那么接口 A 的测试就会受到影响。


在单体应用里,通常只有涉及到第三方 API 集成的场景中才会遇到这个问题,数量不会很多。


但是在当下的微服务架构下,API 间相互耦合的依赖问题就会非常严重。


如何解耦,还是得用Mock Server核心思路是,启用 Mock Server 来代替真实的 API


现在也有不少开源的 mock 引擎,可以根据需要进行选用。当然了,有条件的话也可以自研一个,方便实现定制化。


四、异步 API 的测试


这里之前还跟奇哥讨论过一番,给了我一些不错的建议。


异步 API 是指,调用后会立即返回,但是实际任务并没有真正完成,而是需要稍后去查询或者回调(Callback)的 API。


比如,被测 API A 完成的是下订单的操作。这个 API A 完成下订单操作要通过调用另外一个 API B 将订单信息写入到消息队列中去。


而真正下订单成功指的是消息队列中的消息被后续服务正确处理并且成功了。此时,这里的后续消息处理就是异步的操作了。


那么现在测试这个 API A,通常情况下:


  • 我只需要验证它是否正确地发起了对 API B 的调用即可
  • 不用关心 API B 的具体行为结果


具体点描述就是,只关注 API A 是否以正确的参数调用了 API B 即可。而无需关注 API B 是否正确地执行了将订单信息写入消息队列的操作。更不用关注,消息队列中的消息被异步处理的结果。


而对于异步处理的结果,我觉得可以放在一些典型的测试场景里去覆盖。

相关文章
|
8天前
|
JSON API 数据格式
淘系等商品评论Json数据格式参考,API接口测试
通过以上示例和说明,你可以了解淘系商品评论的JSON数据结构和如何使用相关API接口获取评论数据。在实际操作中,你需要参考具体的API接口文档和开放平台的相关说明进行配置和调用。
|
9天前
|
测试技术 API 数据库
淘宝商品详情高级版 (item_get_pro)API如何测试
要测试淘宝商品详情高级版API(item_get_pro),需先阅读API文档,注册开放平台账号,创建应用获取密钥,搭建测试环境,选择测试工具。测试时设计用例,配置工具,发送请求,验证响应,记录日志。注意安全和数据格式。
|
21天前
|
监控 搜索推荐 测试技术
电商API的测试与用途:深度解析与实践
在电子商务蓬勃发展的今天,电商API成为连接电商平台、商家、消费者和第三方开发者的重要桥梁。本文深入探讨了电商API的核心功能,包括订单管理、商品管理、用户管理、支付管理和物流管理,并介绍了有效的测试技巧,如理解API文档、设计测试用例、搭建测试环境、自动化测试、压力测试、安全性测试等。文章还详细阐述了电商API的多样化用途,如商品信息获取、订单管理自动化、用户数据管理、库存同步、物流跟踪、支付处理、促销活动管理、评价管理、数据报告和分析、扩展平台功能及跨境电商等,旨在为开发者和电商平台提供有益的参考。
26 0
|
24天前
|
监控 数据管理 测试技术
API接口自动化测试深度解析与最佳实践指南
本文详细介绍了API接口自动化测试的重要性、核心概念及实施步骤,强调了从明确测试目标、选择合适工具、编写高质量测试用例到构建稳定测试环境、执行自动化测试、分析测试结果、回归测试及集成CI/CD流程的全过程,旨在为开发者提供一套全面的技术指南,确保API的高质量与稳定性。
|
29天前
|
Java 测试技术 API
详解Swagger:Spring Boot中的API文档生成与测试工具
详解Swagger:Spring Boot中的API文档生成与测试工具
38 4
|
1月前
|
SQL 测试技术 API
如何编写API接口的自动化测试脚本
本文详细介绍了编写API自动化测试脚本的方法和最佳实践,涵盖确定测试需求、选择测试框架、编写测试脚本(如使用Postman和Python Requests库)、参数化和数据驱动测试、断言和验证、集成CI/CD、生成测试报告及维护更新等内容,旨在帮助开发者构建高效可靠的API测试体系。
|
1月前
|
JavaScript 安全 编译器
TypeScript 与 Jest 测试框架的结合使用,从 TypeScript 的测试需求出发,介绍了 Jest 的特点及其与 TypeScript 结合的优势,详细讲解了基本测试步骤、常见测试场景及异步操作测试方法
本文深入探讨了 TypeScript 与 Jest 测试框架的结合使用,从 TypeScript 的测试需求出发,介绍了 Jest 的特点及其与 TypeScript 结合的优势,详细讲解了基本测试步骤、常见测试场景及异步操作测试方法,并通过实际案例展示了其在项目中的应用效果,旨在提升代码质量和开发效率。
43 6
|
1月前
|
监控 测试技术 API
关于API接口的性能测试指南
要测试API接口的性能,需先进行功能测试,确保接口正常工作。接着编排性能测试场景,设置运行配置,使用工具如JMeter、Apifox等进行测试,监控性能指标,分析结果,优化调整,并将其纳入持续集成流程,确保高负荷下良好表现。
|
1月前
|
安全 测试技术 API
如何实现API接口的自动化测试?
实现API接口的自动化测试涉及多个关键步骤:确定测试范围和目标、编写测试用例、选择自动化测试工具、搭建测试环境、编写测试脚本、执行测试、分析结果和回归测试。选择合适的工具和考虑团队熟悉度是成功的关键。常用工具包括Postman、JMeter和SoapUI。通过这些步骤和工具,可以有效提高测试效率和质量,确保API的稳定性和可靠性。
|
1月前
|
Java 测试技术 API
拼多多 API 接口申请通过后如何进行测试?
拼多多 API 接口申请通过后,需按以下步骤测试:1. 仔细研读接口文档;2. 搭建测试环境,准备开发工具和模拟请求工具;3. 编写测试代码或使用测试工具;4. 设计测试用例,包括正常、异常和边界情况;5. 验证测试结果,检查返回值和错误处理;6. 记录和分析测试结果,确保 API 的稳定性和性能。

热门文章

最新文章