自动化测试高效学习路线指导,提高你百倍自学效率

前言

从各方来的朋友,能够相聚这篇文章是大家的缘分,也是我的荣幸。
接下来,我要开始和大家讲讲如何从0开始学Python自动化测试。

不论是转行自动化测试还是功能测试进阶自动化还是开发转自动化测试的伙伴,这篇自动化测试工程师学习导图,我想都是可以看看的

同时也相信各位在掌握这份学习导图上的知识点后,能够独立搭建属于各位自己的Python自动化测试框架。

不过前情提要是,在自学完这个知识点后,一定要记得到一些开源网站找合适的项目去练手。

  • 一来是找工作所需,项目经验必不可少
  • 二来需要项目来校验各位目前的学习成果
  • 最后,能够通过成功地做好开源项目,增加各位工作中的自信,明白是一回事,曾经做出来过是另一回事

那么就跟着我下面的自动化测试python栈学习路线,一起看看所需知识点来查漏补缺,并将所学融入到你的公司项目中去吧!

路线图总览

接下里我将从下图六个方面带大家看看自动化测试python栈主要学习方向

  1. python编程阶段
  2. APPUI阶段
  3. WEBUI阶段
  4. 接口阶段
  5. 持续集成阶段
  6. 面试及简历阶段

在这里插入图片描述

这张学习路线图过于大,一张图看不清,只好分几张小图给大家看了

第一部分:Python编程必备技术

首先我们说是python栈的知识点,那么python编程肯定是必不可少的,如果你想学会自动化测试,那么python语法就必须会了。

可能有不少人会有问题,为什么只有python栈而没有Java栈、PHP栈这些。

有这方面观点的朋友,我需要矫正一下,各位并不是因为会什么语言才去做什么工作,而是因为这项工作需要什么样的语言才去学习这门语言。

python在自动化测试领域,个人敢说是最好最契合的语言了

诚然五六年前python还未兴起的时候,大家都是用Java做自动化测试,当时测试行业在国内都不怎么注重,不少自动化测试人员都是一线Java开发转岗在做

后来python逐渐火热,大家发现用python做自动化框架是真的好使,自动化测试里python替代Java是形势所趋。

这就有人会问了,“学习python主要包括几部分呢?”

我们直接看图
在这里插入图片描述

python语言的学习是python自动化测试最重要的基础部分

首先我们需要了解python这项语言,掌握完整的python编程基础、了解python编程思维、了解面对对象实现思维

这个阶段有其他语言基础的可能会学起来特别的快,没有语言基础的也不用担心,毕竟python语言比之其他语言学起来可以说是最简单的、入门要求最低的语言了

第一阶段: python基础阶段

了解python语言、python安装和python的基础语法
在这里插入图片描述

第二阶段: python进阶阶段

函数、文件操作、面对对象原理、python中的各个模块和python自动化发送邮件在这里插入图片描述

第三阶段:数据库的基本知识

MySQL搭建、增删改查、相关查询、python读写
在这里插入图片描述

以上是python编程语言的学习点,是最基础也是最重要的内容,往后所有有关python语言的操作都是在这些知识点上面执行或者是它们的衍生

像python和MySQL进行数据驱动、利用python配置文件进行封装、python与unittest结合的单元测试等,许许多多都需要上述知识,python的基础一定要打好
在这里插入图片描述
python编程学习视频分享

第二部分:APPUI自动化测试

以上就是python编程语言的学习知识点,继续让我们看第二部分,APPUI自动化测试的知识点部分

APPUI自动化测试中最重要、最基础的就是appium工具。

但是我们需要首先app各类型的了解开始,而后才学习appium工具的安装。

还有app的稳定测试工具monkey及使用monkey和adb指令,以及在app上定位元素的方法。

最后的最后是需要掌握将我们的APPUI的自动化测试,并入我们的自动化框架中。

接下来请看图解

在这里插入图片描述

第二部分:APPUI自动化测试

第一阶段 appium基本应用

app类型、app环境搭建及其使用介绍
在这里插入图片描述

第二阶段 monkey基本应用

monkey工具、adb指令、编写monkey脚本

在这里插入图片描述

第三阶段:appium进阶应用

appium框架、app工具模块的使用、三类等待
在这里插入图片描述

第四阶段:APP上元素定位及操作技巧

app上的元素定位及特殊情况处理
在这里插入图片描述

