1.什么是接口及如何进行接口测试?
API测试=接口测试
什么是接口:提供系统服务的一种渠道,主要用于数据的交互。
数据包的方式进行交互。
(从前端页面,从本地的外网IP地址,向百度的搜索引擎发送一条请求,经由打包,变成一个数据包,传递到百度服务端,服务端经过解析数据包,得到搜索内容,生成搜索接口,再次打包成数据包,发送回外网IP,经由前端解析成用户能看懂的结果,展现在页面中。)
通过接口正确的处理请求。
接口的作用:接受用户的请求,并提交到服务端进行运算,得出结果后,再由接口返回至用户端。
接口测试的必要性:
在基于UI层面的功能测试中,我们都是依托于前端界面进行的测试,在测试的额过程中,会涵盖接口的相关内容,但无法对接口进行精准的测试。
现阶段所有的项目都是前后端分离,所以必须要保障服务端的额软件质量,就一定要对接口进行独立的测试,确保软件的质量。
2.为什么要使用抓包工具?
目前,90%以上的接口都是基于http/https网络协议实现的。
格式:http://IP:PORT/path?parameter
常规http协议的端口默认为80
常规https协议的端口默认为443
使用抓包工具的目的:直观的获取所有接口在传输时传递的数据包的内容,提供对数据包的分析;定位BUG的具体位置。
判断用户登录,支付,录入身份信息,此类敏感数据在传输过程中是以明文的形式进行传递的还是加密传输的。
3.如何通过fidder进行截包与篡改?
目前主流的抓包工具分为fidder和Charles(主要用于HTTP/HTTPS两个协议下的抓包),Wireshark(抓取其他协议的包)。
fidder的使用:tools->options->https->capture https connects勾选
web系统,提交一个商品的单价是5000,通过截包篡改,将价格改为50.
通过fidder设置断点:bpu+空格+URL,来进行截包操作,可以篡改数据。测试开发有没有放篡改的功能。取消断点:bpu.
要修改接口参数,则必须使用断点,否则只能查看。