从功能到自动化,熬夜3天整理出这一份2000字学习指南~
学习自动化这个想法,其实自己在心里已经琢磨了很久,就是一直没付诸实践,觉得现在手工测试已经能满足当前的工作需要,不想浪费时间去学习新的东西,有点时间还不如刷刷视频、看看小说等。
第一次有学习Selenium的冲动是在一次被训话之后,觉得委屈了,不想干了,想换份工作。
那个时候手工测试比比皆是,没有自己的优势,所以就打算学习自动化知识来充实自己。网上视频也找了,但是仗着自己之前有点代码基础,没有按照课程系统学习,导致一知半解,在学习完Selenium录制脚本的功能之后,觉得自动化测试只是用工具录制脚本,然后回放就可以了,学习到此结束。
由于未继续学习,只会用Selenium录制脚本然后回放,正好我用来测试的系统,有一个鼠标悬浮时间,但是录制时这个事件并没有录制上,也导致了回放不成功,就此就放下了,第一次自动化的学习就到此结束了。
第二次又有冲动学习自动化是在和领导的一次谈话中提及的,说不能只会手工测试,要接触一些新东西,不然很快就会被淘汰。谈话完之后,我又想是时候开始学习了,又找出学习视频,三天打鱼两天晒网的开始看视频,不紧不慢的进行学习,也没太上心。
准备
真正督促我开始重视学习的,是某个项目真正用到了自动化,问我能不能做,我说还在学习的时候,就感觉别人的眼神都不对了,作为一个有好几年测试经验的老测试,测试自动化工具都不会用。
这个时候我才开始真正上心,每天工作不忙的时候,或者下班之后,拿出1-2小时进行系统的学习,不因为我之前一知半解的知识而放弃某个模块的学习,俗话说得好,有压力才会有动力,真的是这样,我竟然真的坚持下来了,经过一段时间的学习,慢慢的觉得,自动化原来也不是个很难得事情,所谓熟能生巧,多次练习之后就会发现其实很简单。
根据这几次的学习历程,给大家几个建议供大家参考。
学习建议
多样化联系
完全按照视频里的操作方法,用视频里的网站,按部就班的写代码,效果不大,并不是说没有必要。因为课程里所使用的网站都是老师“精心挑选”的,主要针对某个模块某个知识点而来的,用来做例子的功能也是最简单,主要目的是让学员明白当前所讲的知识点。
但是在实际应用的过程中肯定会比这复杂。所以建议在按照视频里的例子练习完成后,多拿一些常用的网站或者工作中正在使用的网站多做练习,这样我们往往会获取到一些课程里没有的知识。
一开始不会没关系,就是照着现有脚本抄也要练习,因为只有练习才能熟能生巧。
虚心学习不自以为是
因为我之前是有代码基础的,所以在第一次学习的过程中将所有代码相关的课程都跳过了,所以导致了知识的断层。第二次学习的过程中,是将课程从头到尾的完整的看了一遍并进行了实际操作,才发现,之前被我跳过的内容隐藏了一些我从前并不知道的知识点。
有始有终
第一次学习时,学习完脚本录制之后,就停止学习了,并没有继续学习后续的内容。
第二次学习后发现,用录制的方式写脚本是很low的,很有局限性,并不能满足所有的需求,后来用WebDriver和UnitTest才是真正的高级,解决脚本录制不能解决的问题。
遇事迎难而上
在我学习完课程后,自己在练习的过程中,遇到了课程中并没有讲到的内容,脚本执行一直报错,在我第一次的学习过程中,遇到问题就放弃了,并没有积极的去解决问题,导致了最终的放弃。
而第二次学习中,遇到问题后我积极的去各种网站查找解决问题的方案,问题总会得到解决。在问题得到解决之后,发现这是一件很值得骄傲的事情,心情就会变好,虽然解决问题的过程可能会很艰难。
应用到日常的工作中
我们学习完自动化之后,不要学习完就行了,而要积极的将其应用到我们日常的工作中,如果放着不用,一段时间之后我们学习到的知识都会慢慢遗忘。将其应用到工作中后,不仅能对技术进行不断练习、优化、升级,还能提高工作效率,何乐而不为呢?
这是我自学自动化的历程,走了不少弯路,也没有专人的指导,只能靠自己去摸索,希望我自己犯的错误能让大家引以为戒
和大佬们一起学习交流
不管是自学也好,还是参加培训机构,都是需要一个正确的方向去引导你学习,这样学习起来也会比较轻松,不会走多余的弯路,所以说思路很重要。
学习的动力其实是一个很简单的东西,说成目标可能会更好理解一点,你想学成之后能达到什么程度,这样你也能在学习的过程中不被困难所难倒,也会有源源不断的动力促使你前进。
实践和思考就是你对自己学到的东西的一个掌握的程度的检验了,只有实践了你才能知道,这个知识点你到底学会了没有,会了之后有没有什么其他的理解,这个就是需要自己去思考了 ,这种东西都是别人教不了你的!
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取
相关文章:
从功能到自动化,熬夜3天整理出这一份2000字学习指南~
学习自动化这个想法,其实自己在心里已经琢磨了很久,就是一直没付诸实践,觉得现在手工测试已经能满足当前的工作需要,不想浪费时间去学习新的东西,有点时间还不如刷刷视频、看看小说等。 第一次有学习Selenium的冲动是…...
客户端攻击(溯源攻击,获取客户端信息)
目录 背景 为什么 示例 探索HTML应用程序 HTA攻击行为(Powershell代码) 背景 如果创建的文件扩展名为.hta而不是.html,Internet Explorer将自动将其解释为html应用程序,并提供使...
visual studio 2022 社区版 c# 环境搭建及安装使用【图文解析-小白版】
visual studio 2022 社区版 c# 环境搭建及安装使用【图文解析-小白版】visual studio 安装 C# 环境安装流程创建c#窗体应用程序visual studio 安装 C# 环境 首先,进入其官网下载对应的visual studio社区版本,官网链接: https://visualstudio.microsoft…...
21- 神经网络模型_超参数搜索 (TensorFlow系列) (深度学习)
知识要点 fetch_california_housing:加利福尼亚的房价数据,总计20640个样本,每个样本8个属性表示,以及房价作为target 超参数搜索的方式: 网格搜索, 随机搜索, 遗传算法搜索, 启发式搜索 超参数训练后用: gv.estimat…...
《NFL橄榄球》:芝加哥熊·橄榄1号位
芝加哥熊(英语:Chicago Bears)是一支职业美式橄榄球球队。位于伊利诺伊州的芝加哥。现时为全国橄榄球联盟的国家联盟北区的球队。他们曾经赢出九次美式橄榄球比赛的冠军,分别为八次旧制全国橄榄球联盟和一次超级碗冠军(…...
【ES】Elasticsearch核心基础概念:文档与索引
es的核心概念主要是:index(索引)、Document(文档)、Clusters(集群)、Node(节点)与实例,下面我们先来了解一下Document与Index。 RESTful APIs 在讲解Document与Index概念之前,我们先来了解一下RESTful APIs,因为下面讲解Documen…...
实时手势识别(C++与python都可实现)
一、前提配置: Windows,visual studio 2019,opencv,python10,opencv-python,numpy,tensorflow,mediapipe,math 1.安装python环境 这里我个人使用的安装python10&#…...
15个Spring扩展点,一般人知道的不超过5个!
Spring的核心思想就是容器,当容器refresh的时候,外部看上去风平浪静,其实内部则是一片惊涛骇浪,汪洋一片。Spring Boot更是封装了Spring,遵循约定大于配置,加上自动装配的机制。很多时候我们只要引用了一个…...
Elasticsearch:以 “Painless” 方式保护你的映射
Elasticsearch 是一个很棒的工具,可以从各种来源收集日志和指标。 它为我们提供了许多默认处理,以便提供最佳用户体验。 但是,在某些情况下,默认处理可能不是最佳的(尤其是在生产环境中); 因此&…...
js几种对象创建方式
适用于不确定对象内部数据方式一:var p new Object(); p.name TOM; p.age 12 p.setName function(name) {this.name name; }// 测试 p.setName(jack) console.log(p.name,p.age)方式二: 对象字面量模式套路:使用{}创建对象,同…...
阿里云服务器ECS适用于哪些应用场景?
云服务器ECS具有广泛的应用场景,既可以作为Web服务器或者应用服务器单独使用,又可以与其他阿里云服务集成提供丰富的解决方案。 云服务器ECS的典型应用场景包括但不限于本文描述,您可以在使用云服务器ECS的同时发现云计算带来的技术红利。 阿…...
Ajax学习笔记01
引入 翻译成中文就是“异步的Javascript和XML”。即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML)。 AJAX 不是新的编程语言,而是一种使用现有标准的新方法。 AJAX 最大的优点…...
Jinja2----------过滤器的使用、控制语句
目录 1.过滤器的使用 1.过滤器和测试器 2.过滤器 templates/filter.html app.py 效果 3.自定义过滤器 app.py templates/filter.html 效果 2.控制语句 1.if app.py templates/control.html 2.for app.py templates/control.htm 1.过滤器的使用 1.过滤器和测…...
面试了1个自动化测试,开口40W年薪,只能说痴人做梦...
公司前段缺人,也面了不少测试,结果竟然没有一个合适的。一开始瞄准的就是中级的水准,也没指望来大牛,提供的薪资在10-20k,面试的人很多,但平均水平很让人失望。看简历很多都是3年工作经验,但面试…...
冲鸭!33% 程序员月薪达到 5 万元以上~
2023年,随着互联网产业的蓬勃发展,程序员作为一个自带“高薪多金”标签的热门群体,被越来越多的人所关注。在过去充满未知的一年中,他们的职场现状发生了一定的改变。那么,程序员岗位的整体薪资水平、婚恋现状、职业方…...
【RSA】HTTPS中SSL/TLS握手时RSA前后端加密流程
SSL/TLS层的位置 SSL/TLS层在网络模型的位置,它属于应用层协议。接管应用层的数据加解密,并通过网络层发送给对方。 SSL/TLS协议分握手协议和记录协议,握手协议用来协商会话参数(比如会话密钥、应用层协议等等)&…...
clion在linux设置桌面启动图标(jetbrains全家桶均适用)
clion在linux设置桌面启动图标(jetbrains全家桶均适用) 网上大部分步骤都只是pycharm的教程,其实对于jetbrains全家桶都适合,vs code编辑器也可以这样。 刚开始是使用pycharm在linux设置的教程,参照:http…...
Java数据结构LinkedList单链表和双链表模拟实现及相关OJ题秒AC总结知识点
本篇文章主要讲述LinkedList链表中从初识到深入相关总结,常见OJ题秒AC,望各位大佬喜欢 一、单链表 1.1链表的概念及结构 1.2无头单向非循环链表模拟实现 1.3测试模拟代码 1.4链表相关面试OJ题 1.4.1 删除链表中等于给定值 val 的所有节点 1.4.2 反转…...
立创EDA 学习 day01 应用下载安装,基本使用的操作
1.下载网站 1.链接:立创EDA下载-立创EDA官方版-PC下载网 (pcsoft.com.cn) 2.安装立创EDA 1.直接 next (简单的操作) 3.注册账号 1. 最好注册一个账号,等下在原理图转PCB 板的时候要登录,才可以。 4.新建工程 1.新…...
华为OD机试真题Python实现【火星文计算】真题+解题思路+代码(20222023)
火星文计算 题目 已经火星人使用的运算符号为# $ 其与地球人的等价公式如下 x#y=2*x+3*y+4 x$y=3*x+y+2 x y是无符号整数 地球人公式按照 c 语言规则进行计算 火星人公式中$符优先级高于#相同的运算符按从左到右的顺序运算 🔥🔥🔥🔥🔥👉👉👉👉👉👉 华…...
SpringBoot-17-MyBatis动态SQL标签之常用标签
文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...
全球首个30米分辨率湿地数据集(2000—2022)
数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...
佰力博科技与您探讨热释电测量的几种方法
热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...
安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲
文章目录 前言第一部分:体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分:体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...
Go语言多线程问题
打印零与奇偶数(leetcode 1116) 方法1:使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...
MySQL 索引底层结构揭秘:B-Tree 与 B+Tree 的区别与应用
文章目录 一、背景知识:什么是 B-Tree 和 BTree? B-Tree(平衡多路查找树) BTree(B-Tree 的变种) 二、结构对比:一张图看懂 三、为什么 MySQL InnoDB 选择 BTree? 1. 范围查询更快 2…...
AD学习(3)
1 PCB封装元素组成及简单的PCB封装创建 封装的组成部分: (1)PCB焊盘:表层的铜 ,top层的铜 (2)管脚序号:用来关联原理图中的管脚的序号,原理图的序号需要和PCB封装一一…...
Vue 3 + WebSocket 实战:公司通知实时推送功能详解
📢 Vue 3 WebSocket 实战:公司通知实时推送功能详解 📌 收藏 点赞 关注,项目中要用到推送功能时就不怕找不到了! 实时通知是企业系统中常见的功能,比如:管理员发布通知后,所有用户…...
