三个月从功能测试进阶到自动化测试,涨薪5k?你在想啥呢?

一、自动化测试要学多久能学会?

兄弟,老实说如果你现在上班,之前主要在做功能测试,或者编程基础比较弱的话,三个月够呛。

如果你是脱产学习,每天能保持6~8小时学习时间的话,可以。

虽然很多知识付费课程,或者培训班都在宣传“三个月学会自动化测试,升职加薪必备”之类的,但实际上你【了解】一个东西,到【入门】,到你真正【掌握】。这中间是需要时间来实践的。

比如自动化测试,你需要学习UI 自动化,接口自动化,CI部署自动化,自动化数据构造。

UI 自动化细分下来有:Appium、Selenium、ATX、AirTest、uiautomatorviewer、Weditor、 AppCrawler、 UlCrawler、 Appetizer……

接口自动化细分下来有:sosotest、HttpRunner、LuckyFrame、Hitchhiker、phoenixframework

newman、stressTestSystem。

当然,很多工具类的是一通百通,只要掌握好原理,要学起来还是比较快的。

但这东西咋说呢?

就好像上数学课,老师讲的好像你都懂,但你真正懂不懂,要做题才知道。等你做题了,又会遇到各种“变形题”,因为实际工作情况远比上课说的要复杂一些。等你真正把这套东西熟练运用在工作中,一般都需要4~6个月。

像我之前接触自动化测试的时候,因为平常要上班,工作日常常23点这样下班,公司还是大小周。。基本上只能拿周末时间来学习,然后在工作中慢慢去实践,算下来差不多也是半年时间能掌握。

二、自动化测试学习路线

「我把我肝了七天七夜的自动化学习路线摆在这了。」 ⬇️

此图可能是本文最重点的地方了,字体我放大点,建议搜藏!

 

欢迎大家细品和指正。

三、学习自动化测试的注意事项

下面挑几个容易踩坑的地方来谈:

2.1 不重视编程基础,技术只停留在照葫芦画瓢的写​​​​​​​测试用例

建议大家要重视编程基础,可以从Python或者Java入手。

学习编程是一个很枯燥乏味的过程,中间有些难点甚至会劝退一波人,比如我现在让大家用Python来手撕一段多线程实现并发HTTP请求的代码,未必所有人都能当场写出来。

另外建议要特别熟悉你所测试的Web服务的代码,包括代码框架、上下游服务、数据流转和数据存储。这对做接口自动化,很有帮助。

2.2 要特别熟悉业务,能够发现业务痛点,而且并不是什么操作都可以做自动化。

我们做自动化要明确自动化能够达到的能力和能够为业务测试带来的具体价值。

测试遵循二八原则,80%的Bug都集中在20%的主流程上,千万不要把力气都花费在边缘化的地方。

比如:测试分类页的商品数据,我们思路是提高线上回归测试的效率和做一些简单的线上监控。

如果想法是把所有的商家门店(几千个)下的分类下每一页的所有商品(几百万)全部遍历一遍,或者针对每一个商品的价格去做一些校验,这种做法成本是很高的,也无意义。

正确的做法是:根据一些头部流量的少部分商家和门店,根据边界值

的指导,根据一些策略,抽样测试前几页和最后一页的商品的排序、重复校检

即可。

2.3 自动化用例并不是越多越好

我们做自动化最关键的一步是考虑 ROI,用例越多,维护成本越高。

应该考虑如何通过少部分用例,覆盖更多的场景。

自动化测试,生于业务,死于维护的例子,太多太多。

2.4 自动化做得热火朝天,但落地却举步维艰

这里也把我在上家公司「实施自动化测试的落地步骤」也发出来,大家感兴趣可以参考。

以上,希望能帮到你。

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

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

相关文章

【综】A review of bicycle-sharing service planning problems

