4年功能庸庸碌碌,进阶自动化测试拿到了24k,测试之路不再平凡...
目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
手工测试如何进阶自动化测试?
如果你已经从事测试工作两三年时间了,或者开发转测试,又或者上来就要包装三年及以上工作经验,那么掌握自动化测试技能必不可少。
测试人员的职业发展路线,无非就是两条,技术路线和管理路线。
技术路线:功能测试–> 自动化测试–> 测试开发–> 测试架构师 / 业务专家 / 测试专家。
管理路线:测试工程师–> 测试组长–> 测试经理–> 测试总监。
对于还没有入行的小伙伴或者刚毕业的同学,更多的是关注测试基础技能的掌握,即使不会自动化也是可以找到一份初级测试岗位的工作,会编程和自动化更多的是作为加分项。
特别是今年2023年来说,找工作比往年来说更难了,行业越来越卷,测试的招聘要求中几乎都会出现自动化测试的字眼,因此会自动化测试也是自身的核心竞争力。
那么如何学习自动化测试?
1、学习一门编程语言
学习一门编程语是打开技术大门的第一步,也是功能测试进阶自动化测试甚至测试开发的基本准入门槛。对于测试行业来说,绝大多数从业者会选择两门语言来学习,就是 Python 和 Java。
2、自动化测试的思想
在学习自动化之前,需要先了解自动化测试的思想,因为技术是为业务服务的,抛开业务谈技术就是耍流氓,只有了解其思想,才能更好地实施落地。了解什么是自动化测试,自动化测试的概念、本质,哪些场景适合做自动化测试、哪些场景不适合做自动化测试,以及自动化测试的原则等。
自动化测试就是把手工测试的一系列动作转化为机器自动执行。
例如:要实现在电商网站上搜索商品,需要有以下步骤:打开网站(打开电商网站)–> 定位元素(定位到搜索输入框)–> 操作元素(在搜索框中输入衬衫,点击搜索按钮)–> 模拟页面动作(下拉、上滑)–> 断言结果(预期结果与实际结果比对,判断是否通过测试)–> 生成测试报告。
适合自动化测试的场景如:需求不会频繁变动、UI 比较稳定、项目周期较长、大量的回归测试任务、冒烟测试,针对本次迭代的核心功能进行冒烟测试,不适合自动化测试的场景如:交互性太强、视频音频播放器等。
自动化测原则,比如:一个 case 完成一个功能点、一个脚本是一个完成的场景、脚本之间独立,不能有依赖、设置合适的检查点、设计良好的框架。
3、主攻自动化测试
这个阶段需要学习自动化测试相关工具库,比如 Python 技术栈会有 Requests、Selenium、Appium 以及单元测试框架 Unittest、Pytest,Java 技术栈会有 HttpClient、Selenium、Appium 以及单元测试框架 TestNG 等。
掌握编程语言以及了解自动化测试思想之后,便是开始主攻自动化测试了,总共可分为三种,接口、Web、App。
推荐初学者从接口自动化开始学习,相比于 UI 自动化,接口自动化测试收益更大、更容易实现、维护成本更低,有更高的投入产出比,因此是公司开展自动化测试的首选。
企业中做自动化测试的目的主要是针对那些已经成熟并且变化很少的功能模块进行回归测试。比如 Python 技术栈会使用 Requests、Pytest 等框架结合公司业务实现一套覆盖公司系统绝大部分接口的自动化测试框架,并集成到 Jenkins,每天定时执行,将测试报告发送到邮箱。
这样做的目的主要是用来监控哪些接口服务挂了,以及版本迭代过程中上了新功能可能影响关联到其他接口导致异常发生,所以上线前要把系统或者模块的接口自动跑一遍,以便于测试人员第一时间发现问题,并交给开发人员进行修复解决,减少线上 Bug 率。
4、自动化测试框架
学习了上述相关的自动化测试工具库,学会使用线性代码做自动化测试,但是线性代码存在很多缺陷。
比如:测试的输入和断言都是捆绑在脚本中,易读性差;无共享或重用脚本、可复用性低;线性脚本修改代价大,维护成本高,不便于后期优化等。真正在企业中做自动化不会是这种线性代码,而是有一套较好的自动化测试框架。
配套的自动化测试框架:
接口自动化测试方向:Python+requests+pytest+yaml+alluer+Jenkins;
web自动化测试方向:Python+selenium4+pytest+POM+allure+Jenkins;
app自动化测试方向:Python+appium+POM+pytest+allure+Jenkins;
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
生命中没有什么比坚持更重要的事情,每一次跌倒都是获得力量的机会。只有在奋斗中才能发现无限可能,不要放弃自己的梦想,努力向前,你会发现成功就在不远处。
人生短暂,珍惜每分每秒,不断努力奋斗,为自己的梦想而拼搏。只有不断挑战自我,才能让自己成为更好的人。不要放弃,相信自己,明天一定会更美好!
每个人都有自己的人生轨迹,路途中或许会有挫折和困难,但只要坚持不懈、勇往直前,一定能够迎来成功的曙光。让我们砥砺前行,勇攀高峰,成就辉煌人生!
4年功能庸庸碌碌,进阶自动化测试拿到了24k,测试之路不再平凡...相关推荐
- 从功能测试进阶自动化测试涨薪7k,终究是逼了自己一把...
目录 前言 什么是自动化测试? 一.软件自动化测试的学习步骤 二.自动化测试的本质 三.自动化测试学习的误区 四.自动化测试的职位 五.自动化测试分类 六.Web自动化测试分类 七.自动化测试的知识点 ...
- 迷你播放器--第一阶段(6)--添加搜索定位功能(进阶)-使用filter过滤以及对汉语拼音的排序匹配
迷你播放器--第一阶段(6) 添加搜索定位功能(进阶)-使用filter过滤以及对汉语拼音的排序匹配; 本文章为CSDN作者原创,转载请保留出处:http://blog.csdn.net/lrs030 ...
- 手工测试2年面临职场危机,3个月进阶自动化测试后,老板终于留我了...
前言 从学校到职场已经3年时间了,大学学的计算机专业,最开始事项从事java开发的,最终被现实打败,然后就从事了软件测试,现在已近过去了2年,为什么说是2年了,大学毕业有一段空窗期,后面也是通过自学 ...
- 有进阶自动化测试的心,但是目前公司只要点点点有必要吗?
一.什么是自动化测试 以程序测试程序,以代码代替思维,以脚本的运行代替手工测试.自动化的测试涵盖了:功能(黑盒)自动化测试,功能(白盒)自动化测试,性能测试,压力测试,GUI(Graphical Us ...
- jemeter python接口自动化测试平台_python接口自动化测试之request
之前小编写过Rest-assuert接口测试框架,它是基于java的,那么怎么轻轻松松玩转python接口自动化测试呢?今天小编就写写如何使用python Request进行接口自动测试. 学习任何一 ...
- xiaopiu怎么导出html,聊聊xiaopiu那些鲜为人知的惊喜功能(进阶篇)
小伙伴们好~ 中秋过得怎么样呀~还记得上周介绍的是原型工具中的基础效率型操作,帮助新来的小伙伴快速通过xiaopiu完成工作内容,传送门→→→「聊聊xiaopiu那些鲜为人知的惊喜功能(基础篇)」 这 ...
- 功能测试进阶自动化测试,你不试一下永远不知道自己的潜能
绝大多数测试工程师都是从功能测试做起的,工作忙忙碌碌,每天在各种业务需求学习和点点中度过,过了好多年发现自己还只是一个功能测试工程师. 随着移动互联网的发展,从业人员能力的整体进步,软件测试需要具备的 ...
- 功能测试进阶自动化测试,一个5年字节测试人的自我改变
绝大多数测试工程师都是从功能测试做起的,工作忙忙碌碌,每天在各种业务需求学习和点点中度过,过了好多年发现自己还只是一个功能测试工程师. 随着移动互联网的发展,从业人员能力的整体进步,软件测试需要具备的 ...
- 分布式搜索elasticsearch搜索功能【进阶】
elasticsearch搜索功能 分布式搜索elasticsearch搜索功能 1.DSL查询文档 1.1 DSL查询分类 1.2 全文检索查询 1.3 精准查询 1.4 地理坐标查询 1.5 组合 ...
最新文章
- On the Difference Between Orthogonal Matching Pursuit and Orthogonal Least Squares
- C/C++——各种类型int、long、double、char表示范围(最大最小值)
- Java Web学习笔记06:利用JDBC访问数据库
- 充电桩前端对接的一点总结
- 【C++】常用查找算法
- android TextView屏蔽复制粘贴文本选择菜单
- react小书 笔记6
- python生成随机中文_随机字生成器-Python
- HeadFirst设计模式-工厂模式(基于汽车工厂和手机工厂)
- 原笔迹手写实现平滑和笔锋效果之:笔迹的平滑(二)
- 硬件设备使用网线连接PC并访问外网
- 数学建模MathType输入平方的三种模式
- [转]	 25岁,我习得了自愈近视的魔法
- pytorch断点续传
- Whitelabel Error Page访问
- 立创EDA学习笔记(3)——PCB绘制
- php论坛mybb,MyBB
- 如何给行内元素设置宽高
- NVIDIA显卡计算力
- 微信小程序正则表达式判断邮箱格式
热门文章
- 小白必看!关于欧盟商标注册须知事项?
- 2023 研究生考试 倒计时
- setLayout(null)在java中什么意思
- chkconfig命令会立即生效吗_chkconfig 命令用法
- lacp静态和动态区别_HCNA配置静态LACP模式链路聚合
- python支持面向对象设计_python 面向对象设计
- h0在c语言中可作为变量吗,请问TMS320F2809中的L0/L1/H0 SARAM双重映射数据段和程序段的地址空间能重合吗?...
- /sys/kernel/debug/usb/devices解析
- 修改注册表消除应用软件乱码显示(转)
- i2c时序图的详细讲解