第五阶段:APPUI并入自动化测试框架

将做好的APPUI自动化并入测试框架
在这里插入图片描述

以上知识点可能比较抽象,APPUI的自动化测试大都需要进行实际操作来学习的,有许许多多的代码和编写规则

APPUI是自动化测试中比较简单的一个部分,其需要的技巧部分是算较少的,大都多练就可以完全掌握

相对应的学会APPUI对薪资的涨幅也非常有限,大概是增幅功能测试岗位的10%~20%

第三部分:WEBUI自动化阶段

我们来看第三部分需要学习的知识点,WEBUI自动化阶段

在学习webUI自动化前,我们不可避免的需要和web前端的同事打交道,学习一部分前端知识是至关重要,和APPUI中了解app类型一样,前端知识是基础且重要的

而后我们才能开始学习webUI自动化测试的常用工具:selenium和webderiver,这两个工具可以说是会贯彻web测试的全过程,其重要程度不言而喻

接下来是元素定位技巧和页面操作技巧,学会了这些可以算是入门的了,说的上是明白一点点自动化测试知识,但还远远说不上会自动化测试

我们还需要更多的自动化测试中常用的知识,例如:断言、封装、二次封装、数据驱动等

学会了以上单元测试框架unittest也是必不可少的,了解unittest测试套件及使用,结合ddt实现数据驱动,生成各种测试报告

最后的最后和APPUI一样,我们需要将我们的web测试并入到我们的自动化测试框架中去

接下来请看图解
在这里插入图片描述

第一阶段:前端基础

html基础知识在这里插入图片描述

第二阶段:工具使用

Selenium工具和WebDeriver的使用
在这里插入图片描述

第三阶段:元素定位

八大元素定位和xpath定位
在这里插入图片描述

第四阶段:web页面常用操作技巧

特殊元素处理、JS的使用、iframe的使用、三类等待
在这里插入图片描述

第五阶段:web自动化测试的常用技巧

断言技巧、优化浏览器、二次封装、数据驱动
在这里插入图片描述

第六阶段:UnitTest结合Selenium

unittest的原理、测试套件、结合DDT进行驱动、两大测试报告
在这里插入图片描述

第七阶段:多线程与分布式

在这里插入图片描述

比起APPUI的自动化测试,webUI的学习量就变得大多了,其实这里面很多技巧在APPUI中也是可以使用的

但抱着由简入深的想法,就没在APPUI中提及,而且appUI的测试中用到这些技巧的次数没有webUI那么频繁,就将这些知识点划分到webUI中了

在这里插入图片描述

WEBUI自动化测试项目视频分享

第四部分:接口自动化测试

第四部分是个比较重要的一部分,那就是接口自动化测试

不管是APP也好还是web也好,只要是需要大众的软件就都绕不开接口,那么也就绕不开接口自动化测试了

第一步在接口自动化测试中,最基础最重要的知识点就是接口协议,明白什么是接口才能做好接口自动化测试

第二步则是掌握接口测试工具的使用,最常用的postman或者jmeter

第三步需要解读接口文档、知晓需要测试的地方及做好模拟测试

第四步接口相关的数据库的使用、以及如何操作这些数据

第五步和UI测试中一样,我们需要讲接口测试并入到搭建的测试框架中

学完这些可以到什么程度呢?

  1. 完全结合企业级flask接口框架讲解基于requests库的接口自动化测试技巧
  2. 掌握完整的接口自动化测试技能
  3. 掌握http协议原理
  4. 掌握关联接口的测试实现
  5. 独立搭建一套完整基于关键字驱动+excel+unittest+beautifulreport+yaml+分布式+多线程的自动化接口测试框架
  6. 实现更为高级的大批量接口自动化测试实现
  7. 掌握第三方开源接口框架yapi的实际应用

接下来请看图解
在这里插入图片描述

第一阶段:什么是接口

接口的基础知识

在这里插入图片描述

第二阶段:接口工具的使用

jmeter和postman

在这里插入图片描述

第三阶段:接口测试的准备工作

接口文档及接口测试的提前工作
在这里插入图片描述

第四阶段:数据库知识

各种数据库的使用

在这里插入图片描述

第五阶段:数据导入与测试

接口数据关联、DDT数据驱动、python做接口框架
在这里插入图片描述

