美文网首页
接口测试笔记

接口测试笔记

作者: 秀逗逗_ | 来源:发表于2020-05-27 11:24 被阅读0次

    开篇词 :把接口测试这件小事做深、做透

    1、接口测试思维:业务测试的思维、接口测试的技术,合成接口测试的思维,转变成接口测试的能力:工具使用、代码编写、用例设计。

    2、接口测试框架:使用工具测试--接口测试脚本--测试框架:测试数据准备、测试执行、测试结果收集--测试框架升级:(算法)框架自动编写测试脚本,给出推荐的测试入参数据等特性

    3、学习路径:形成接口测试思维--接口测试脚本--接口测试框架--框架数据层封装--陌生协议接口测试任务--外部依赖解耦的方法和思路

    4、接口自动化的作用:完成接口回归测试:释放人力;通过持续集成平台调用接口自动化测试,为流水线提供质量保障方法和手段,赋能研发

    01 | 基础:跳出细节看全局,接口测试到底是在做什么?

    在开发没有时间做单元测试的情况下,接口测试有两种方式

    1、智能化框架补充单元测试

    2、加大接口测试的工作比例,弥补单元测试

    接口测试的范围:(增大接口测试的测试深度和测试广度)

    1、向下覆盖公共接口的单元测试,

    2、向上覆盖应该由UI层保障的业务逻辑测试

    接口测试的组成:

    1、单接口的主流程、异常流程;

    2、单接口字段必填项和传值类型;

    3、多接口的场景测试

    接口测试的好处:

    1、接口测试容易和其他自动化测试结合,

    2、接口测试可以比界面测试更早开始,可以测试界面测试无法测试的范围,让测试更早投入

    3、接口测试可以保障系统的鲁棒性(健壮性)

    接口测试:内部接口、外部接口

    1、内部接口:系统内部调用的接口。

    2、外部接口:面向客户或其他系统的接口。

    测试工程师思维:接口返回成功与返回失败都是正向流程

    接口测试的特点:

    1、从测试手段上,技术驱动和业务驱动双管齐下的工作

    2、从工作范围上,覆盖一部分单元测试,覆盖一部分业务测试,可以根据项目情况去进行调整

    接口测试和业务测试的区别和联系,那就是“相互依存,不可分割”。

    1、接口测试的部分用例是基于业务测试

    2、接口测试也能够扩展发现业务测试发现不了的一些问题

    3、如果没有接口测试,业务测试可能会遗漏一些问题,和业务测试形成互补

    图片转载自:https://www.cnblogs.com/dydxw/p/12274058.html

    02| 方法论:没有任何文档,怎么才能快速了解接口的信息?

    单接口:

    借助一些工具的辅助来完成接口分析;

    通过工具截获一些接口信息;

    通过分析接口的访问方式、参数等信息整理出一些问题,和研发工程师沟通这些问题,将一些不知道的参数含义、参数取值范围等问题问清楚。

    工具辅助:Fiddler:查看Request 请求的内容和 Response 请求的内容

    主要关注:

    Host:服务器域名;

    Connectiong:keep-alive,持久连接;

    Accept:客户端接受的内容类型application/json,text/plain;

    User-Agent:请求的浏览器;

    Sec-Fetch-Site和Sec-Fetch-Mode:JS中对跨域对设置;

    Accept-Encoding:设置为gzip,deflate,br,表示可支持对Web服务器返回内容压缩编码类型;

    Accept-Language:可接受的语言;

    询问解惑:

    参数含义:

    参数的含义以及来源:从哪里来,如何造数据

    参数的作用域:作用是什么,如何验证正确性?验证算法是什么?

    返回值的含义,对应什么字段

    03|思维方式:用一个案例彻底理解接口测试的关键逻辑

    Postman接口测试:

    1、单接口的必填校验

    2、单接口的边界值、等价类校验

    3、场景校验:一个文件夹:从登陆到通过算一个流程,仿照客户端形态

    先从单个接口的测试开始,保障单个接口的正确性和健壮性,然后通过单个接口的测试完成多个接口的业务逻辑串联,站在业务逻辑的角度完成业务逻辑的正确性检测。

    学习持续集成平台 Jenkins 和 Newman 运行 Postman 脚本完成对应的内容

    04| 案例:如何把流程化的测试脚本抽象为测试框架?

    从零开始打造一个测试框架,建立你自己的技术体系。

    搭建测试框架,不要纠结于技术选型

    在做接口测试脚本开发的技术选型上,我更建议你根据自己的技术实力和技术功底来选择,而不要以开发工程师的技术栈来选择。

    05| 案例:测试框架如何才能支持RESTful风格的接口?

    RESTful 风格接口:

    关注:数据交换的承载方式和操作方式。

    让你的框架可以测试一个 RESTful 风格接口:

    借助外力:拼凑很多复杂的数据,就需要使用 JSON 字符串和代码对象实体的转换,它有一个专业的叫法:序列化和反序列化。

    引入放到自己的框架里:外部支持的库,就像 Python 有 JSON 库、Java 有 Fastjson 库

    自己封装:封装restful的api接口

    不断封装,不断深化,最终会获得一个完全适合你自己,又可以解决实际工作任务的测试框架,这也是你自己的接口测试武器仓库,里面有解决各种接口测试问题的方法。它会是一个私有仓库,里面每一个武器都是为你自己量身定制的,因此,每一件武器你用起来都会更得心应手。

    06 | 接口测试平台:工具和框架不可以兼容?

    如何用工具和框架的组合搭建接口测试平台,让你能更快速地完成测试任务。

    工具的便捷性与框架的灵活性可以兼得

    工具设计脚本--框架支持测试--代码仓库保存

    降低代码编写门槛:通过工具+框架搭建接口测试平台

    工具的便捷性可得

    UI 操作更加直观,可以在你的脑海里留下更深刻的印象

    而代码操作给人留下的印象就比较模糊

    通过用代码写脚本来完成接口测试,比较便于维护、团队合作以及留存

    Postman 优势:设计接口测试直观、快速的优势,将它变成接口测试脚本的初始脚本的编写工具,其实 Postman 也可以配置 Chrome 插件录制请求,这些在 Postman 官方已经有很详细的介绍

    Postman导出code:

    Postman已经写好的接口-点击右侧的code-选择python-requests库-点击copy按钮复制代码

    相关文章

      网友评论

          本文标题:接口测试笔记

          本文链接:https://www.haomeiwen.com/subject/wmxwahtx.html