接口自动化框架搭建-写在前面

news2024/11/28 0:58:56

从今天开始,我将带领大家一起学习接口自动化框架的搭建,在学习之前,我们先了解搭建一个接口自动化框架需要具备哪些知识,应该做哪些准备工作

测试开发工程师的入门条件

近几年比较流行测试开发岗位,很多小伙伴都不知道应聘测试开发岗位应该具备什么素质,有些人觉得是不是应该看很多书,看很多视频,写很多代码,对功能比较熟悉,了解公司的业务或者学会录制脚本。。。。。。这样是不是就可以去应聘测试开发岗位了?我可以肯定的回答你,肯定不是,那么我们到底应该具备哪些技能呢?

举个例子,我们打开Jenkins的页面,在立即构建中构建计划,然后执行

最后我们会收到接口自动化报告,报告的内容是此次一次运行接口个数为10个,通过个数为2个,失败个数为8个,这个看到是很高大上的样子

 那么很多人这个时候可能会问:这个是怎么做到的?这个是怎么做到的,那么很多人这个时候可能会问:这个是怎么做到的?这个是怎么做到的,接口在哪里呢?其实这个是在excel里面的。

接口自动化框架

如果要实现上面的功能,需要掌握哪里技术了,是需要学会设计框架,开发框架还是重构框架呢?答案是显而易见的,这些都需要掌握。那么这个时候你可能会觉得无从下手,看着都很高大上的东西,对于初学者,应该怎么才能一步步落实,最后实现呢

要学会上面的技术,其实真的一点都不难,这个就是我们本次系列要给大家分享的知识,我会带着大家一步一步的学会,下面我们把上面的抽象概念都划分为下面几个方面

接口基础

大家一定要掌握接口的基础知识,因为这个是一个初级工程师必须要学会的东西,如果在面试时问你一个基础的接口都回答不上了,那么你恐怕也无法进行后面的面试了。

接口开发

当我们掌握了接口基础后,那就需要掌握接口的开发了,通常是通过django开发GET接口和Post接口,我们会了解接口开发的流程

Unittest 与接口测试结合

当你学会了接口开发后,那么你就需要掌握Unittest 与接口测试结合。比如学习unittest的使用,断言,requests的引入使用,HTMLTestRunner生成测试报告以及Case的管理

接口自动化测试框架从设计到开发

当你学会了前面的基础知识,接下来我们就会正二八经的学习接口自动化框架的搭建了,设计框架跟人一样,都是需要五脏六腹的。设计框架,这个是必须的掌握的,不然后面写出来的东西恐怕也没人看得多,后期也不好维护。工具类封装,这个也是必须学会的,当前前提我们可以从很low的封装开始,后面一步步重构成高大的封装。接着是基类的封装;后面是调试错误,这个是小伙伴们经常碰到的,很多小伙伴遇到调试错误后不知道怎么去解决。后面就是数据处理,把一些数据进行封装,后面就是回写测试结果,把测试的结果写到excel表格中。紧接着就是解决数据依赖问题,这个是接口自动化测试的重点,公众号中我有专门写了一个方法对这一部分进行介绍,大家可以查看。举个例子,你去付款的时候需要订单号,但是如果你没有下单,你会有订单号吗?肯定是没有的。所以付款的接口是需要依赖下单的接口。后面是结果统计,邮件服务,最后是发送报告。

这样一个接口自动化框架就实现了,不过并不是掌握这么多就好了,我们还需要掌握一些常见的操作,比如操作数据库或者操作cookie。

说了这么多,后面跟着我一起学习吧!

本文主要是讲解接口自动化框架搭建需要掌握哪些知识,在后面的文章中,我会带领大家一点一点的学习!

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

 视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1399372.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

虚拟机安装宝塔的坑

问题: 在虚拟机中centos7和centos8中安装宝塔之后,无法访问面板。 解决: 1.先关闭防火墙(如果本机能够ping通相关端口,则不用关闭防火墙) 2.最新的宝塔会自动开启ssl协议,需要手动关闭。…

【深度学习】BasicSR训练过程记录

文章目录 两种灵活的使用场景项目结构概览简化的使用方式 项目结构解读1. 代码的入口和训练的准备工作2. data和model的创建2.1 dataloader创建2.2 model的创建 3. 训练过程 动态实例化的历史演进1. If-else判断2. 动态实例化3. REGISTER注册机制 REGISTER注册机制的实现1. DAT…

反序列化提升刷题(2)

今天的例题&#xff1a; <?phphighlight_file(__FILE__);class ctfshowvip{public $username;public $password;public $code;public function __construct($u,$p){$this->username$u;$this->password$p;}public function __wakeup(){if($this->username! || $thi…

2008年苏州大学837复试机试C语言

2008年苏州大学复试机试C 题目 编写程序充成以下功能: 一、从键盘上输入随机变量x的 10个取样点。X0&#xff0c;X1—X9 的值; 1、计算样本平均值 2、判定x是否为等差数列 3、用以下公式计算z的值(t0.63) 注。请对程序中必要地方进行注释 补充&#xff1a;个人觉得这个题目回…

macOS修改默认时区显示中国时间

默认时区不是中国,显示时间不是中国时间 打开终端 ,删除旧区,并复制新时区到etcreb sudo -rm -rf /etc/localtime sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 重启系统后时间显示为中国时间

R 语言学习 case3:柱状图(ggchart)

主要涉及到对图的优化&#xff0c;使用ggchart工具包 ggchart 链接&#xff1a;https://thomas-neitmann.github.io/ggcharts/index.html step1: 安装工具包 install.packages("ggcharts") install.packages("tidytext")step2: 导入工具包 library(dplyr…

