从写下第1个脚本到年薪40W,我的测试开发心路历程!

对于任何职业来说,薪资始终都会是众多追求的重要部分。前几年测试行业还是风口,但是随着不断新鲜血液的加入,再加上就业大环境不好,企业也都在“降本增效”。目前内卷也是越来越激烈。不得不承认当下的现状,已经不仅仅是通过累积工作年限去获取就业机会,更多还需要提高自己的技术能力,才能在接下来的内卷之势有自己的一席之地。

有的人开玩笑的说大不了转行?但是又有多少人愿意舍弃IT行业的高待遇工作?那只能是最坏的打算。软件测试说到底是技术岗位,那就要靠技术说话。不断掌握新的技能,提高自身技术能力也就变成了目前测试从业人员迫在眉睫需要解决的问题。因此,现在大部分初中级功能测试人员都在向自动化,性能,安全,测试开发靠拢。

最近有很多粉丝给我留言:

如何学习自动化测试开发?测试人怎么去规划自己的职业生涯?

每个人的情况都不一样,但我希望我的经历中能让你有所收获。那么,接下来我就结合自己的经历聊一聊我是如何在工作中转型自动化测试开发的。

【学习路线和网盘资料放在文末了】

测试新人

我的职业生涯开始和大多数测试人一样,刚开始接触都是纯功能界面测试。那时候在一家电商公司做测试,在这个吃技术的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融合

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 

软件测试面试文档

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

在这里插入图片描述

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

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

相关文章

引导过程与服务器控制

一、引导过程 1.开机自检 服务器主机开机以后,将根据主板 BIOS 中的设置对 CPU(Central Processing Unit, 中央处理器)、内存、显卡、键盘等设备进行初步检测,检测成功后根据预设的启动顺序移 交系统控制权&#xff0c…

AI X HI:塑造数智时代的人类镜像,网易这场分享不能错过!

2001 年,网易正式成立在线游戏事业部。从那以后,网易孵化了许多出圈的精品游戏,跻身成为全球七大游戏公司之一。这些游戏产品之所以能够广受玩家好评,并保持常青,一方面源于十年磨一剑的精良品质,另一方面则…

[油猴脚本] Image To Ascii 快速转换审计网站图片中敏感信息插件

项目地址:https://github.com/MartinxMax/ImageToAscii 导入 将ImagetoAscii.user.js导入油猴 进行按照 访问网站分析图片 当鼠标靠近图片时会出现分析按钮 通过审查图片信息,我们可以快速发现这张图片存在PHP代码。 当然在渗透测试中,你可以快速查看上传的图片木马中PHP代码…

PS系统教程30

图层蒙版组合使用 案例介绍 全选背景图-复制背景图粘贴背景图CtrlI反选背景色填充黑色快速选区工具框柱需要素材画笔涂抹白色 步骤截图 1-3 4-5 图层蒙版与渐变工具结合使用 案例2 注意 使用PS的渐变工具覆盖全部的原因可能包括操作不当或设置错误。 操作不当&#xff1…

C++系列-String(三)

&#x1f308;个人主页&#xff1a;羽晨同学 &#x1f4ab;个人格言:“成为自己未来的主人~” assign 这个接口的目的是用一个新的值代替之前的那个值 #define _CRT_SECURE_NO_WARNINGS #include<iostream> #include<string> #include<list> #include&l…

华三交换机的软件版本升级操作

升级操作很常见&#xff0c;掌握方法是关键 实验环境&#xff1a;1台华三S6520-EI交换机&#xff0c;版本从2432P03升级成2432P05。 整体思路&#xff1a; 1.先查验软件版本 2.官网下载对于设备型号的软件版本 3.配置交换机地址使得与电脑进行通信&#xff0c;使用TFTP/FTP工…

Swift 周报 第五十五期

文章目录 前言新闻和社区苹果公司据悉将推出密码管理应用三大指数涨跌不一&#xff0c;苹果重新夺回美股第二大上市公司宝座苹果iOS 18新动向&#xff1a;AI功能强化隐私保护&#xff0c;用户自主选择启用 提案通过的提案正在审查的提案 Swift论坛推荐博文话题讨论关于我们 前言…

微信小程序navigateTo异常(APP-SERVICE-SDK:Unknown URL)

背景 在开发小程序时&#xff0c;可能会用到banner&#xff0c;通过banner跳转至各种子页面。但是因为小程序自身的因素&#xff0c;有些是不允许的&#xff0c;比如通过banner跳转一个http/https链接。如果使用 wx.navigateTo完成跳转时&#xff0c;就会发生异常。 navigate…

第二十八周代码

