如何从功能测试转型到自动化测试:我三年的学习经历

news/2024/5/17 17:56:41/文章来源:https://blog.csdn.net/weixin_67553250/article/details/130011686

前言

在软件测试的领域里,自动化测试已经成为了不可或缺的一部分。

与传统的手工测试相比,自动化测试具有更高的效率和精确度,能够有效地减少测试时间和成本,同时提高测试质量。作为一个从事软件测试的人员,如果你想要走得更远,那么学会自动化测试就显得尤为重要。

我是一名从事软件测试的人员,最初从事的是功能测试。然而随着时代的发展,我逐渐认识到自动化测试的重要性,并决定向这个方向转型。在经过三年的学习和实践之后,我成功地完成了这个转型,并成为了一名专业的自动化测试工程师。

在这篇文章中,我将分享我的学习经历,以及我所获得的经验和技能。

第一步:学习基础知识

要成为一名成功的自动化测试工程师,首先需要掌握基础知识。在我开始学习之前,我首先查阅了很多相关的资料,包括书籍、教程和网上的视频等。

我学习了自动化测试的概念、原理、工具和技术,并对各种测试框架有了一定的了解。我通过不断地学习和实践,逐渐掌握了自动化测试的基础知识。

第二步:选择合适的自动化测试工具

在学习了自动化测试的基础知识之后,我开始寻找适合我的自动化测试工具。我选择了Selenium作为我主要的自动化测试工具,因为它是一个功能强大、灵活性高的开源工具,可以支持多种编程语言和操作系统。同时,我也学习了其他的自动化测试框架,如Appium和Robot Framework等。

第三步:熟悉编程语言

自动化测试需要使用编程语言来写测试脚本,所以熟悉编程语言也是非常重要的。

我选择了Python作为我的主要编程语言,因为它易于学习、简洁明了,同时具有很高的可读性和可维护性。在学习了Python之后,我还学习了其他的编程语言,如Java和JavaScript等。

第四步:实践项目

理论学习虽然重要,但只有通过实践才能真正掌握自动化测试的技能。因此,我参与了公司的项目,并负责自动化测试部分的工作。

在实践中,我遇到了各种各样的问题,如定位元素、处理弹窗等等。但是通过不断地调试和优化,我最终成功地完成了测试任务,并获得了同事和客户的赞扬。

第五步:持续学习

自动化测试是一个不断进步和发展的领域,新的技术和工具层出不穷。因此,持续学习是非常重要的。我会阅读一些博客、文章和书籍,以了解最新的技术和趋势。同时,我也会参加一些相关的研讨会和培训课程,以保持自己的竞争力。

一套系统提升学习的好资料

这里给大家整了一套涵盖软件测试面试资料和自动化测试工程师进阶路线的快速学习方法和资源。

学习方向

学习可不是拼多多,这里学一点哪里学一点、到头来竹篮打水一场空,所以得有个自动化测试所有方向技术点做一份整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。 

一、Python编程入门到精通

二、接口自动化测试

三、Web自动化测试

四、app自动化测试

五、前端网页编程语言

六、测试开发DevOps体系

七、一线大厂简历制作,面试技巧

八、RobotFramework框架和HttpRunner

根据这个学习架构路线,不断地去摸索与提升,突破技术的瓶颈,可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。我也是走过这样一段路,才能获得更多高薪职位的机会,付出终有回报,也算是对我能力的一种认可吧,真正的证明了自己的价值。至少税后30+的薪水是我当前状态下比较满意的。

精品软件测试学习书籍

1.技术沉淀(学习+积累)

  • 对于三年多快四年的测试人员来说,无论是在大厂小厂,还是在外包公司,基本上都是做得功能界面测试,对接口、性能、自动化测试只是有点接触。很多人认为,重复简单的工作对自己的技术是没有提升的,但实际上也有人能从中杀出一条血路,所以关键是你自己是否花了心思,付出了努力。

当然,我个人也有自己的一套学习方式和习惯,平时喜欢利用碎片时间来看点什么东西,比如一些技术性的书籍或文档,还有一些视频讲解等,经常会让我有一种恍然大悟的感觉,对我的工作也起到了很大的帮助。

  • 阅读书籍文档

之前有些做手工测试的同事想转自动化测试,让我推荐几本自动化测试入门的书籍, 我都会建议他们根据自己所在项目的产品来选用对应的自动化测试工具来实践,再结合自身的喜好来选书, 下面推荐几本实用性强的书籍。 

1)《Selenium 3自动化测试实战:基于Python语言》 

selenium 3自动化测试实战这本书是大佬虫师的作品,虫师可以说是我的启蒙人了,早期看了他很多的文章。这本书系统的讲解最新的selenium 3的应用,涉及到持续集成、两大python单元测试框架unittest和pytest的应用,还有数据驱动、PO模型、selenium的分布式运行等等,非常全面,值得入手。

