在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
目前,打开各大网络招聘网站,我们可以发现,几乎所有的测试岗位都对求职者有接口测试经验的要求。因此,无论是从接口测试本身的优势来看,还是从就业市场的技能要求来看,学习并掌握接口测试都是极其重要的。下面一起来看看接口测试的基础学习总结吧~
一、认识接口测试
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。接口测试是目前测试的主流手段之一,采用接口测试有很多优点,比如提高测试效率,方便定位Bug,提高服务端健壮性等等。
二、做接口测试的必要性。
1、越底层发现bug,它的修复成本是越低的。
2、前端随便变,接口测好了,后端不用变,前后端是两拨人开发的。
3、检查系统的安全性、稳定性,前端传参不可信,比如京东购物,前端价格不可能传入-1元,但是通过接口可以传入-1元。
4、如今的系统复杂度不断上升,传统的测试方法成本急剧增加且测试效率大幅下降,接口测试可以提供这种情况下的解决方案。
5、 接口测试相对容易实现自动化持续集成,且相对UI自动化也比较稳定,可以减少人工回归测试人力成本与时间,缩短测试周期,支持后端快速发版需求。接口持续集成是为什么能低成本高收益的根源。
6、 现在很多系统前后端架构是分离的,从安全层面来说,只依赖前端进行限制已经完全不能满足系统的安全要求, 需要后端同样进行控制,在这种情况下就需要从接口层面进行验证;前后端传输、日志打印等信息是否加密传输也是需要验证的,特别是涉及到用户的隐私信息,如身份证,银行卡等。
三、接口测试流程
1、需求分析:需求文档 VS 接口文档。
2、编写和评审用例:根据需求变更结合业务优先级,边界值等价类等分析方法设计手动测试用例;根据接口的参数组合以及接口的预期返回设计接口测试用例。
3、准备测试环境和测试脚本:接口测试需选择合适的工具实现步骤2中评审的用例。
4、执行测试用例,发送测试报告:接口测试自动运行脚本,生成和发送测试报告。
四、接口测试工具
1、Postman:谷歌提供的开源接口测试工具,支持Http接口的调用和验证
2、Jmeter:Apache提供的开源接口测试工具,除了支持Http接口还有很多扩展功能(Mysql,3、Redis,RabbitMQ....)
4、Fiddler:抓包工具,常用于接口分析以及Mobile端接口自动化
5、HttpComponents:Apache提供的开源包,可以基于它实现接口代码的编码
六、接口测试常用技术点
1、参数化:自动生成不同的接口数据,或者符合后端服务校验规约的接口数据(eg: 手机号,身份证,邮箱,用户姓名)。
2、断言:验证接口的返回,包括响应码,响应字段的校验(Json报文,HTML或XML报文)
3、关联:多接口测试时,不同接口间的参数传递。
4、数据库:除了验证相应报文,还可验证数据库字段确保程序逻辑的正确性。
5、持续集成:接口工具或框架和Jenkins等持续集成工具的结合,实现无人值守或者自动触发。
以上就是接口测试的基础学习总结,学好接口测试可以奠定自动化和性能测试的基础。而且接口测试也是测试求职必备的技能之一。如果大家还想看到更多关于测试的干货分享,欢迎关注博学谷资讯软件测试栏目!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
高薪的软件测试工程师要掌握哪些专业技能?
软件测试开发需要掌握软件测试基础知识、测试工具的使用、操作系统相关知识、数据库知识、计算机硬件知识、代码编写等技能。同时软件测试还需要较强的沟通能力。
11111
2019-05-23 15:56:31
女生做软件测试累吗?需要加班的时间多吗?
女生做软件测试累吗?加班多吗?其实回答这样的问题要看具体情况。就目前的普遍情况分析,互联网公司的测试岗位都避免不了加班这个问题,但是这个加班频率和时间一般与项目大小有关。而且公司也会安排调休或者是给加班费补助,因此这个岗位也没有大家想象的辛苦。而且对于女生来讲,软件测试岗位比开发岗位课轻松太多了,薪资待遇也不差,工作内容也更加适合女生,这也是为什么现在做软件测试女生比例增长的原因。
10176
2019-11-04 10:38:14
软件测试工资待遇怎么样?
软件测试薪资待遇高、就业前景好、IT行业性别歧视弱软件测试人员更要具有认真、耐心、细致、敏感等个性元素,而这在一定程度上与女性的个性气质相吻合、就业竞争压力小,接下来我们具体来看看。
6319
2019-11-20 18:06:26
软件测试如何测试淘宝站内搜索系统?
一般情况下测试某个软件,都会按照单元测试、集成测试、系统测试和验收测试四个大的阶段进行,但是执行测试时,会根据需求以及具体的使用环境调整测试的方式。例如如何测试淘宝站内搜索系统,对于这个问题,我们从功能测试、性能测试、易用性测试、兼容性测试、安全性测试以及异常性测试6个方面进行测试。
7218
2019-12-11 18:36:11
学习软件测试需要学哪些知识?
学习软件测试需要学哪些知识?现阶段,随着IT技术的广泛应用,衍生出了很多新型的行业,软件测试工程师就是其中的一种。软件测试的应用范围和专业度都在不断的扩大和提高,很多朋友都想学习软件测试,需要了解哪些内容呢?
5104
2020-06-02 14:16:03