vlambda博客
学习文章列表

1分钟系列之带你走进接口测试



写在前面

首先,什么是接口测试?

接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

OK,那为什么要做接口测试?

主要包含两个点:
1、尽可能早的发现问题,并解决问题,降低后期修复成本,这也符合测试前移的理念。
2、接口测试低成本高收益,接口测试相对UI测试更易于自动化持续集成,以减少人力回归成本,提升测试效率。

接口用例设计
当我们做接口测试时,我们都测试哪些内容呢?

主要包括:接口业务功能,边界分析,异常情况,接口安全性,接口容错,接口性能等。
OK,知晓了需要测试哪些内容,接下来就要着手编写接口测试用例。

接口测试用例来源于深入的需求分析和接口设计文档,那么文档的重要性不言而喻。同时QA应结合RD实际代码,提升接口测试覆盖率和颗粒度。

例如, 传参条件覆盖:

1分钟系列之带你走进接口测试

代码逻辑覆盖:

1分钟系列之带你走进接口测试

当然接口用例同样需要评审,如同正常业务case评审一样。接口测试用例编写形式不限,符合团队需要即可。

来个例子:

1分钟系列之带你走进接口测试


如何做接口测试
接口测试工具可以选择开源工具,同时也可按照实际团队需要开发测试框架。万变不离其宗,目的相同即可。

实际接口测试时,大致主要有以下几个阶段:
  • Init:主要用来初始化测试数据。

  • Runcase:构造参数,传入接口参数,调用接口。

  • Assert:接口断言,验证接口是否如期返回,接口上下游是否正常。

  • Delete:测试数据清洗。


流程如下:

1分钟系列之带你走进接口测试

 同时除了验证单接口是否正常外,业务链路接口测试在回归效率上也起到至关重要的作用。

如薪资流转业务链路:
1分钟系列之带你走进接口测试
 薪资流转接口链路:

1分钟系列之带你走进接口测试

接口测试结果分析
实际工作中,是不是经常遇到以下情况:
  • 你们接口测试做到什么程度了

  • 接口测试有没有跑出bug?

  • 接口测试效果咋样?





OK,当你执行完接口测试脚本,验证接口返回正常后,并不意味着接口测试已经结束。
为了量化接口测试效果,就需要对接口测试结果进行统计分析,包含系统接口覆盖率,代码覆盖率。

以配置中心服务为例:
总体执行情况:

1分钟系列之带你走进接口测试

  定位对应被测接口情况:


有了以上这些数据,我们可以进一步进行分析:接口用例设计是否全面,接口测试脚本运行是否幂等性等。

接口测试平台化
当你接手其他人负责的接口测试脚本,如何快速上手时?当面对几百+集群服务,如何维护和管理成百上千条测试用例时?可否通过可视化页面点击操作完成接口测试,无需编写测试脚本时?乃至发现Bug是否可以自动提交时?

自然而然,会想到集成一套完善的平台化系统。通过可视化平台维护接口文档,编写接口测试用例,无需编码,接口测试结果可见即可得。诚然道路是艰辛的,但有了这个思路,结合实际情况,制定可行性计划,一步一步亦可实现切实可行的平台化系统。

  

结束语

总结回顾下,本文讲解了接口测试目的,用例设计,测试策略,结果分析以及平台化思想等几个方面。

写在最后,接口测试只是质量保证中的一个环节,方式方法没有最好的,只有最合适项目团队的,毕竟任何脱离业务谈测试搞技术都是在耍流氓。

后续需要进一步关注下:
1、持续化测试左移,推进测试右移
2、质量统计分析和回溯


推荐文章





好文我在看👇