2)《QTP自动化测试最佳实践》

详细介绍了基于QTP的自动化测试技术,适合自动化测试初学者阅读。因为QTP是付费软件,如果所在公司或项目组能使用正版,那真是个深入学习的好机会。 

3)《自动化测试最佳实践》

这本书在自动化测试领域影响深远,它为很多公司指明了测试成功的方向。本书讲述了一些公司应用自动化的经历,其中涉及了很多项目,从复杂的政府部门系统到医疗设备,从SAP业务过程开发到Android移动应用和云计算。

4)《App自动化测试与框架实战》

从App测试基础、实战技术,再到自动化测试框架的搭建,全面地讲解App测试所需要的知识,主要内容为:App测试及其类型、Java编程环境构建、Java语言基础、Android自动化环境精讲、Android自动化测试基础精讲、Android Appium自动化框架、Appium数据驱动测试框架封装实战、Appium关键字驱动测试框架封装实战、持续集成的自动化、Appium常见问题处理方式。

5)《postman接口自动化测试持续集成》

如果你正好需要利用postman完成接口自动化测试的工作,那么这本书很适合你。如果你想看看 postman 是如何完成自动化测试,并与自己的框架比对比对,这本书也适合阅读。这本书,详细讲解了接口测试基础、postman 如何来完成自动化设计和用例编写、newman+git+jenkins+ 钉钉来完成持续集成工作。

  •  进阶视频课程合集

单纯看书是很难学会软件测试的,因为有的知识点没有讲解看懂了你也不会操作无法吸收,而且一直看书看书也很容易浇灭你的学习兴趣~

所以推荐大家选择一个课程跟着学。当时程序员朋友就给我推荐了一个课,就是下面这个,大家可以看一下

我在是听了免费课程之后,觉得这个课程的设置相当ok的,新手学起来也特别容易,而且老师直播在线,有问题当场就能解决,每次上课都能学到有用的东西,新的知识也能吸收到。

  • 实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

电商项目实战

web测试项目

web+app+h5+小程序 测试项目

接口自动化测试实战项目

Linux实战项目

  •  面试资料

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

总结

我见过很多leader在面试的时候,遇到处于迷茫期的大龄程序员,比面试官年龄都大。这些人有一些共同特征:可能工作了好几年,更夸张的是7、8年工作内容的重复性比较高,没有什么技术含量的工作。

凡事要趁早,特别是技术行业,一定要提升技术功底,丰富自动化项目实战经验,这对于你未来几年职业规划,以及测试技术掌握的深度非常有帮助。

送给大家一句话,共勉:当我们能力不足的时候,首先要做的是内修!当我们能力足够强大的时候,就可以外寻了!

这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。欢迎留言,或是关注我的专栏和我交流。

有兴趣就点击下方小卡片去和大神交流交流吧!!

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

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

相关文章

Oracle JDK 和 OpenJDK 有什么区别?

可能在看这个问题之前很多人和我一样并没有接触和使用过 OpenJDK 。那么 Oracle JDK 和 OpenJDK 之间是否存在重大差异?下面我通过收集到的一些资料,为你解答这个被很多人忽视的问题。 首先,2006 年 SUN 公司将 Java 开源,也就有…

智慧方政务云顶层设计与建设方案(ppt)

本资料来源公开网络,仅供个人学习,请勿商用,如有侵权请联系删除 对一网统管总体架构的理解物联网生态中的业务定位物联网产品与解决方案概览智联物联网管理平台总体方案智联物联网管理平台总体架构智联联连接平台(HLINK)应用架构智慧社区基于…

Linux--进程信号

前言 无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事情,而不是让烦恼和焦虑毁掉你不就不多的热情和定力。心可以碎,手不能停,该干什么干什么,在崩溃中继续努力前行&#xff0c…

export、export default 和import

👨 作者简介:大家好,我是Taro,前端领域创作者 ✒️ 个人主页:唐璜Taro 🚀 支持我:点赞👍📝 评论 ⭐️收藏 文章目录前言一、export default 和 import ?1. e…

【教学类-29-03】20230409《门牌号-黏贴版(5层*5间)灰底下划线》-(中班《我爱我家》偏数学)

作品样式: 背景需求 在门牌号黏贴版教学实践中,发现90%的幼儿都不会做 1、空格没有平均分布: 从5*630的门牌号中,随机抽取5个空格,有80%的概率出现“一行2个空、3行1个空”的情况。但幼儿第一次做,楼层都…

软考总结条款(2023-05-28系统分析师)

Raid0、 Raid1、 Raid5、 Raid10的原理、特点、性能区别 - 2023-04-07 指令集 - 2023-04-07 RISC全称Reduced Instruction Set Compute,精简指令集计算机。 CISC全称Complex Instruction Set Computers,复杂指令集计算机。 CISC既有简单指令也有复杂指…

