在线客服
扫描二维码
下载博学谷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等持续集成工具的结合,实现无人值守或者自动触发。
以上就是接口测试的基础学习总结,学好接口测试可以奠定自动化和性能测试的基础。而且接口测试也是测试求职必备的技能之一。如果大家还想看到更多关于测试的干货分享,欢迎关注博学谷资讯软件测试栏目!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
为什么要学软件测试?软件测试工程师有什么优势?
大部分人一直都在关注软件工程师,而忽略了测试工程师的重要性。软件测试是通过模拟真实使用场景来检验软件正确性、完整性、安全性以及质量的过程。是软件产品上线前的自我测试。这样不但可以提高软件产品的生产效率、降低企业损失,同时也能为产品赢得更好的口碑。那为什么要学软件测试呢?软件测试工程师有什么优势呢?
8278
2019-08-14 10:19:36
什么是非功能测试?非功能测试包括哪些类型?
什么是非功能测试?非功能测试包括哪些类型?非功能测试指的是在软件测试中,用于检查软件应用程序的的测试,它与功能测试都是软件测试的两大重要组成部分,并影响着用户对产品的体验。非功能测试包括了性能测试、压力测试、负载测试、低资源测试、容量测试和重复性测试六种类型。下面我们就来了解一下非功能测试吧!
21007
2019-10-23 17:05:24
前端测试用例怎么写?为什么写测试用例?
测试用例为了特定的目的证明软件存在某问题而设计的一组由测试输入、执行条件、预期结果构成的文档。指导如何做测试的文档,该文档主要记录需要验证被测软件的是否满足需求。
3401
2021-03-03 16:14:46
零基础能学软件测试吗?都学什么?
零基础学习软件测试,一定要有决心、有毅力、有耐心。软件测试主要学习测试基础、Linux和数据库、功能测试、python编程、接口测试、性能测试等几个方向。
3594
2021-06-08 15:43:42
软件测试对于减少程序BUG有多大帮助?
软件测试对于减少程序BUG有多大帮助?有经验的程序员通常认为测试与代码同等重要,测试可以减少代码变更或扩展的不确定性。测试应该方便阅读简单且能快速运行,使用的内存也不会很多。
2006
2022-04-21 09:48:35