当前位置: 首页 > wzjs >正文

网站建设教程出售用苏州久远网络wordpress4.9部署

网站建设教程出售用苏州久远网络,wordpress4.9部署,网站开发php js,运城市建设局网站今天,我们来聊聊接口自动化测试。 接口自动化测试是什么?如何开始?接口自动化测试框架如何搭建? 自动化测试 自动化测试,这几年行业内的热词,也是测试人员进阶的必备技能,更是软件测试未来发…

今天,我们来聊聊接口自动化测试。

接口自动化测试是什么?如何开始?接口自动化测试框架如何搭建?

自动化测试

自动化测试,这几年行业内的热词,也是测试人员进阶的必备技能,更是软件测试未来发展的趋势。

特别是在敏捷模式下,产品迭代速度快,市场不断调整,客户需求不断变化,单纯的手工测试越来越无法适应整个变化过程(迭代快,加班多)。测试人员如何快速响应并保证产品在上线后的质量能够满足市场要求(如何在上线一个新功能的同时快速对旧功能快速进行回归,保证旧功能不被新功能影响而出现严重的 Bug?)。

针对以上问题,采用自动化测试无疑是一个不错的选择,能够做到在保证产品质量的同时提升测试效率

随着行业内卷越来越严重,对于测试岗位的要求也是水涨船高,岗位招聘要求都会出现自动化测试的字眼,因此也是我们跳槽面试、升职加薪必备利器。

自动化测试又可分为接口自动化、Web UI 自动化、App 自动化,今天我们就来聊聊接口自动化测试。

接口自动化测试的价值

  1. 相比于 UI 自动化测试,接口自动化的维护成本更低,主要体现在以下几个方面
    • 分层测试金字塔模型中,接口测试属于第二层服务集成测试,与 UI 自动化测试相比,接口自动化测试收益更大、更容易实现、维护成本更低,有更高的投入产出比,因此是公司开展自动化测试的首选。
    • 前端页面变化快,而且 UI 自动化比较耗时,比如等待页面元素加载、添加等待时间、定位元素、操作元素、模拟页面动作这些都需要时间,因此 UI 自动化实施起来比较困难。
    • 接口较稳定,接口的响应时间基本上都是秒级、毫秒级别,速度快,并且接口自动化本身也可以做一些有关联的操作、全流程的操作,比如:注册 --> 登录 --> 修改个人信息。
  2. 测试复用性
  3. 快速回归(提高回归的覆盖率、效率、稳定性)
  4. 可以运行更多更繁琐的测试,自动化的一个明显的好处是可以在较少的时间内运行更多的测试

接口自动化测试如何开展

工具选择

  • Python/Java + Requests + Unittest/Pytest + HTMLTestRunner/Allure
  • RobotFramework:关键词驱动的自动测试框架
  • 基于 Web 的自动化测试平台(公司自主研发,成本较高,方便不懂编程也能使用)

自动化测试工具有很多,每种工具都有各自的优缺点,选择适合自身实际情况的框架,落地实施才是重点,具体选择哪种工具放在其他文章再探讨。

这里使用 Python + Requests + Pytest + Allure

举个栗子

接口文档(找了一个开放的接口用于测试)

接口信息:

YAML

1
2
3
4
5
6
7
名称: 全国高校信息查询接口
描述: 用于查询全国高校信息
Host: www.iamwawa.cn
Request URL: /home/daxue/ajax
Request Method: POST
Content-Type: application/x-www-form-urlencoded
headers: user-agent:Chrome

参数:

名称类型是否必填描述
typeStringname,根据名称查询
keywordString高校名称,如:四川轻化工大学

请求示例:

CODE

1
2
3
4
5
6
7
8
POST /home/daxue/ajax HTTP/1.1
Host: www.iamwawa.cn
user-agent: Chrome
Content-Type: application/x-www-form-urlencoded
Cookie: PHPSESSID=sjsrn0drje6ds5fq9kouoo2r23
Content-Length: 54type=name&keyword=四川轻化工大学

响应示例:

JSON

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{"status": 1,"info": "查询成功!","data": [{"id": "2181","name": "四川轻化工大学","code": "4151010622","department": "四川省","city": "自贡市","level": "本科","remark": ""}]
}

线性脚本

PYTHON

1
2
3
4
5
6
7
8
9
import requestsres = requests.post(url="https://www.iamwawa.cn/home/daxue/ajax",headers={"user-agent": "Chrome"},data={"type": "name", "keyword": "四川轻化工大学"})
assert res.status_code == 200
res_json = res.json()
print(res_json)
assert res_json["status"] == 1

使用以上代码,最基础最简单的接口测试就做起来了,好的开始就是成功的一半。

但是,问题也随之而来,线性脚本的缺点也暴露出来了:

  1. 测试的输入和断言都是捆绑在脚本中,易读性差
  2. 无共享或重用脚本,可复用性低
  3. 线性脚本修改代价大,维护成本高,不便于后期优化
  4. 容易受软件变化的影响,容易受意外事件的影响,引起整个测试失败

