python接口自动化(二)--什么是接口测试、为什么要做接口测试(详解) ...

打印 上一主题 下一主题

主题 817|帖子 817|积分 2451

什么是接口测试

  接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要查抄数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。 
  一般来说,测试接口,就是指测试接口的功能,性能和稳定性测试,固然大概还有安全性测试。这个入门系列会让你掌握接口的功能测试。一般,来说我们听说到的接口根本上都是指HTTP或者HTTPS协议的接口测试,也就是一些web服务请求。一个软件项目中,
有很多接口,少的有几十个,多的有几百上千个接口。这个时候,我们没有软件界面,没有具体的测试场景,只有一个接口形貌文档。我们必要把接口如许抽象的东西,通过软件测试的理论和方法去测试接口,找出接口的功能和安全性的缺陷。接口有内部接口和外部
接口。内部接口就是开辟人员自己开辟的接口。外部接口,好比网站调用微信付出和付出宝付出接口。还有一些模块与模块之间的接口。学习过Java或者用过selenium的人,应该对接口有了解。你的自动化脚本调用了很多selenium的接口。
 为什么要做接口测试

  1、现在很多系统前后端架构是分离的,因为差别端(前段,后端)的工作进度不一样,以是我们要针对最开始出来的接口,以及必要调用其他公司的(银行,付出宝,微信,qq等)一些接口进行接口测试及验证数据,从安全层面来说,
只依赖前端进行限制已经完全不能满足系统的安全要求(绕过前端太轻易了), 必要后端同样进行控制,在这种情况下就必要从接口层面进行验证。在这种情况下就必要从接口层面进行验证。前后端传输、日志打印等信息是否加密传输也是需
要验证的,特别是涉及到用户的隐私信息,如身份证,银行卡等。
 2、现在系统越来越复杂,传统的靠前端测试已经大大低落了服从,而且现在我们都推崇测试前移也叫测试左移,希望测试能更早的介入测试,那接口测试就是一种及早介入的方式。例如传统测试,你是不是得等前后端都完成你才能进行测试,才能进行自动化代码编
写。 而假如是接口测试,只必要前后端界说好接口,那这时自动化就可以介入编写接口自动化测试代码,手工测试只必要后端代码完成绩可以介入测试后端逻辑而不用等待前端工作完成。  
  测试左移这个是一次偶然的机会在群里看到的,孤陋寡闻的我,第一次看到,也是一孔之见,后来查了一些资料供大家参考。
  测试左移的原则支持测试团队在软件开辟周期早期和所有干系人合作。因此他们能清晰地理解需求以及计划测试用例去帮助软件“快速失败”,促使团队更早的修改所有的bug。  
  测试左移并没有什么独特的,只是让测试人员在软件开辟生命周期内更早的参与进来,同时让他们去理解需求、软件计划、软件架构以及软件功能,也让他们去向客户、贸易分析师和开辟人员问题目,探求答案,提供反馈结果已达到支持团队的工作得大概性。参
与和理解会使测试人员获取产物完整的知识,彻底想清楚各种场景,根据软件举动计划实时的场景,这些都会帮助团队在编码完成之前识别出一些缺陷。如许也可以更好的的表现我们作为一个QA的价值体                                                                


金字塔模型
通过之前对金字塔结构的学习,大概了解到了金字塔模型想告诉我们的几个道理:
  1.越底层,越稳定。
  金字塔主要观点以为单元测试的稳定性高,必要多投入。
  2.越底层,越高效。
  步伐的题目,终极还得落在具体的代码上,以是底层的测试更轻易发现题目。
  3.越底层,越低成本。
  越底层测试能越早发现题目,越早发现题目,修复的成本自然越低。
  4.越底层,越难实施。
  越底层的实现对技术专业性要求越高,这点跟第三点有点矛盾,每每越专业的人才也意味着人力成本越高。
  综合下金字塔模型,随着前后端分离越来越清晰,我个人愚见提出了灯笼模型,拿接口测试和UI层测试以及单元测试做了比力,从图中各部门所占有的比重,可以一清二楚的看出并终极认定接口(API)测试可以获得较高的投资回报。
                                                                                   

  灯笼模型
  个人愚见,如有不对,请批评指正:
  接口将前端和后端进行很好的分离,帮前后端实现数据交互,如许在项目初期就可以和前端工程师讨论必要的后端数据,然后后端根据需求开辟后接口,将数据返回给前端,测试人员提前进入测试接口,前后端然后在各自开辟自己模块。
 项目迁移,以及后期维护,接口带来的便利性,试想一下,假如没有项目交付以后,后端人员将数据库的某个字段的长度、类型修改后发版,而由于某些缘故原由没有及时通知前端工程师,而此时前端的获取的这个字段的类型、长度是从前的,那么就大概引发线上事故。如
果前端技术牛叉,存储获取字段是一个变量,工作量还小点。只必要改变变量类型、长度即可,假如是一个差一点的没有用变量,而前端又是好几百个页面都用到这个字段,如许就造成后果无法想象的,但是用到接口就有不一样了,假如出现类似的情况,后端人员只需
要将这个字段通过接口做处理是返回的字段保持同等即可,也就是分分钟的事,大概用户都没有察觉就修复了。而且前端、后端、测试也很好排盘题目,跑一下接口,查看接口文档返回数据有差异,修给接口就可以,如许处理题目服从也会大大进步。
  简单概括:
①.越底层发现bug,它的修复成本是越低的。
②.前端随便变,接口测好了,后端不用变,前后端是两拨人开辟的。
③.查抄系统的安全性、稳定性,前端传参不可信,好比京东购物,前端代价不大概传入-1元,但是通过接口可以传入-1元。
④.现在的系统复杂度不断上升,传统的测试方法成本急剧增加且测试服从大幅下降,接口测试可以提供这种情况下的办理方案。
⑤. 接口测试相对轻易实现自动化持续集成,且相对UI自动化也比力稳定,可以减少人工回归测试人力成本与时间,缩短测试周期,支持后端快速发版需求。接口持续集成是为什么能低成本高收益的根源。
⑥.   现在很多系统前后端架构是分离的,从安全层面来说:
(1)、只依赖前端进行限制已经完全不能满足系统的安全要求(绕过前面着实太轻易), 必要后端同样进行控制,在这种情况下就必要从接口层面进行验证。
(2)、前后端传输、日志打印等信息是否加密传输也是必要验证的,特别是涉及到用户的隐私信息,如身份证,银行卡等。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

知者何南

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表