功能测试和接口测试的区别

Z, ZLW 951

功能测试和接口测试的区别主要体现在以下三个方面:1.作用不同;2.侧重点不同;3.用户场景不同;4.配置场景不同;5.测试场景不同。功能测试主要是验证产品是否达到预期功能,而接口测试主要用于检测内外部系统的一些交互点。

1.作用不同

功能测试主要用于产品的各功能验证。根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。

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

2.侧重点不同

功能测试和接口测试最大的区别在于,功能测试侧重点是前端ui界面、数据展示、图形界面、业务逻辑操作等;而接口测试侧重点是后端返回的数据是否正确、接口是否正常。

3.用户场景不同

功能测试有多用户(并发)的概念,而接口测试只是单用户场景。我们做接口测试是是用于验证接口的请求和返回是否匹配(其实可以理解成接口测试也是一种功能测试);而功能测试则是很多人同时在做这种接口测试,更侧重于真实的用户场景。因为我们研发完的产品投入市场后,不会就专门给某一个人使用功能,肯定是会有很多人同时在用我们的产品功能。

4.配置场景不同

如果是功能测试首先要配置多用户(或者说多线程),而接口测试不用;其次,如果是功能测试,建议关掉断言(否则可能压不上去,因为断言会耗费LR或者Jmeter自身的性能);最后如果是功能测试,如果压测不上去,还可能需要做分布式(简单来说,就是多台机器同时执行性能测试)。

5.测试场景不同

接口测试一般是用断言来验证接口的正确性,在执行性能测试场景的时候,要加入另外的校验方式:(1)最基本的三个:多用户下接口的响应时间,qps/tps(每秒请求量),出错率;(2)服务器上的资源监控(cpu,内存,io);(3)被测服务的资源监控(多个服务的cpu,内存,io)以及错误日志。

当接口测试出了问题,可以通过断言迅速知道出了问题;而功能测试出了问题,需要从多个方面多个维度去调试定位,因此功能测试对于系统架构的理解能力要求更高。

延伸阅读

什么是接口?

接口是“应用程序编程接口”的简称,也称为“API”。简单的讲,就是某一个功能的实现或展示基于对于另一个功能的调用,那么调用与被调用之间的连接点就是接口。常见接口大致可以分为如下几种:

(1)系统与系统之间的调用,比如使用淘宝支付会调用支付宝接口。

(2)上层服务对下层服务的调用,比如应用层会调用服务层提供的接口。

(3)服务之间的调用,比如注册用户时,会先调用用户查询服务,查看该用户是否已经注册。

总体来说,不管哪种类型,只要把被测接口当做服务方,把测试工具当做客户方,我们的目的就是通过客户方验证服务方是否满足了它提供的功能。

回复

我来回复
  • 暂无回复内容

注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部