【游戏开发程序员必备技术】

【游戏开发程序员必备技术】 当你披着《英雄联盟》的战袍&#xff0c;挥舞着利剑&#xff0c;与对手不死不休地战斗&#xff1b; 当你驾驶着战车穿过《坦克世界》的烟尘弹雨&#xff0c;掩护基地免受敌人侵袭&#xff1b; 当你完美落地《CS&#xff1a;GO》的翻墙smoke&…

领航分布式消息系统:一起探索Apache Kafka的核心术语及其应用场景

本文是Kafka系列文章的第一篇&#xff0c;将带你了解Kafka的核心术语及其应用场景&#xff0c;后续会逐步探索其各方面的原理及应用场景。下面先看一张大概得简图&#xff0c;涉及Kafka的功能、原理等等&#xff0c;后续不断深入介绍&#xff0c;欢迎关注。 1、什么是消息中间…

unity 编辑器开发一些记录(遇到了更新)

1、封装Toggle组件 在用toggle等会状态改变的组件时&#xff0c;通过select GUILayout.Toggle(select, text, options)通常是这样做&#xff0c;但是往往有些复杂编辑器需求&#xff0c;当select变化时需要进行复杂的计算&#xff0c;所以不希望每帧去计算select应该的信息。…

muduo 网络库源码解析和使用

1. base 模块 1.1 API 1.1.1 eventfd int eventfd(unsigned int initval, int flags);&#xff08;1&#xff09;类似信号量&#xff1b;其内部保存了一个 uint64_t 计数器 count&#xff0c;使用 initval 初始化&#xff1b; &#xff08;2&#xff09;read 没有设置 EFD…

uniapp-app视频层级过高问题

使用v-html动态渲染 参考&#xff1a;uniapp video app端层级过高的问题&#xff0c;滑动渲染问题。_video在app端层级过高-CSDN博客 有想过使用原生&#xff0c;但是太麻烦了&#xff0c;然后换成了弹窗播放&#xff0c;但是动态的src播放失败&#xff0c;错误提示&#xff…

洋州影院购票系统:如何用Java、Spring Boot、Vue和MySQL实现现代化管理

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

【高等数学之牛莱公式】

一、深入挖掘定积分 二、变限积分 三、变限积分的"天然"连续性 四、微积分基本定理 五、定积分基本方法 5.1、换元法 5.2、分部积分法 六、定积分经典结论 七、区间再现公式 八、三角函数积分变换公式 九、周期函数积分变换公式 十、分段函数求定积分

【MySQL】——关系数据库标准语言SQL(大纲)

&#x1f383;个人专栏&#xff1a; &#x1f42c; 算法设计与分析&#xff1a;算法设计与分析_IT闫的博客-CSDN博客 &#x1f433;Java基础&#xff1a;Java基础_IT闫的博客-CSDN博客 &#x1f40b;c语言&#xff1a;c语言_IT闫的博客-CSDN博客 &#x1f41f;MySQL&#xff1a…

HCIA——18实验:NAT

学习目标&#xff1a; NAT 学习内容&#xff1a; NAT 1.要求——基本的 2.模型 3.IP分配、规划、优化 1&#xff09;思路 R2为ISP路由器&#xff0c;其上只能配置ip地址&#xff0c;不得冉进行其他的任何配置—ospf配置 认证 、汇总、沉默接口、加快收敛、缺省路由 PC1-PC2…

如何通过frp、geoserver发布家里电脑的空间数据教程

如何通过家里电脑的geoserver发布空间数据的教程 简介 大家好&#xff0c;我是锐多宝&#xff0c;最近我在开发一个新网站的时候遇到一个需求&#xff0c;这里记录一下以帮助需要用到的网友。 我的需求是&#xff1a;用户通过网站前端上传空间数据后&#xff0c;即可在前端展…

【Spring 篇】MyBatis核心配置文件解密:数据之门的守护精灵

欢迎来到MyBatis的幕后花絮&#xff0c;今天我们将深入解析MyBatis的核心配置文件&#xff0c;这个神秘的数据之门的守护精灵。这份配置文件是连接你的应用程序和数据库之间的纽带&#xff0c;也是整个MyBatis舞台背后的幕后工作者。在这篇博客中&#xff0c;我们将揭开核心配置…

竞赛保研 机器学习股票大数据量化分析与预测系统 - python 竞赛保研

文章目录 0 前言1 课题背景2 实现效果UI界面设计web预测界面RSRS选股界面 3 软件架构4 工具介绍Flask框架MySQL数据库LSTM 5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 机器学习股票大数据量化分析与预测系统 该项目较为新颖&am…

Cortex-M3/M4内核中断及HAL库函数详解(1):中断相关寄存器

0 工具准备 Keil uVision5 Cortex M3权威指南&#xff08;中文&#xff09; Cortex M3与M4权威指南 stm32f407的HAL库工程 STM32F4xx中文参考手册 1 NVIC相关寄存器介绍 在Cortex-M3/M4内核上搭载了一个异常响应系统&#xff0c;支持为数众多的系统异常和外部中断。其中&#…

MySQL运维篇(二)主从复制

一、概述 主从复制是指将主数据库的 DDL 和 DML 操作通过 二进制日志 传到从库服务器中&#xff0c;然后在从库上对这些日志重新执行&#xff08;也叫重做&#xff09;&#xff0c;从而使得从库和主库的数据保持同步。 MySQL 支持一台主库同时向多台从库进行复制&#xff0c; 从…