A review of bicycle-sharing service planning problems 共享单车服务规划问题综述 article{ZHOU2022608, title {Review of bike-sharing system studies using bibliometrics method}, journal {Journal of Traffic and Transportation Engineering (English Edition)}, v…

12.0 自定义SystemUI下拉状态栏和通知栏视图(十九)之悬浮通知布局

1.前言 在进行12.0的系统rom产品定制化开发中,在12.0中针对systemui下拉状态栏和通知栏的定制UI的工作开发中,原生系统的下拉状态栏和通知栏的视图UI在产品开发中会不太满足功能, 所以根据产品需要来自定义SystemUI的下拉状态栏和通知栏功能,首选实现的就是下拉通知栏左滑删…

是面试官放水,还是企业实在是缺人?这都没挂,字节原来这么容易进...

“字节是大企业,是不是很难进去啊?”“在字节做软件测试,能得到很好的发展吗?一进去就有9.5K,其实也没有想的那么难”直到现在,心情都还是无比激动! 本人211非科班,之前在字节和腾讯…

基于springboot学生信息管理系统

大家好✌!我是CZ淡陌。一名专注以理论为基础实战为主的技术博主,将再这里为大家分享优质的实战项目,本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目,希望你能有所收获,少走一些弯路…

JAVA ---数据类型

(一)Java的标识符与关键字 现实世界,所有东西都有属于自己的名字,从而方便分类和区别其他事物。在程序中,常常用一个记号对变量、数组、方法和类等进行标识,这个记号就叫标识符(名字&#xff09…

华为OD机试用java实现 -【最优调度策略】

最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为od机试,独家整理 已参加机试人员的实战技巧本篇题解:最优调度策略 题目 在通信系…

JavaScript核心高级内容复习3

文章目录对象的创建模式继承模式详细介绍Object构造函数模式对象字面量工厂模式自定义构造函数模式构造函数原型的组合模式继承模式--原型链继承继承模式--借用构造函数继承继承模式--组合继承对象的创建模式 Object构造函数模式var obj {}; obj.name Tom obj.setName func…

【软件设计师04】计算机网络

计算机网络 1. OSI/RM七层模型 层次名称主要功能主要设备及协议7应用层实现具体的应用功能POP3、FTP、HTTP、Telnet、SMTP、DHCP、TFTP、SNMP、DNS6表示层数据的格式与表达、加密、压缩5会话层建立、管理和终止会话4传输层端到端的连接TCP、UDP3网络层分组传输和路由选择三层…

Matplotlib库入门

Matplotlib库的介绍 什么是Matplotlib库? Matplotlib是一个Python的数据可视化库,用于绘制各种类型的图表,包括线图、散点图、条形图、等高线图、3D图等等。它是一个非常强大和灵活的库,被广泛用于数据科学、机器学习、工程学、…

ARMv8 secure 和 Non-secure模式切换的两种方法:SMC和SCR.NS

文章目录SMC 指令SCR.NSAArch64SMC(Secure Monitor Call)指令HCR_EL2.TSC :Traps to EL2 of EL1 execution of SMC instructionsSCR_EL3.SMD : Disabling EL3, EL2, and EL1 execution of SMC instructionsSCR_EL3 寄存器AArch32S…

一次完整的OCR实践记录

一、任务介绍 这次的任务是对两百余张图片里面特定的编号进行识别,涉及保密的原因,这里就不能粘贴出具体的图片了,下面粘贴出一张类似需要识别的图片。 假如说我的数据源如上图所示,那么我需要做的工作就是将上面图片里面标红的数…

Spring----整合Mybatis

项目结构具体如下: 准备一个数据库: 架构是spring_db,表名为user_tb 结构如下: 第一步:配置pom文件(导入相应的坐标,注意spring-mybatis与mybatis的版本需要相对应,可以去官网查找…

Python(黄金时代)——多线程、多进程、协程

基本使用 基本概念 进程 几乎所有的操作系统都支持同时运行多个任务,一个任务通常就是一个程序,每个运行中的程序就是一个进程 进程是处于运行过程中的程序,并且具有一定的独立功能 进程是系统进行资源分配调度的一个独立单位 线程 线程&…

基于springboot物资管理系统(程序+数据库)

大家好✌!我是CZ淡陌。一名专注以理论为基础实战为主的技术博主,将再这里为大家分享优质的实战项目,本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目,希望你能有所收获,少走一些弯路…

迅镭激光带您沉浸式直击展会现场!线上直播、云端互动,精彩持续!

2023 ITES深圳工业展 迅镭展位10-B06 深圳国际会展中心-宝安新馆 今天(3月29日),2023 ITES深圳工业展在深圳国际会展中心(宝安新馆)盛大开幕!迅镭激光以“行业高端典范、引领智造未来”为主题,携多款旗舰产品展示领先技术,展会首日便收获了超…

为了开放互联,明道云做了十件事

本文来自明道云资深研发经理孙伟,在明道云2022年秋季伙伴大会活动演讲,经校对编辑后整理为演讲精华。 一、开放没有选择 很多客户选择我们的一个重要原因,是明道云所能提供的产品开放能力。开放其实是没有选择的,坦白来讲&#…

SpringBoot接参注解与校验失败后的三种异常

文章目录一、SpringBoot中的参数传递注解1、PathVariable2、RequestParam3、RequestBody4、不用注解或者ModelAttribute二、参数类型校验失败后的三种异常一、SpringBoot中的参数传递注解 先看看非json下参数的接收和传递: 1、PathVariable PathVariable注解用于…

软件框架-实现使用@Component@Data@Configuration@Bean(配置类控制类实体类)等方法实现将配置文件从8080端口显示在网页上

一、前言 1.该程序代码是使用idea2021.12版本编写的,若使用其他软件请对照好配置; 2.这个程序具体的内容我忘了,只知道使用ComponentConfigurationPropertiesData ConfigurationBeanRestControllerAutowiredGetMapping等方法写的&#xff0…

chatGPT学英语,真香!!!

文章目录学习目标学习内容目标方式过程学习时间学习产出学习目标 能够在三个月的练习后,和真人外教比较流畅的沟通! 最近chatGPT实在是太火了,各种事情都能干,能改论文、写代码和翻译。 看到B站很多教程教我们直接用chatGPT进行…

【数据库管理】②实例管理及数据库启动关闭

1. 实例和参数文件 1.1 instance 用于管理和访问 database. instance 在启动阶段读取初始化参数文件(init parameter files). 1.2 init parameter files [rootoracle-db-19c ~]# su - oracle [oracleoracle-db-19c ~]$ [oracleoracle-db-19c ~]$ cd $ORACLE_HOME/dbs [oracl…