【协议项目之 I2C】(一) 基本时序与实现

一、基本介绍 I2C协议(集成电路总线)使用两根线SDA和SCL实现数据传输,其连接如下图所示,总线上通过上拉电阻可以挂载各种低速外设,例如EEPROM 24C02,传感器等。   使用I2C,可以将多个从机(Slave&#xf…

upload-labs pass6-pass10

1.pass-6黑名单 空格绕过 直接上传肯定不可以 这个地方配置文件虽然只过滤了.htaccess,.user.ini也是不可用的,因为这里进行了重命名,通过代码审计可以发现空格没有过滤,这是利用windows的一个特性,后缀后面有空格和…

EasyCVR在公共资源交易中心监控视频汇聚项目中的场景应用方案

一、背景分析 2019年5月,国务院办公厅印发了《国务院办公厅转发国家发展改革委关于深化公共资源交易平台整合共享实施意见的通知》(国办函〔2019〕41号),明确深化公共资源平台整合共享,要求地方各级人民政府制度细化落…

1.8 函数的连续与间断

我的理解: 注意: 在处理连续性问题时,需要注意以下几点: 连续函数在一段区间内的取值具有稳定性和连续性,因此可以使用它们来刻画某个过程的规律。 如果一个函数在某个点处不连续,那么这个点就是一个间断…

C语言预处理命令(宏定义和条件编译)

C语言预处理命令(宏定义和条件编译) 前言 在编译和链接之前,还需要对源文件进行一些文本方面的操作,比如文本替换、文件包含、删除部分代码等,这个过程叫做预处理,由预处理程序完成。 较之其他编程语言&am…

图像复原论文阅读:GRL算法笔记

标题:Efficient and Explicit Modelling of Image Hierarchies for Image Restoration 会议:CVPR2023 论文地址:http://arxiv.org/abs/2303.00748 官方代码:https://github.com/ofsoundof/GRL-Image-Restoration 作者单位&#xf…

国产化复旦微电子 FMQL45T900 替代Xilinx ZYNQ ARM+FPGA 7045方案(评论区有联系方式)

FM4550国产化开发板 功能接口 - - 系统框图 - - 对应参数 - 1.主要参数 系统1: FPGA型号:FMQL45T900 PS内核:四核ARM Cortex-A7,主频800MHz PS端内存:1GB DDR3,数据速率1066Mbps,32bit PL端内存&…

vagrant无剩余磁盘空间,无法连接Mysql

vagrant无剩余磁盘空间,无法连接Mysql 参考博客1 参考博客2 1.报错:设备上没有剩余空间 C:/HashiCorp/Vagrant/embedded/gems/2.2.19/gems/net-scp-3.0.0/lib/net/scp.rb:398:in await_response_state: \x01scp: /tmp/vagrant-network-entry-eth1-1680…

工业树莓派如何保障电气安全?

一、应用背景 电气系统主要用于传输和分配电力,是工业生产过程中不可或缺的组成部分,广泛应用于工业自动化控制、机器人、电动汽车等领域。因此,实时监测电气系统具有重要意义。 电流是电气系统中最基本的参数之一,实时监测电气…

[Linux]管理文件基本操作

​⭐作者介绍:大二本科网络工程专业在读,持续学习Java,输出优质文章 ⭐作者主页:逐梦苍穹 ⭐所属专栏:Linux基础操作。本文主要是分享一些Linux系统常用操作,内容主要来源是学校作业,分享出来的…

0118 定时任务调度

任务调度:指系统在某个时间执行的特定的命令或程序 任务调度分类: 系统工作:有些重要的工作必须周而复始地执行,如病毒扫描等 个别用户工作:个别用户可能希望执行某些程序,如对MySQL数据库的备份 1.cro…

攻防世界web2、ddctf_2019_homebrew_event_loop、 [网鼎杯 2018]Fakebook

web2 进入环境得到源码 <?php $miwen"a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";function encode($str){$_ostrrev($str);// echo $_o;for($_00;$_0<strlen($_o);$_0){$_csubstr($_o,$_0,1);$__ord($_c)1;$_cchr($__);$_$_.$_c; } …

MySQL之事务和锁机制

文章目录一、事务1.1 事务特征1.2 隔离级别1.3 开启事务二、锁机制2.1 读锁、写锁2.2 全局锁、表锁、行锁2.3 记录锁、间隙锁、临键锁提示&#xff1a;以下是本篇文章正文内容&#xff0c;MySQL 系列学习将会持续更新 一、事务 在数据库里面&#xff0c;我们希望有些操作能够以…

CSS模块的书写以及删除线的作用和来历什么是删除线

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><style>/*关羽这一行代码变为绿色*/#gy_li{color: green}/*张飞,苹果这一行代码变为黄色*/#zf_li,#pg_ul{color: yellow}/*i…