接口自动化理论知识及环境搭建

一、接口自动化理论

1. 接口自动化优缺点

1.1 优点

(1) 测试复用性
(2) 维护成本相对UI自动化低一些
(3) 回归方便
(4) 可以运行更多更繁琐的测试,自动化的一个明显好处是可以在较少的时间内运行更多的测试

说明:1、3是自动化通用优点,2、4是对比UI自动化而言的

1.2 缺点

(1) 不能完全取代手工测试
(2) 手工测试比自动化测试发现的缺陷更多,自动化测试不容易发现新的bug
说明:

  • 缺点与UI自动化一样
  • 自动化测试主要是提效,永远取代不了手工,因为自动化脚本都是按照手工用例来写的
1.3 UI自动化和接口自动化的区别
  • 面试题:UI自动化和接口自动化哪个好,区别是什么?

(1) 首先,接口自动化维护成本要比UI自动化低,甚至低很多。UI自动化前端变化太快,且写脚本、跑脚本都很耗时间,后期维护比较痛苦。

(2) 接口自动化运行时间要比UI自动化快很多,100个相同用例,接口自动化耗时可能不到UI自动化的十分之一。UI自动化在整个页面交互上所耗的时间很多,而接口的响应时间几乎都是毫秒级别的。

2. Get请求和post请求的区别

2.1 标准回答

(1) get是从服务器上获取数据(例如看到列表页面等),post是向服务器传送数据(登录、注册),什么时候用get,什么时候用post取决于开发

(2) get请求接口的请求数据是放在URL里面的,post请求接口的请求数据是放在body里面的,get请求可以在浏览器中直接访问,而post请求只能借助工具(postman)完成

2.2 3种情况

(1)比较标准的定义:get-查询 post-新增 put-编辑 delete-删除

(2)纯post走天下

(3)现在更多的是:get-查询 post-新增+编辑+删除,即post接口是改变数据,get只是获取数据,比如刷朋友圈-get,发朋友圈、编辑朋友圈、删除评论-post

2.3 Get请求扩展

get请求,如果是需要登录之后才能访问(如考试系统)的,则需要鉴权,也可以先登录进去,再在同一个浏览器中另外打开一个窗口输入URL即可访问。如果不需要登录(如今日头条,不登录也可以看新闻),则可直接通过URL访问。
在这里插入图片描述

URL通过火狐浏览器打开后,浏览器会自动将数据转换成json体,方便阅读,查看层级结构。
在这里插入图片描述

如果通过谷歌或其他浏览器打开,会是纯文本展示,如果想要可读性更高,可借助json体转换工具。
在这里插入图片描述

3. 前后端分离

3.1 老的开发模式

以前老的方式是前后端不分离(云商系统)

(1) 产品经理/领导/客户提出文字需求
(2) UI做出设计图
(3) 前端工程师做HTML页面(所有用户能够看到的页面全都是前端开发的)
(4) 后端工程师将HTML页面套成jsp页面(后端工程师:维护、操作数据,所有要看的数据,需要增删改查的数据都是后端开发的,前端与后端通过接口来交互)
(5) (前后端强依赖,后端必须要等前端的HTML做好才能套jsp。如果HTML发生变更,就更痛了,开发效率低)
(6) 集成出现问题:前端返工,后端返工

3.2 新的开发模式

前后端分离(物业管理)

(1) UI做出设计图
(2) 前后端约定接口、数据、参数
(3) 前后端并行开发
(4) 前后端无强依赖,可并行开发。如果需求变更,只要接口、参数不变,就不用两边都修改代码,开发效率高
(5) 前后端集成:前端页面调整,集成成功

3.3 判断是不是前后端分离

打开F12,查看接口返回的内容。

  • 接口返回的是HTML,则是前后端不分离的
    在这里插入图片描述

  • 返回的是json体,则是前后端分离的
    在这里插入图片描述

3.4 判断是前端问题还是后端问题

(1) 打开F12,发现接口报错,首先看后端日志,是前端传参不合法导致还是后端服务有bug。

(2) 如果接口请求正常,数据也正常返回了,但是前端页面仍然无法显示,首先看前端,再具体分析是谁的问题。

4. 微服务架构了解

4.1 什么是微服务

将大模块切成若干个小模块的操作,意思是在开发时,尤其是后端开发时,会将某个模块拆分成若干个微服务。

4.2 微服务的优缺点

(1)原先是一个jar包,里面包含了很多模块,如果有个模块需要修改,则整个jar包都需要更换,如果模块之间有相互关联或误操作,在修改一个模块后很可能会对其他模块有影响。

(2)如何解决?后端的核心就是提供接口,可以将后端提供的接口打成一个jar包,再将另外几个模块打成一个jar包,比如共6个模块,分6个jar包发布,模块与模块之间通过接口调用,解除代码上的耦合,

二、 接口自动化环境搭建

接口自动化所用到的核心库是requests,安装方法有2种:

1. 命令行安装:pip install requests –I https://pypi.douban.com/simple/

在这里插入图片描述

2. 在pycharm中安装:settings->project->选择你的Python点击+输入“requests”安装

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晓晓白的软件测试进阶之路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值