B3631 单向链表 题目链接 【参考代码】 list的简介及使用 80%通过率 #include <bits/stdc.h> using namespace std;int main() {list<int> list;list.push_back(1);int q;cin>>q;while(q--){int operation;cin>>operation;if(operation 1){int x,…

高考成绩加分,西藏学生推荐使用的《藏文翻译词典》APP,藏文作文高考大纲,初中高中学习内容与考试同步更新!

2024年高考成绩出炉啦&#xff01;在这个特别的时刻&#xff0c;我想向大家表达最真挚的祝贺。高考不仅是一场考试&#xff0c;更是你多年学习旅程的一次总结。当你的成绩揭晓&#xff0c;无论结果如何&#xff0c;你都应该为自己感到骄傲。 在高原&#xff0c;藏语如同雪山上…

【vue scrollTo 数据无限滚动 】

vue数据无限滚动 参考来源 Vue3 实现消息无限滚动的新思路 —— 林三心不学挖掘机 完整代码中项目中使用了vuetify&#xff0c;估div内的class会代表了对应的样式&#xff0c;根据需要自行删减。 功能实现主要依赖js代码部分。 鼠标悬浮停止滚动&#xff0c;鼠标离开恢复滚动在…

C#+uni-app医院HIS预约挂号系统源码 看病挂号快人一步

​​​​​​​ 提到去大型医院机构就诊时&#xff0c;许多人都感到恐惧。有些人一旦走进医院的门诊大厅&#xff0c;就感到迷茫&#xff0c;既无法理解导医台医生的建议&#xff0c;也找不到应该去哪个科室进行检查。实际上&#xff0c;就医也是一门学问&#xff0c;如何优化…

刚体力学基础

转动惯量 刚体 转动 常见物体转动惯量 平行轴定理 转动定律 牛顿第二定律的推广 M J*α 例题 刚体的角动量守恒 刚体的动能定理 刚体与质点的对比

倍增法找lca——最近公共祖先

对于结点x和y&#xff0c;需要找他们的最近公共祖先 一个最简单的办法就是沿着x和y的父节点一个一个往上找 这样的时间复杂度是o(n)&#xff0c;对于较大的数据量会TLE 今天要使用的方法是利用倍增来加速这个找lca的过程 倍增算法&#xff1a; 按2的倍数来往上找&#xff0…

从中序与后序遍历序列构造二叉树-二叉树题型

106. 从中序与后序遍历序列构造二叉树 - 力扣&#xff08;LeetCode&#xff09; right要再left前面 如下如&#xff0c;后序为第一行&#xff0c;最后一个是根&#xff1b; 中序为第二行&#xff0c;中间的为根&#xff1b; 通过后序的最后一个元素从中序中找到根&#xff0…

利用MATLAB批量读取图像时出现名称排序错乱问题解决方法sort-nat函数

利用MATLAB批量读取图像时出现名称排序错乱问题解决方法sort-nat函数 一、问题描述二、解决方法 欢迎学习交流&#xff01; 邮箱&#xff1a; z…1…6.com 网站&#xff1a; https://zephyrhours.github.io/ 一、问题描述 使用MATLAB批量读取图像文件&#xff0c;会发现提取出…

使用Python和jieba库生成中文词云

使用Python和jieba库生成中文词云 在文本分析和数据可视化的领域中&#xff0c;词云是一种展示文本数据中关键词频率的直观方式。Python作为一种强大的编程语言&#xff0c;提供了多种库来帮助我们生成词云&#xff0c;如wordcloud和jieba。在本文中&#xff0c;我们将通过一个…

【仿真】UR机器人手眼标定与实时视觉追踪(单目)

这段代码实现了一个机器人视觉引导系统,主要功能包括: 连接仿真环境,控制UR机器人。相机标定: 使用棋盘格图案进行相机内参标定通过移动机器人采集多组图像使用calibrateCamera函数计算相机内参 手眼标定: 采集机器人末端位姿和对应的棋盘格图像使用calibrateHandEye函数计算相…

Qt小项目 | 实现迅雷设置界面

文章目录 一、手写代码实现迅雷设置界面 一、手写代码实现迅雷设置界面 使用Qt控件&#xff08;如&#xff1a;QListWidget与QScrollArea等&#xff09;与布局实现腾讯会议登陆界面。设置界面除基本设置界面外&#xff0c;其他界面都是以图片的形式嵌入到项目中并没有手写代码。…

每日一学(1)

目录 1、ConCurrentHashMap为什么不允许key为null&#xff1f; 2、ThreadLocal会出现内存泄露吗&#xff1f; 3、AQS理解 4、lock 和 synchronized的区别 1、ConCurrentHashMap为什么不允许key为null&#xff1f; 底层 putVal方法 中 如果key || value为空 抛出…