因为我经常在分享自动化测试技术,最近被问到:
功能测试想转自动化,请问应该怎么入手?有没有好的资源推荐?
那么,接下来我就结合自己的经历聊一聊我是如何在工作中做自动化测试的。学习路线和网盘资源放在文末了。(因为详细所以篇幅很长,建议收藏)。也可以加入我的技术交流群,一起摆脱内卷。
测试新人
我的职业生涯开始和大多数测试人一样,刚开始接触都是纯功能界面测试。那时候在一家电商公司做测试,在这个吃技术的IT行业来说,不断学习是至关重要的。但是我之前做的是最基础的业务工作,随着时间的消磨,让我产生了对自我价值和岗位意义的困惑。
一是感觉自己在浪费时间,另一个就是做了快2年的功能测试,感觉每天过得浑浑噩噩,薪资也从不见涨,岗位也一直得不到提升,身边的许多同事要么升职加薪,要么跳槽去了更好的公司工作,特别觉得自己碌碌无为。
选择Python
不得已开始思考怎么去改变现状。当时最简单的想法是挤出时间去学习各种测试技术和工具,提高自己的价值,也就是核心竞争力。后来被主管偶然发现,给了我一些资源和文档,建议我去研究下自动化测试。
当时来说,我还没有接触过自动化测试,但是通过主管给我的资源,让我认识到开发知识对于测试工作的帮助,编程语言的能力会决定你测试技术的深度。当然也能带来收入的高度。
那时候正是脚本语言开始流行起来,因为当时项目的原因跟Python结缘,开始用Python和Selenium来尝试做自动化测试。那时,关于Python版的Selenium并不多,在学习的同时我开始发表相关博客。
分享是学习新技术的驱动力,大多数时候我们很难坚持学一个新技术的原因就在于缺少反馈,不管是做内部分享或者是博客都是很好的反馈机制。当然,也很有成就感。
2015年的时候,由于项目的原因,开始使用Robot Framework测试框架,正因为有Python的基础,所以很快就理解了Robot Framework框架的工作原理,并可以根据项目的需要开发系统关键字。
掌握自动化工具的原理使用起来才会更加游刃有余,而这也需要你有一定的编程基础的原因。
2016年随着移动App越来越流行,趁着换工作的间隙,我开始学习了一个月的appium自动化工具,但工作中用不到后来就没在继续了。
后来,我开始针对另一个社区项目编写Web UI自动化测试,前后做了好几个月,积累了一些经验,开始尝试设计Web自动化框架,当时主要还是针对Selenium API的封装。
自动化测试
当时由于公司的规模和产品的局限性,导致自动化测试始终未能应用到公司实战项目中。我觉得外面的世界有更多机会,自动化已经流行而且越来越普及,我想要突破自己的测试技术瓶颈,我毅然决然的跳槽一家公司专职做自动化测试的工作。
后来的机缘巧合,朋友推荐我去一家金融公司做测试开发,负责开发公司定制化的测试质量平台。
这对于我来说是一个挑战,新的领域,测试开发在一线城市非常吃香。当时的待遇比初、中级开发工程师要高。
到岗后就是顶住压力,不断的学习测试开发技能,而且学以致用。技术架构采用的是前后端分享,包括Python的后端开发框架Flask,前端框架vue,elementUI组件等
坚持做了几年的测试开发,真实的体会到测试开发等于测试全周期的工作,包括产品功能业务熟悉,测试平台的需求设计,平台前后端研发,平台的自测,给到测试部门几十号人的推广、培训产品使用、运营。
所以测试开发的大前提是功能测试经验丰富,接口自动化,UI自动化非常熟练,不然很难以开展自动化测试开发工作。
行业内卷
最近聊到软件测试的行业内卷,经济大环境不好,企业也都在“降本增效”。再加上转行和大学生进入测试行业。想要获得更好的待遇和机会,不断提升自己的技能栈成了迫在眉睫的问题。
不论是面试哪个级别的测试工程师,面试官都会问一句“会编程吗?有没有自动化测试的相关经验?”
所以还停留在手工功能测试层面,如果不去提升技术,不仅要面临长江后浪推前浪的压力,还要顶住当下行业的内卷之势。不然就只能接受窘境,最后甚至是面临淘汰。更别说升职涨薪了
如何从初级功能测试到高级自动化测试,性能测试或者测试开发,达到技术提升和待遇提高的目的,是很多初级测试人必经的一个阶段。作为一个过来人,对学习过程中的困难深有体会。
所以我热衷于收集整理资源,记录踩坑到爬坑的过程。希望能把自己所学,实际工作中使用的技术、学习方法、心得及踩过的一些坑,记录下来。也希望想提升技能的你一样,通过我的分享可以少走一些弯路,可以形成一套自己的方法,并应用到实际中。
学习指南
如果你也需要摆脱行业的内卷
在还能奋斗的年龄,选择合适的方向,尽量去发挥好自己的价值。
我的自动化测试之路,一路走来都离不每个阶段的计划。在这套学习路线中,我们结合了当下企业招聘所必须的技能点做了减法。避免贪多嚼不烂。除了下面的《自动化测试工程师学习路线》,也整理了不少【网盘资源】,需要的朋友可以扫描文末二维码获取网盘链接。希望会给你带来帮助和方向。
【自动化测试开发学习路线】
1.软件测试基础知识内容
软件测试职业以及发展定位 |
软件测试的概述&原则 |
软件测试的策略及详细讲解 |
软件测试的生命周期 |
软件测试工作流程 |
软件需求分析制作详解 |
软件测试计划的编写 |
软件测试用例的常用方法--等价类,边界值 |
软件测试用例的常用方法--因果图,判定表 |
测试用例的常用方法--状态迁移图;场景法 |
软件测试环境准备&团队组织架构&职责划分 |
bug编写规范,教你写出不low的缺陷 |
bug的流转与状态处理 |
缺陷编写规范与流程处理 |
缺陷编写规范与流程处理 |
2.MySQL数据库知识
数据库对测试人员的重要性 |
数据库概述 |
数据库安装 |
navicat连接数据库 |
简单的增删改查语句 |
DDL语言+类型与约束 |
数据库的增删改操作 |
数据库的其他约束 |
数据库的删除操作 |
3.接口测试基本知识
接口测试原理本质 |
接口测试用例编写和设计 |
Postman部署与接测试以及断言 |
Postman测试集使用&参数化 |
Postman接口关联以及发送报告 |
Fiddler环境搭建及原理&抓包、过滤、断点 |
Fiddler模拟mock实战及弱网实战 |
Jmeter常见元件详解及接门测试参数化 |
Jmeter接门关联、断言及JDBC包使用 |
Jmeter的jar包使用及生成测试报告 |
4.Python编程技术
编程语言介绍/编程概念讲解/环境搭建 |
Python编程思维及语法:变量的定义及基本使用 |
Python编程思维及语法:基本运算、基本数据类型、 |
Python编程思维及语法:输⼊与输出、数据的类型转换 |
Python编程逻辑流程:数学运算符/比较运算符/赋值运算符 |
Python编程逻辑流程:逻辑运算符/成员运算符 |
Python编程逻辑流程:程序中的条件分支--if |
Python编程逻辑流程:程序中的循环结构--while |
Python中的数据类型:python中的list列表定义 |
Python中的数据类型:python中的list列表操作流程 |
Python中的数据类型:python中的dict字典定义 |
Python中的数据类型:python中字典的增删改查 |
Python中的数据类型:元组在python中的应用 |
Python复杂操作:range函数在python中的意义 |
Python复杂操作:for循环的定义实操 |
Python复杂操作:字符串、列表的切片操作 |
Python中的数据类型:python中的集合应用 |
Python函数:python中的函数定义 |
Python函数:python中函数的注释 |
Python函数:python中函数的嵌套 |
Python函数:python中的内置函数 |
Python函数:python中的匿名函数 |
Python函数:python中函数的调用与引用的概念 |
Python函数:python中的装饰器详解 |
Python中的模块化与引用关系 |
Python导包:from关键字与import关键字的应用场景 |
python中的文件操作 |
面向对象:python中的类机制 |
面向对象:类属性的概念与应用 |
面向对象:类中的继承概念应用 |
面向对象:类中的多态概念 |
面向对象:异常机制 |
5.Web自动化测试技术
Web自动化测试入门:前端页面的组成分析详解 |
Web自动化测试入门:javascript操作Dom元素详解 |
Web自动化测试入门:selenium中的环境搭建详解 |
Web自动化测试入门:selenium原理,UI自动化的核心含义 |
Web自动化测试入门:从手工用例向自动化测试用例的迈进 |
Web自动化测试入门:常规定位--八大元素定位 |
Web自动化测试入门: 元素定位之selenium4.0特有网格定位 |
Web自动化测试入门: 元素定位之selenium元素内定位 |
Web自动化测试进阶:网页中难点之等待机制--强制等待 |
Web自动化测试进阶:网页中难点之等待机制--隐式等待 |
Web自动化测试进阶:网页中难点之expected_conditions的应用与原理 |
Web自动化测试进阶:网页中难点之等待机制--显式等待 |
Web自动化测试进阶:网页中难点之匿名函数在等待中的使用 |
Web自动化测试进阶:selenium模拟鼠标操作 |
Web自动化测试进阶:selenium模拟键盘操作 |
Web自动化测试进阶:ActionChain模拟拖动滚动操作 |
Web自动化测试进阶:实战中的单选复选框选择 |
Web自动化测试进阶:实战中的下拉框定位问题 |
Web自动化测试进阶:selenium中的switch_to函数详解 |
Web自动化测试进阶:selenium中的句柄操作详解 |
Web自动化测试进阶: 网页中难点之frame切换 |
Web自动化测试进阶: 网页中难点之多窗口切换 |
Web自动化测试进阶: 网页中难点之alert切换 |
Web自动化测试进阶:实战项目中难点之验证码问题 |
Web自动化测试进阶:图像处理的灰度化与二值化操作 |
Web自动化测试进阶:验证码处理之OCR图像识别操作 |
Web自动化测试进阶:验证码处理之cookie跳过验证码操作 |
Web自动化测试进阶:验证码处理之js处理方案 |
Web自动化测试进阶:自动化中的难点--文件上传操作 |
Web自动化测试进阶:自动化中的难点之input标签文件选择 |
Web自动化测试进阶:自动化中的难点之非input标签文件选择 |
Web自动化测试进阶:实战难点之多文件上传 |
Web自动化测试进阶:实战难点之iframe日期控件 |
Web自动化测试框架篇:unittest+pytest框架入门应用 |
Web自动化测试框架篇:实战中的pytest框架规则 |
Web自动化测试框架篇:pytest框架夹具及顺序 |
Web自动化测试框架篇:pytest框架插件实战详解 |
Web自动化测试框架篇:如何利用pytest框架生成测试报告 |
Web自动化测试框架篇:POM核心设计思路详解 |
Web自动化测试框架篇:POM的业务代码逻辑与组件分离 |
Web自动化测试框架篇:用POM思想设计一套框架 |
Web自动化高级篇:用POM思想重构unittest框架代码 |
Web自动化高级篇:进阶思路--从POM到关键字驱动 |
Web自动化高级篇:测试报告生成及Allure报告优化 |
Web自动化高级篇:Allure报告生成之用例重运行 |
Web自动化高级篇:Allure的装饰器执行流程 |
Web自动化高级篇:Allure的截图,异常截图操作 |
Web自动化高级篇:自动化执行记录之自定义框架日志封装 |
Web自动化高级篇:自定义框架封装设计理念 |
Web自动化高级篇:关键字与核心执行器封装 |
Web自动化高级篇:自动化测试重复流程的抽取和处理 |
Web自动化高级篇:数据驱动与数据分离--yaml文件驱动 |
Web自动化高级篇:动态化测试用例的生成与断言数据的生成 |
Web自动化拓展:web自动化分布式测试Grid介绍 |
Web自动化拓展:Web自动化分布式测试之selenium-Grid的hub详解 |
Web自动化拓展:Web自动化分布式测试之selenium-Grid的Nodes详解 |
Web自动化拓展:Web自动化分布式测试之selenium-Grid的配置详解 |
Web自动化拓展:全面提升测试效率--实战中的Grid的应用与常见问题处理 |
6.接口自动化测试
接口自动化入门: Http请求的核心概念及原理详解 |
接口自动化入门: Http的请求头,请求体,响应码解析 |
接口自动化入门: Http请求的域名与IP地址概念 |
接口自动化入门: swagger/word/excel/pdf等不同种类的接口文档理解 |
接口自动化入门:项目实战中接口测试流程分析及实现 |
接口自动化入门:Jmeter实现在接口工具中关联接口处理方案 |
接口自动化入门:Jmeter的多组数据测试、JDBC驱动及数据断言 |
接口自动化入门:JSON中的万能密码--JSONPath解析 |
接口自动化入门:大型项目中接口测试分工协同安排 |
接口自动化入门:接口自动化思维逻辑梳理及相关环境搭建 |
接口自动化入门:接口自动化实战项目需求分析+用例分析 |
接口自动化入门:Requests组成介绍及接口调用方式 |
接口自动化入门:Requests请求头设置详解 |
接口自动化入门:Requests的RESTFul请求发送 |
接口自动化入门: Requests实现项目接口关联调用测试实战 |
接口自动化入门:登录流程中的Session,Token鉴权实践 |
接口自动化入门:requests中的Assert断言处理 |
接口自动化入门: 加密接口处理之对称加密 |
接口自动化入门:加密接口处理之非对称加密 |
接口自动化进阶:Pytest运行规则插件安装常用参数详解 |
接口自动化进阶:Pytest结合Requests实现自动化 |
接口自动化进阶:Pytest全局配置pytest.ini文件详解 |
接口自动化进阶:Pytest之Fixture拓展及conftest.py加载机制 |
接口自动化进阶:Pytest之Parameterize数据驱动应用 |
接口自动化框架篇:Pytest断言处理以及Allure报告生成 |
接口自动化框架篇:Pytest+Allure报告企业定制化实现 |
接口自动化框架篇:Pytest企业级接口用例管理流程 |
接口自动化框架篇:Pytest中的接口请求封装 |
接口自动化框架篇:Pytest中的接口关联封装 |
接口自动化框架篇:优化逻辑--接口关联封装改进 |
接口自动化框架篇:规范JSON数据格式测试用例封装 |
接口自动化框架篇:接口框架中如何实现热加载封装 |
接口自动化框架篇:接口框架中的常归断言封装 |
接口自动化框架篇:接口框架中的日志记录封装 |
接口自动化框架篇:使用python连接数据库-PySQL介绍 |
接口自动化框架篇:PySQL的游标概念及数据操作 |
接口自动化框架篇:PySQL的游标概念及数据操作 |
接口自动化框架篇:Mysql数据库数据断言封装 |
接口自动化框架篇:接口框架中的数据类型处理 |
接口自动化框架篇:核心执行器封装流程 |
接口自动化框架篇:框架中的数据流转处理 |
接口自动化框架篇:框架中的不同请求方式封装 |
接口自动化框架篇:自定义异常日志封装 |
接口自动化框架篇:自定义断言封装逻辑 |
接口自动化框架篇:BaseURL基础路径封装 |
接口自动化框架篇:接口加密解密封装 |
接口自动化框架篇:接口签名Sign封装 |
接口自动化框架篇:接口自动化框架的测试报告生成 |
接口自动化拓展:接口Mock的理念与实战场景 |
接口自动化拓展:Flask框架安装、介绍及工作中的应用 |
接口自动化拓展:Flask框架与前端页面的通讯 |
接口自动化拓展:Flask框架的数据库操作 |
接口自动化拓展:Flask框架的增删改查接口实战 |
7.APP自动化测试
App自动化测试入门:APP测试的定义及环境搭建处理 |
App自动化测试入门:Appium设计理念解析 |
App自动化测试入门:APP测试中常用的ADB操作命令理解 |
App自动化测试入门:APP自动化稳定性测试详解 |
App自动化测试入门:Appium自动化的组件角色介绍 |
App自动化测试入门:Appium的自动化测试原理 |
App自动化测试入门:Appium的Inspector实战操作 |
App自动化测试入门:Desktop配置及底层逻辑 |
App自动化测试入门:运用Appium-Python-Client替代Desktop操作 |
App自动化测试入门:实战中的APP元素定位方式之Id定位 |
App自动化测试入门:实战中的APP元素定位方式之Name定位 |
App自动化测试入门:实战中的APP元素定位方式之ClassName定位 |
App自动化测试入门:实战中的APP元素定位方式之TagName定位 |
App自动化测试入门:实战中的APP元素定位方式之Xpath定位 |
App自动化测试入门:实战中非常规模式下的其他元素定位方式详解 |
App自动化测试入门:APP自动化中Activity组件原理 |
App自动化测试入门:实战中App自动化页面加载资源流程中的"坑" |
App自动化测试入门:实战中App自动化页面资源渲染需要注意的"雷区" |
App自动化测试入门:APP自动化测试中的三种常规等待类型 |
App自动化测试入门: 常规等待无法处理的bug解决方案--Activity等待与指令等待 |
App自动化测试进阶:App自动化-常规元素属性详解 |
App自动化测试进阶:App自动化-常规元素操作 |
App自动化测试进阶:App自动化非常规元素操作之触控操作详解 |
App自动化测试进阶:App自动化非常规元素操作之多指操作详解 |
App自动化测试进阶:App自动化非常规元素操作之新版本W3C操作 |
App自动化测试框架篇:实战中Pytest的用例标签详解 |
App自动化测试框架篇:Pytest-html测试报告生成 |
App自动化测试框架篇:实战中Pytest的用例参数化驱动测试用例 |
App自动化测试框架篇:实战中Pytest的conftest与钩子函数 |
App自动化测试框架篇:Pytest的yiled关键字原理解析 |
App自动化测试框架篇:Pytest-html报告添加截图操作 |
App自动化测试框架篇:Pytest-html获取用例结果流程 |
App自动化测试框架篇:Pytest-html报告源码解读与改造 |
App自动化测试框架篇:Pytest-html 自定义异常截图流程 |
App自动化测试框架篇:Pytest-html 实战中测试报告生成解析 |
App自动化测试框架篇: 企业级自定义框架封装思路详解 |
App自动化测试框架篇: 企业级数据驱动之数据的定义方式 |
App自动化测试框架篇: 自定义框架测试下的元素操作关键字封装详解 |
App自动化测试框架篇: 自定义框架测试下的系统函数关键字封装详解 |
App自动化测试框架篇: 自定义框架测试下的逻辑处理关键字封装详解 |
App自动化测试框架篇: 自定义框架测试下的逻辑处理关键字封装详解 |
App自动化测试框架篇: 自定义框架测试下的断言关键字封装详解 |
App自动化测试框架篇: 框架设计数据分离关键字之存储文件处理 |
App自动化测试框架篇: 框架设计数据分离之关键字热处理 |
APP自动化测试框架篇: 关键字驱动在企业中的落地方案 |
8.APP自动化测试拓展
App自动化测试拓展:企业级设备集群管理平台环境搭建介绍 |
App自动化测试拓展:企业级设备集群管理平台核心配置含义 |
App自动化测试拓展:Appium在多机器下的自动化操作流程 |
App自动化测试拓展:实战中APP测试框架结合ATXServer集群测试方案 |
App自动化测试拓展:H5在APP中的应用与问题介绍 |
App自动化测试拓展:实战中的混合应用APP问题常见处理方式 |
App自动化测试拓展:混合应用中的元素定位与操作流程 |
App自动化测试拓展:混合应用中的跳转及等待操作处理 |
App自动化测试拓展:公众号H5 webview混合应用测试实战 |
微信小程序自动化:Minium环境搭建、自动化流程梳理 |
微信小程序自动化:小程序自动化的核心思路与原理理解 |
微信小程序自动化:小程序中的元素定位、属性分析、元素操作 |
微信小程序自动化:小程序中的特殊操作-点击、长按、拖动 |
微信小程序自动化:minitest命令详解/测试报告分析 |
9.跨平台自动化测试RobotFramework & Airtest
RobotFramework简介与环境搭建 |
RF语法之变量使用 |
RF基础语法之测试用例编写 |
RF之关键字与资源文件 |
RF之语法控制流与循环 |
RF-Web自动化项目实战 |
RF-接口自动化项目实战 |
RF-扩展库开发 |
RF-集成Jenkins之持续集成 |
Airtest环境搭建与IDE使用 |
Airtest-Web自动化项目实战 |
Airtest-APP自动化项目实战 |
Airtest之poco框架 |
Airtest-windows应用程序自动化测试 |
Airtest之脚本运行方式 |
10.DevOps 持续集成
GIT代码版本控制:版本控制概念/环境搭建 |
GIT代码版本控制:版本库创建 |
GIT代码版本控制:克隆、pull、push、commit命令使用 |
GIT代码版本控制:版本冲突解决/分支/tag控制 |
Jenkins持续集成:CICD介绍、环境搭建 |
Jenkins持续集成:Jenkins插件管理常用插件 |
Jenkins持续集成:命令执行机制/远程ssh执行 |
Jenkins持续集成:Allure测试报告集成/办公软件集成 |
Jenkins持续集成:自动化用例结合Jenkins应用 |
Jenkins持续集成:Jenkins定时任务/GIT集成 |
Jenkins持续集成:构建 CI/CD 流水线 开发-测试-运维 |
sonar代码白盒检测:代码检测概念,sonar环境搭建 |
sonar代码白盒检测:常见代码检测问题解析 |
sonar代码白盒检测:代码检测报告分析 |
sonar代码白盒检测:Jenkins与sonar组合持续集成 |
11.Jmeter性能测试
性能和功能的区别 |
性能指标:响应时间 |
程序运行过程中,对服务器资源占用率 |
吞吐量 和 并发量 的关系?/区别? |
性能测试整体流程介绍 |
项目中性能测试的背景分析 |
性能需求分析-业务模型 |
性能测试用例的概念和示例 |
性能测试概念-负载测试 |
性能测试用例结构及项目实例 |
性能测试完成标准 |
性能测试环境 服务器配置 |
Jmeter环境构建 |
Jmeter多线程插件的使用 |
Jmeter压测汇总报告结果分析 |
Jmeter梯度压测线程组实际应用 |
Jmeter分布式集群压测概念 |
阿里云PTS云服务器压测方式 |
Jmeter压测使用CSV数据集 |
Jmeter 7大定时器分析 |
结果分析之Basic Graphs图表 |
InfluxDB + Grafana+Jmeter监控大屏 |
Jmeter 后端监听器连接InfluxDB |
Jmeter-InfluxDB-Grafana完整调试 |
nmon数据采集与结果分析 |
prometheus 服务器 配置 |
性能测试报告-测试实施情况编写 |
性能测试报告-资源使用率截图内容 |
如何找性能拐点及性能瓶颈定义 |
APP性能测试概念,目的与意义 |
性能测试流程和性能测试工具分析 |
APP性能指标(cpu、内存、流畅度等) |
APP性能测试工具选择,环境搭建实战 |
APP性能指标启动时间、CPU、流量详解获取方法 |
APP性能监控脚本实现;数据分析 |
APP性能指标之电量、内存、FPS |
APP性能指标之过度渲染及实战 |
Locust简介 Locust是什么? |
Locust发起HTTP接口请求 |
Locust的Web界面 |
locustfile之task_set属性 |
locustfile之weight (权重)属性 |
详解任务集合TaskSet类 |
动态URL参数使用 |
Locust“逐步负载”模式运行 |
Locust+Grafana 搭建性能监控平台 |
12.vue测试开发平台
阶段1. 前端HTML/CSS/JS项目开发实战 |
阶段2. VUE 前端框架项目开发实战 |
阶段3. Flask WEB后端开发框架项目实战 |
阶段4. Flask+Vue前后端分离系统项目实战 |
阶段5. 测试平台管理系统基础功能开发 |
阶段6:接口自动化测试平台设计阶段 |
阶段7:接口测试平台前端界面设计与开发 |
阶段8:接口测试平台后端设计与开发 |
阶段9:接口测试平台联调测试 |
阶段10:WEB自动化测试平台设计阶段 |
阶段11:WEB测试平台前端界面设计与开发 |
阶段12:WEB测试平台后端设计与开发 |
阶段13:WEB测试平台联调测试 |
阶段14:APP自动化测试平台设计阶段 |
阶段15:APP测试平台前端界面设计与开发 |
阶段16:APP测试平台后端设计与开发 |
阶段17:APP测试平台联调测试 |
阶段18:用例执行图形报表可视化数据监测 |
阶段19:CICD持续集成整合企业测试流程 |
阶段20:办公软件钉钉/飞书/企微等整合 |
阶段21:Xmind测试用例数据格式集成 |
阶段22:Swagger/Har动态接口数据集成 |
阶段23:测试平台分布式集群部署实战 |
13.django测试开发
WEB开发技术简介及Django开发环境搭建 |
Django开发web接口urls及views机制 |
Django数据库模型和视图 |
Django-admin环境搭建及应用 |
接口测试脚本自动化及脚本存在的问题 |
Pytest插件开发测试工具原理分析 |
如何将Python测试工具打包成可执行命令 |
自动化测试平台开发思路 |
通过Django_admin_vue模板快速开发出web界面 |
平台开发:项目创建及自定义管理平台数据展示内容 |
平台开发:实现复杂数据维护页面 |
平台设计:如何将测试数据转换为数据库存储 |
平台实现:接口测试平台效果演示及debug调试 |
WEB封装思维锻炼:web自动化中封装技术的应用 |
WEB封装思维锻炼:fixture及断言截图机制拓展封装 |
代码封装思维对于测试开发的重要性 |
WEB平台驱动封装:POM的作用以及它的问题 |
WEB平台驱动封装:UI自动化框架实现原理剖析 |
WEB平台:底层UI执行驱动工具开发 |
WEB平台:自动化平台项目实战及原理debug分析 |
APP_UI平台:APP自动化平台内容梳理及实战项目 |
APP_UI平台:封装思想及拓展思想分析 |
APP_UI平台:平台数据库设计思路分析 |
UI自动化测试平台封装思维整体梳理 |
自动化平台架构:集群分布式部署方案分析 |
自动化平台部署:Nginx集群部署实践 |
自动化平台部署:集群下登陆session共享方案 |
14.安全测试
安全测试两大项目靶场部署 |
WEB安全漏洞及渗透测试手法:反射性XXS漏洞 |
WEB安全漏洞及渗透测试手法:DOMXXS漏洞 |
WEB安全漏洞及渗透测试手法:SQL注入漏洞 |
WEB安全漏洞及渗透测试手法:文件下载漏洞 |
WEB安全漏洞及渗透测试手法:平行权限漏洞 |
WEB安全漏洞及渗透测试手法:路径遍历漏洞 |
WEB安全漏洞及渗透测试手法:URL跳转漏洞 |
WEB安全漏洞及渗透测试手法:短信_邮件_炸弹_暴力破解 |
漏洞扫描工具:ZAP简介及安装 |
漏洞扫描工具:ZAP纯自动扫描机制 |
漏洞扫描工具:ZAP被动扫描-浏览器 |
漏洞扫描工具:ZAP模糊测试 |
漏洞扫描工具:ZAP构建CSRF攻击表单 |
漏洞扫描工具:CSRF Token构建机制 |
漏洞扫描工具:安全测试报告及脚本机制 |
15.K8S云原生技术测试应用内容
容器技术与虚拟机区别 |
手把手教你搭建docker环境 |
Docker 容器使用 |
Docker 项目运行镜像制作 |
Docker容器部署运行测试环境 |
Kubernetes介绍 |
高可用Kubernetes集群部署 |
详解Pods、Service、Namespace等核心概念 |
核心组件:Master |
K8S测试环境搭建 |
Helm应用管理工具 |
Kubesphere产品介绍 |
K8S持续集成流程实现 |
K8S云原生 CI/CD 工具链 |
自动化测试技术与K8S融合 |
-每天学习一点,今后必成大神-
微信扫码,获取下方网盘链接
-事必有法,然后有成- 最后祝大家早日拿到满意的offer ~
如果你不想一个人野蛮生长,找不到系统的资料,问题得不到帮助,坚持几天便放弃的感受的话,可以加入我们的交流群,大家可以一起讨论交流,里面会有各种软件测试资料和技术交流。
目前100000+人已关注加入我们
今天主要是和大家分享我的学习路线和网盘资源,后续我会分享一些面试攻略,有被帮助到的朋友,大家可以点赞支持一下~
发现“在看”和“赞”了吗,戳我试试吧