所以,下一步就是如何优化线性脚本,也就是如何实现代码的高内聚低耦合,也是接口自动化测试框架要解决的问题。

接口自动化测试框架

开源代码请点击文末小卡片领取

  • base_api.py:对 Requests 库进行二次封装,完成对 api 的驱动

  • api:继承 base_api,将 http 请求接口封装成 Python 方法

  • utils:CommonUtil,公共模块,将一些公共函数、方法以及通用操作进行封装,如:日志模块、yaml 操作模块、时间模块

  • config:配置文件模块,配置信息存放,如:URL、Port、Headers、Token、数据库信息等

  • data:测试数据模块,用于测试数据的管理,数据与脚本分离,降低维护成本,提高可移植性,如:yml 文件数据

  • cases:测试用例模块,用于测试用例的管理,这里会用到单元测试框架,如:Pytest、Unittest

  • run.py:批量执行测试用例的主程序,根据不同需求不同场景进行组装,遵循框架的灵活性和扩展性

  • logs:日志模块,用于记录和管理日志,针对不同情况,设置不同的日志级别,方便定位问题

  • reports:测试报告模块,用于测试报告的生成和管理,如:基于 Allure 生成的定制化报告

同时,在这我为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看。

【2025最新版】字节大牛讲的最全最细的自动化测试全套教程!永久白嫖,拿走不谢,全程干货无废话!逼自己15天内学完,从软件测试基础到项目实战一套全通关!


文章转载自:

http://b67SzRW6.jrtjc.cn
http://fyGgzzNW.jrtjc.cn
http://RsbxRDA2.jrtjc.cn
http://fCxsAtDm.jrtjc.cn
http://gHGFx6cc.jrtjc.cn
http://JS5CMYah.jrtjc.cn
http://lzNVrAfi.jrtjc.cn
http://rJaYA0cI.jrtjc.cn
http://DBteQi6J.jrtjc.cn
http://gz9E9wvv.jrtjc.cn
http://Gfs48x8I.jrtjc.cn
http://6ecDwKYQ.jrtjc.cn
http://ppv84s8s.jrtjc.cn
http://bkMFDnB5.jrtjc.cn
http://rV8szoIO.jrtjc.cn
http://lUuUkeMC.jrtjc.cn
http://ncAzIo7x.jrtjc.cn
http://WeYWC3yN.jrtjc.cn
http://sIS1pQA6.jrtjc.cn
http://MaGjjpBu.jrtjc.cn
http://xBkRyvvG.jrtjc.cn
http://ShwWjl8D.jrtjc.cn
http://6Hz3SVtb.jrtjc.cn
http://fb4CLnMM.jrtjc.cn
http://FlJ1WY77.jrtjc.cn
http://xvWH2UNS.jrtjc.cn
http://cWAEv2FG.jrtjc.cn
http://J6cwgZzv.jrtjc.cn
http://c5GK1Tb5.jrtjc.cn
http://7plPAGPC.jrtjc.cn
http://www.dtcms.com/wzjs/653592.html

相关文章:

  • 自己怎么制作一个网站少儿编程平台
  • 花生壳盒子做网站服务器杭州网站制作培训
  • 产品设计优秀网站泰安网站建设公司排名
  • 好的网站设计特点代理公司注册地址
  • 网站建设违约责任条款wordpress 视频 slider
  • 鞍山高新区网站苏州十大软件公司
  • 网站建设与网页设计专业的更换网站服务商 重新制作了网站
  • 华为手机官方网站登录网站开发设计思想报告
  • 为网站营销好处中和阗盛工程建设有限公司网站
  • 做网站登录页面的论文网站策划案模板
  • 营销单页模板网站wordpress 清缓存
  • 常用小网站河北手机版建站系统哪个好
  • 如何做网站推广资料上海2022进口博览会
  • 和外国人做古玩生意的网站wordpress 注册功能
  • 东莞网站推广WordPress大前端dux
  • 做违法网站的后果华为公司的企业设计
  • 太原制作网站的工作室seo官网优化详细方法
  • 政协 网站建设济南源聚网络公司
  • 茅台酒网站建设方案图书馆网站建设教程
  • 诚信网站认证必需做吗大学校园网站建设
  • 网站优化链接免费黄页营销网站
  • 西部数码网站管理系统广州站西手表
  • 网站发布时间更改海报设计培训
  • 意大利之家设计网站中国域名交易平台
  • 房城乡建设部网站网站建设网络营销平台: 云搜系统
  • 做婚恋交友类网站高端菜单设计制作
  • 内销网站怎么做景观设计收费标准
  • 帮人注册网站_做appwordpress 数据库账号
  • 做网站厦门做微商好还是开网站好
  • 站长网站查询工具h5页面免费制作