接口测试介绍
什么是接口测试:
在日常工作中,多采用前后端分离的模式开发,有人负责前端,有人负责后端;有的业务还会涉及对接第三方平台,而接口就是连接前后台、多平台之间的枢纽,前后端、多平台交流信息的通道。
既然是多人协作、分工开发,那就有可能出现完成进度不同步的情况,例如后端开发已经完成,但是前端没有完成。那么我们测试这时候做什么呢?仅仅是编写用例,然后等前端完成后开始测试吗?这种人力上的巨大浪费显然不是公司所想要的,如果你理解了接口测试,那么你其实已经可以针对接口开始进行测试了。
接口测试,又叫API测试,即Application Programming Interface的简写.我们来说,测试接口就是指测试接口的功能,性能测试,当然可能还有安全性测试和稳定性测试及其他的专项测试。
接口测试与UI测试的区别:
API测试是不同于UI化测试,接口测试的关注点在系统的业务逻辑,数据的正确性,而UI测试的关注点在于界面的操作或用户感观上。
常见的接口分类:
工作中常见的接口协议类型有 HTTP和HTTPS类型。
常见的请求方式有GET(获取)、POST(修改)、PUT(上传)、DELETE(删除)等,工作中一般接触的只有GET和POST两类
接口测试需要什么:
1、HTTP协议的基础支持
2、接口的说明文档
3、一款趁手的工具或者编程语言(语言类:java、python;工具类:Jmeter、PostMan、SoapUI)
4、抓包工具(Fiddler、wireshark)
5、数据库基础知识
6、业务需求的充分理解
为什么要做接口测试:
1、随着系统复杂度不断上升,仅做传统的UI测试会使错误发现过晚,造成项目成本急剧增加并且整体迭代效率大幅下降,接口测试可以在这种情况下将错误尽早的暴露出来。
2、 接口测试相对容易实现自动化持续集成,且相对UI自动化也比较稳定,可以减少人工回归测试人力成本与时间,缩短测试周期。
3、 现在很多系统前后端分离的,从安全层面来说,只依赖前端进行限制已经完全不能满足系统的安全要求, 需要后端同样进行控制,在这种情况下就需要从接口层面进行验证。
4、某些异常场景通过UI界面无法实现或者难以实现,但通过接口测试就可以快速简单的进行验证。
5、现如今很多公司都采用敏捷开发,迭代周期限制了后期测试的可用时间,测试提前介入是势在必行的趋势。
接口测试怎么做:
这里主要说功能性的测试,不论是接口测试还是UI测试,对于测试人员而言,都是一个理:
1、我需要给你什么<UI:输入、选择等;接口:请求入参>
2、怎样才能给你 <UI:各种触发操作的按钮;接口:请求方式(psot、get)>
3、我想要的是什么 <测试用例中的预计结果>
4、你给我的是什么 <UI:跳转的界面、返回的结果;接口:响应数据>
5、你给我的跟我想要的一样不一样<人为判断、工具断言>