软件测试什么是接口测试?意义在哪?

Posted 软件测试小dao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件测试什么是接口测试?意义在哪?相关的知识,希望对你有一定的参考价值。

在这里插入图片描述

1.首先,什么是接口?

接口无非有两种,一种是内部接口,一种调用对外包装的接口

内部接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,例如下订单,首先你需要登录,然后调用下订单接口,两个模块有交互那么相互之间的调用,就属于内部接口

对外包装的接口:例如A部门做一个买车服务,它卖两种车一是二手,二是新车,那么它要卖二手车,是不是直接可以调用二手车部门共享的数据进行包装,从而是不是达到数据的共享等等,就不一一举例子。

2.常用接口采用方式:

1、webService接口:是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。可以使用的工具有SoapUI、jmeter、loadrunner等;

2、http api接口:是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,这也是最常用的两种请求方式。可以使用的工具有postman、RESTClient、jmeter、loadrunner等;

3.https并非是应用层的一种新协议,只是http通信接口部分用SSL(Secure socket Layer)和TLS(Transport Layer Security)协议代替而已

那么上述1,2,3 
 
webService:返回的格式xml还需要解析麻烦,而且速度可能有降低(目前开发平台等都使用的http(get/post实现的)

http协议时超文本传输协议(不安全)

https是安全的超文本传输协议,是安全版的http协议,使用安全套接字层(SSL)进行信息交换。

https协议主要针对解决http协议以下不足:

1.通信使用明文(不加密),内容可能会被窃听

2.不验证通信方身份,应此可能遭遇伪装

3.无法证明报文的完整性(即准确性),所以可能已遭篡改

综上所述:目前我们看到的接口测试。,相信大家用的https、http多一些

4.前端和后端

前端:app,网页统称前端(展示-负责貌美如花)

后端: 后台提供数据,校验,下订单等等处理(负责挣钱养家)

5.接口测试概念

接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等(通俗来说就是,检查业务逻辑是否满足业务需求,校验字段是否正常你实际结果是否满足预期)

6.接口的组成:

a、接口说明

b、调用url

c、请求方法(get\\post)

d、请求参数、参数类型、请求参数说明

e、返回参数说明

7.为什么要做接口测试,接口测试的目标

接口其实app和前端交互用的,所以好多人问,为啥做功能测试还要测接口,目标是啥不是多此一举吗?首先我告诉大家,这种想法是错误的

那么举一个例子:
  
例如一个登陆接口,例如产品上规定用户名6-10个字符数字下划线,但后端没做判断。但我们业务人员测试肯定验证,但只是前端做了校验,后端压根就忘了这个小需求。那么后果来了如果一个懂的直接抓包去篡改你的接口,然后绕过校验,通过sql注入直接随意登录。如果你这是一个下单业务,是不是给公司造成了很大损失

所以此时此刻接口测试目标来了:

1.可能发现客户端没有发现的bug(那么也叫隐藏bug)

2.及早爆出风险(保证质量正常上线)

3.接口稳定了,前端随便改

4.最重要检查系统安全性,稳定性

8.常常有人问我怎么测

1.无非就两种get/post工具postman/httprequest等

2.状态吗,你至少了解

例如:200(成功)/300(重定向别的地方)/400(请求语法错误)/500(服务器异常)怎么测:

A. 用例设计(根据业务逻辑来设计用例,登录5次,需要2分钟后再登录 删除关注的车,列表少一条数据)

B. 参数组合(传入不同值)

C. 接口安全(绕过验证/绕过身份验证/参数是否加密等)

D. 异常验证(输入异常参数边界值)

8.用什么工具测

功能:Postman/HTTPrequest/jemter

自动化:restassured/ python httprequest

最后

我收集整理了一些资料,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你。

关注微信公众号:【软件测试小dao】免费领取
更多软件测试资源请加软件测试技术交流群:1033482984

不要只做收藏从未停止,行动从未开始的人,很多事情,做着做着就无师自通了。如果在做的过程中还能稍微加点思考,稍微看一些别人的经验和做法,成长会更快,效果也会更好!加油吧,测试人!路就在脚下,成功就在明天!

以上是关于软件测试什么是接口测试?意义在哪?的主要内容,如果未能解决你的问题,请参考以下文章

接口测试的意义

为什么要做接口测试,意义是什么?

自动化测试的成本高效果差,那么自动化测试的意义在哪呢?

做接口测试有什么意义?

如果测试中某个测试点的信号异常,如何判断故障点在哪

自动化测试的意义