宜信:API 测试的基本步骤以及场景举例,你了解多少?

2023年03月28日 人民法治讯网T T

  评估API安全性的一种方法是执行渗透测试。但是什么是 API 渗透测试,您为什么需要它呢?我们要知道,API 渗透测试至关重要,因为它可以在系统中的弱点被利用之前定位它们。通过查找和修复这些漏洞,您可以防止数据泄露、身份盗用和其他类型的攻击。

  那么API 测试的基本步骤以及场景有哪些,你知道吗?接下来,就让宜信来为你答疑解惑吧。

  API 测试的基本步骤

  通常来讲,API 测试的基本步骤主要包括以下三大步骤:

  1、准备测试数据;

  2、通过通用的或自己开发的API测试工具发起对被测API的request;

  3、验证返回结果的response。

  常用的API测试工具有命令行工具cURL、图形界面工具Postman或SoapUI,支持API性能测试的JMeter等。

  API复杂场景举例

  通过使用基础的测试工具,可以做简单场景的API测试;而项目进行过程中,为了解决实际的一些问题,我们会设计更加复杂的测试场景,下面列举几个实际项目中的典型场景。

  场景一:API串联调用

  以协议支付为例,我们知道,三方公司接入网联后,用协议支付取代代扣,而协议支付的流程中需要用户输入银行返回的验证码完成绑卡。从接口层面上看,顺序是先调用协议签约API,返回状态成功且获取到短信验证码后,再使用此短信验证码作为输入参数调用代扣API。协议签约和代扣两个API是顺序调用,而且在两次调用中间有获取手机上的短信验证码,这些过程都需要通过程序自动化实现以提高效率。

  场景二:API接口加密

  为保证API接口安全,系统间和系统内模块间互相访问需要进行加密处理,常用的加密方式有DES、AES、RSA、MD5等,各系统的加密方式并不一样(接口调用方和接口提供方约定好即可),意味着API测试需要支持多种自动化加密方式程。某些系统还会返回加密的响应报文,也需要识别并解密。

  场景三:异步API测试

  异步API指请求发出后后收到一个同步响应,但并不是最终处理结果,最终结果通过回调或者主动查询获得。对于这样的API,同步响应的验证只是第一步,后续还得继续验证DB中的值、MQ中的值、以及异步回调是否成功等。对于异步回调,我们可以模拟回调地址来验证成功与否;而对于主动查询,我们就得通过查看DB中的状态值来验证了,但是查询到结果的时间点不确定,几分钟到几小时都有可能,这就得有一个定时DB查询任务去验证。

  场景四:API测试中的外部依赖

  APIA调用APIB且B不可用,此时如何测试APIA需要考虑。比如支付系统对三方支付通道、对银行的依赖,并不是所有的三方都支持测试环境,解决此问题的核心思路是搭建MockServer,而且尽量做到通用性,我们开发了一套Mock系统 -aMock,通过页面录入接口信息,保存在数据库内,通过Nginx访问配置好的Mock接口,后台统一处理请求信息,然后通过URL和报文特性去匹配特定的响应信息。

  以上就是API 测试的基本步骤以及场景举例,想要了解更多,欢迎来咨询宜信,我们将竭诚为您服务。


打开东方今报微信报阅读每天报纸
新闻热线0371-65830000