当你学会了webUI自动化,APPUI自动化和接口自动化,就像是掌握了三叉戟上的三根利刃

还需要最后一根集成这三根利刃的棍子,不然就就仅是三根利刃发挥不出功效,这就是耕田的犁和三叉戟的区别​

在这里插入图片描述

接口自动化测试项目视频分享

在这里插入图片描述

看到最后的要点

最后再给大家讲一些在自动化测试学习上面的几个要点吧​!!!

  1. 学习自动化测试是否真的需要学习代码?

这个是肯定的,虽然我们有robotframework这样不需要代码就能实现自动化测试的工具
但是我们要清楚我们做的是自动化测试框架而不是单纯的自动化测试

  1. 我是需要先学习工具还是先学习框架呢​???

当然是先学习工具,只有了解各种工具他们的特性,才能更好的选择工具来搭建框架,而框架思维无非是当下两种模式——pom模式和关键字驱动模式

  1. 如果你想要参加培训来系统学习自动化测试

就一定要先问清楚,他们是教自动化测试工具?还是教你写自动化测试框架?框架的思维会教哪些?

毕竟会工具和会框架这两者是有很大区别的,在上述三叉戟和犁的例子就能看得很明显了。

只会自动化测试工具,无非就是编写一些线性脚本,薪资也就11K左右,而且这个求薪标准对面还需要考虑考虑,让一个薪资更低的人担任岗位

不过如果你是自己搭建自动化测试框架,框架符合公司需求,维护起来也不复杂,就算薪资18K,面试官都是求着她来。

码字不易,希望我的回答对你有用哦!!!

作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:开心螺蛳粉】自提!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。在这里插入图片描述

在这里插入图片描述

行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群:1150305204,里面有各种测试开发资料和技术可以一起交流哦。

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

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

相关文章

Zookeeper客户端命令、JAVA API、监听原理、写数据原理以及案例

1. Zookeeper节点信息 指定服务端,启动客户端命令: bin/zkCli.sh -server 服务端主机名:端口号 1)ls / 查看根节点下面的子节点 ls -s / 查看根节点下面的子节点以及根节点详细信息 其中,cZxid是创建节点的事务id&#xff0c…

Rocky Linux 运维工具 firewall-cmd

一、firewall-cmd​的简介 ​​firewall-cmd​是基于firewalld的防火墙管理工具。用户可以使用它来配置、监控和管理防火墙规则,包括开放端口、设置服务规则等。 二、firewall-cmd​​的参数说明 序号参数描述1​​–zone指定防火墙区域2–add-portxxx/tcp允许特定…

tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用

1.在tkinter中,Frame是一个容器小部件用于组织和管理其他小部件。它可以作为一个独立的可见区域,也可以作为其他小部件的父容器。 import tkinter as tk import tkinter.ttk as ttk import tkinter.messagebox as mbm tk.Tk() m.title("tkinter L…

MSSQL渗透测试

目录 mssql数据库连接提权至服务器权限 拿到目标的IP地址,我们先对IP地址进行信息收集,收集信息资产,同时使用nmap对IP地址进行扫描 nmap -sC -sV IP从扫描的结果中,我们能知道目标服务器是windows操作系统,使用的是m…

DAY10-内容安全过滤技术概述

文件过滤技术流程: 应用行为控制技术具体:

W-TinyLFU 算法实现

前言 不同于常见的 LRU 或 LFU,Window TinyLFU 是一种非常高效的缓存设计方案。先来看下 LRU 和 LFU 算法的缺点: LFU 缺点: 需要为每个记录项维护频率信息,这将消耗大量的内存空间可能存在旧数据长期不被淘汰(一开…

让AI给你写代码,初体验(二)-写一个flask应用

这里我们准备让AI做一个稍微复杂一点任务,写一个前后应用,具体: 前台用html输入股票代码,后台通过akshare的接口程序获取该股票的实时价格,然后返回显示在html 我们先用AI对话看一下,AI会给我们什么编码建…

柯桥会计培训学校,会计职称考试,考中级会计怎么证明工作年限?

中级会计考试是会计从业人员的重要考试之一,对于中级考生来说,工作年限证明是必不可少的一步。因此,在考中级会计之前,需要对如何证明工作年限进行了解和掌握。 为大家整理了工作年限证明相关信息,一起来看看吧~ 一、…

Rocky Linux 运维工具 ls

一、ls 的简介 ​​ls​ 用于列出当前目录下的文件和目录,以及它们的属性信息。通过 ​ls​命令可以查看文件名、文件大小、创建时间等信息,并方便用户浏览和管理文件。 二、ls 的参数说明 序号参数描述1-a显示所有文件,包括以 ​.​开头的…

5G双域快网

目录 一、业务场景 二、三类技术方案 2.1、专用DNN方案 2.2、ULCL方案:通用/专用DNNULCL分流 2.3、 多DNN方案-定制终端无感分流方案 漫游场景 一、业务场景 初期双域专网业务可划分为三类业务场景,学校、政务、文旅等行业均已提出公/专网融合访问需…

【DDD】学习笔记-领域驱动设计对持久化的影响

资源库的实现 如何重用资源库的实现,以及如何隔离领域层与基础设施层的持久化实现机制,具体的实现还要取决于开发者对 ORM 框架的选择。Hibernate、MyBatis、jOOQ 或者 Spring Data JPA(当然也包括基于 .NET 的 Entity Framework、NHibernat…

Acwing周赛记录

很难得参加一次周赛hhhhh这次参加的是第144场周赛,一共有三道题 AcWing 5473. 简单数对推理 给定两个整数数对,每个数对都包含两个 1∼9 之间的不同整数。 这两个数对恰好包含一个公共数,即恰好有一个整数同时包含于这两个数对。 给定这两…

选择排序,冒泡排序,插入排序,快速排序及其优化

目录 1 选择排序 1.1 原理 1.2 具体步骤 1.3 代码实现 1.4 优化 2 冒泡排序 2.1 原理 2.2 具体步骤 2.3 代码实现 2.4 优化 3 插入排序 3.1 原理 3.2 具体步骤 3.3 代码实现 3.4 优化 4. 快速排序 4.1 原理 4.2 具体步骤 4.3 代码实现 4.4 优化 为了讲…

Linux课程四课---Linux开发环境的使用(vim编辑器的相关)

作者前言 🎂 ✨✨✨✨✨✨🍧🍧🍧🍧🍧🍧🍧🎂 ​🎂 作者介绍: 🎂🎂 🎂 🎉🎉&#x1f389…

【MySQL】内置函数 -- 详解

一、日期函数 日期:年月日时间:时分秒 1、获得年月日 2、获得时分秒 3、获得时间戳 4、在日期的基础上加日期 5、在日期的基础上减去时间 6、计算两个日期之间相差多少天 7、获得当前时间 ⚪练习 (1)记录生日 (2&…

Flask入门一(介绍、Flask安装、Flask运行方式及使用、虚拟环境、调试模式、配置文件、路由系统)

文章目录 一、Flask介绍二、Flask创建和运行1.安装2.快速使用3.Flask小知识4.flask的运行方式 三、Werkzeug介绍四、Jinja2介绍五、Click CLI 介绍六、Flask安装介绍watchdog使用python--dotenv使用(操作环境变量) 七、虚拟环境介绍Mac/linux创建虚拟环境…

家政按摩上门服务小程序搭建

家政按摩上门服务小程序支持技师入驻申请,用户可以通过在线下单预约家政服务,并根据距离、价格、销量好评度等条件进行筛选和选择。用户可以选择技师进行预约,并填写自己的服务地点和时间,享受上门服务。同时,技师也可…

数据分析-Pandas数据探查初步柱状图

数据分析-Pandas数据探查初步柱状图 数据分析和处理中,难免会遇到各种数据,那么数据呈现怎样的规律呢?不管金融数据,风控数据,营销数据等等,莫不如此。如何通过图示展示数据的规律? 数据表&am…

在Arcgis中删除过滤Openstreetmap道路属性表中指定highway类型道路

一、导出道路类型并分析 1. 导出道路类型 选中highway属性列,选择汇总→确定 2. 分析 用Excel打开输出表,包含的道路类型如下 0.空值’’ 车辆可行驶道路(和bfmap的并集) 空值(无定义道路) 二、…

基于Vue(提供Vue2/Vue3版本)和.Net Core前后端分离、强大、跨平台的快速开发框架

前言 今天大姚给大家推荐一款基于Vue(提供Vue2/Vue3版本)和.Net Core前后端分离、开源免费(MIT License)、强大、跨平台的快速开发框架,并且框架内置代码生成器(解决重复性工作,提高开发效率&a…