字节8年测试经验,送给想要学习自动化测试的同学6条建议

å¯è½æ¯ç®åæå¨ç Androidé¢è¯é¢å¤§å¨ 中é«çº§

我的职业生涯开始和大多数测试人一样,开始接触都是纯功能界面测试。那时候在一家电商公司做测试,做了有一段时间,熟悉产品的业务流程以及熟练测试工作流程规范之后,效率提高了,工作比较轻松,也得到了更好的机会去发展。 到后来进阶自动化测试,再到测试开发不知不觉间已经有了6年测试开发经验月薪也是突破了30k+曾经也荣幸的在美团测试开发框架组呆过搭建过美团platuo测试框架thrift测试框架,自动化测试平台,这也是让我熟悉了python3,java,vue,陆陆续续也是在多家公司从0到1搭建过自动化测试框架,保障过亿级流量服务的质量工作,基于我的经验,送给想要学习自动化测试的同学6条建议

第一条建议:先学习编程语言,然后再接触自动化工具。

语言选择上Java或者Python都是可以的,可以先从Python入手,之后再开始Java。在学习语言的过程中,一定要忘掉你是做测试的,把自己当成开发,系统的去学相关的编程知识,因为语言水平的高低,很大程度上就决定了自动化水平的高低。

第二条建议:打好基础,而不是本末倒置的学习自动化测试工具

不理解http协议,就不会理解loadrunner、fiddler、soapUI这些工具;不理解HTML,就不会理解

firebug。所以基础打好了,才会事半功倍。

第三条建议:清晰的认清自己,明确自己的目标

说白了,咱干什么事情之前肯定要先看看自己有几斤几两对吧,先评估一下自己现在的能力水平,然后再看下自己能够投入什么样的资源(精力、时间、资金)去学习,这样才会知道什么样的内容自己能够搞明白,哪个阶段要请教大牛,别整到最后越学越迷茫;其次就是认清自己能力之后,就要给自己定好合理的目标,多长时间达到什么样的水平。

第四条建议:选择好切入点,设计好对自己帮助最大的方案

  • 接口自动化
  • Python+Unittest+HtmlTestRuner+Jenkins和Java+Httpclient+TestNG+Jenkins
  • web自动化:Python+Webdrver+HtmlTestRunner+Jenkins,Java+Webdriver+TestNG+Jenkins
  • APP自动化:Robotium+Java+TestNG+Jenkins,Appium+Java+TestNG+Jenkins,Appium+Python+HtmlTestRunner
  • 辅助测试脚本
  • 以Shell,Python为主来简化重复的工作,过滤日志等

当然这些都是基本的实现方案,别的先不介绍。如果刚开始接触,我建议是选择语言之后,然后从接口测试入手,然后再学习web和APP自动化。

第五条建议:贪多嚼不烂,学会举一反三

新手上路,容易着急,啥都想学,这样就容易混淆,也不好消化。很多地方都是相通的,代码架构、用例管理、等都可以举一反三,既可以提升你的学习效率,也不会混淆。最重要的是不能纸上谈兵,一定要动手去实践。

第六条建议:不要受限于工具,多用开源

在测试行业,自动化测试工具有很多,但是大公司趋向于用开源的框架和工具,然后定制适合自己的测试方案。学着用一些开源的例如Webdriver, Appium等去搭建自己的自动化测试工程,然后掌握整体的自动化工作原理,为以后能够搭建自己的工具平台做准备,毕竟搞定自动化,可不是会使用几个工具那么简单。

自动化测试的最高境界:开发测试工具、设计自动化框架,让别人用。

自动化测试学习终极路线,从语言入手,搞定自动化测试

掌握Python或者Java语言,建议先从Python入手

基本的语言知识,语法、函数、模块、输入与输出、面向对象编程
脚本编写
、标准库、多线程、第三方库,外部数据处理
unittest、pytest测试框架、参数化、数据驱动

web端的自动化测试

selenium安装、录制、处理
web控件、JavaScript脚本、PO模式

移动端APP自动化测试

appium使用、录制、元素定位方法
APP控件定位、交互,参数化用例
appium问题定位分析、源码分析、二次封装

服务端接口自动化测试

接口 自动化测试框架

request
接口请求构造、断言
json/xml请求、响应断言

headcookie处理、认证体系

如果你按照这这个学习路线把自动化测试吃透,那么月薪在15-25K是很轻松的事情,同时具备了代码能力,也就可以继续向测试开发去努力了!

写在最后:

无论你在测试团队中是什么样的身份,无论你对于自动化测试是什么样的认知,也无论你对自动化测试是爱还是恨,自动化都是你从手工测试转为测试开发的必经之路。

或许你会听到自动化测试成本高、效果差、效率低等负面的反馈,但你要清晰的知道,这都不是自动化测试的问题,对于某种工具,某个方案,最终的效果还是由实施者来去决定的。

我们能够做到的是正视自动化测试,找准方法,不断的提升自己!

绵薄之力

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

这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…… 

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

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

相关文章

MyBatisPlus-DQL编程控制

MyBatisPlus-DQL编程控制3,DQL编程控制3.1 条件查询3.1.1 条件查询的类3.1.2 环境构建3.1.3 构建条件查询3.1.4 多条件构建3.1.5 null判定3.2 查询投影3.2.1 查询指定字段3.2.2 聚合查询3.2.3 分组查询3.3 查询条件3.3.1 等值查询3.3.2 范围查询3.3.3 模糊查询3.3.4…

堆来咯!!!

堆是什么? 是土堆吗? 那当然不是啦~ 堆是一种被看作完全二叉树的数组。 那么什么是完全二叉树呢? 如果二叉树中除去最后一层节点为满二叉树,且最后一层的结点依次从左到右分布,则此二叉树被称为完全二叉树。 堆的特…

中国版的ChatGPT,你最看好谁?

一、百度:文心一言升级中,未来支持开源 3月16日,百度正式推出国内首款生成式AI产品“文心一言”,可支持文学创作、文案创作、数理推算、多模态生成等功能。 “文心一言”基于全栈自研的AI基础设施进行学习和训练: ①…

selenium自动化测试面试题【含答案】

目录 1、selenium中如何判断元素是否存在? 2、selenium中hidden或者是display = none的元素是否可以定位到? 3、selenium中如何保证操作元素的成功率?也就是说如何保证我点击的元素一定是可以点击的? 4、如何提高s…

redis持久化方式区别

Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集 合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序…

springboot实现修改用户信息功能

目录 1、UserEntity层 2、UserMapper层 3、UserService层 4、UserController类 5、Postman测试 要实现修改用户信息的功能,需要编写对应的代码: 如: 在UserEntity中定义用户实体类的属性。 在UserMapper中编写修改用户的SQL语句&#…

极光笔记 | 如何在Shopify中使用EngageLab (下)

Sendgird发布的《2022 Global Messaging Engagement Report》中揭示了世界各地的用户更喜欢用哪种方式与品牌互动,结论是:“电子邮件仍然是第一名(短信紧随其后)”。4800多名受访者中,有18%的人将电子邮件列为他们最常…

批处理文件名(不含空格的文件名、以及含空格的文件名)

目的: 整理为: 步骤: 结果生成1.txt内容为: 新建excel 复制1.txt中待处理的文件名字 然后 一直点下一步直到完成,再删除多余列,只剩下名字列 设置P1单元格为1.jpg,下拉递增 设置P1单元格 “REN “&…

Html5代码实现动态时钟

以下是一个简单的HTML5动态时钟的示例&#xff1a; <!DOCTYPE html> <html> <head><title>HTML5动态时钟</title><style>body {margin: 0;padding: 0;background-color: #000;color: #fff;font-size: 5em;font-family: Arial, sans-serif…

1、Windows下编译并搭建AzerothCore服务端

目录前言一、AzerothCore下载二、mysql安装三、boost安装四、OpenSSL安装五、CMake下载六、CMake编译1 - CMake生成vs项目2 - vs项目设置3 - 生成解决方案4 - 安装AzerothCore5 - 添加账号6 - 修改服务器名称7 - 修改客户端的服务器地址前言 客户端对应版本&#xff1a;魔兽世…

STM32 PWM模式与输出比较模式的区别。PWM占空比不生效,在STM32CubeMX中配置PWM的两种模式——蓝桥杯嵌入式

&#x1f38a;【蓝桥杯嵌入式】专题正在持续更新中&#xff0c;原理图解析✨&#xff0c;各模块分析✨以及历年真题讲解✨都已更新完毕&#xff0c;欢迎大家前往订阅本专题&#x1f38f; &#x1f38f;【蓝桥杯嵌入式】蓝桥杯第十届省赛真题 &#x1f38f;【蓝桥杯嵌入式】蓝桥…

chatgpt入口-chatgpt哪里下载

如何开通ChatGPT权限 开通 ChatGPT 的权限与具体的服务提供商有关&#xff0c;不同的服务提供商可能有不同的服务要求和使用条件。下面是一些可以开通 ChatGPT 权限的一般步骤&#xff1a; 寻找服务提供商&#xff1a;首先需要寻找一个可供使用的 ChatGPT 服务提供商。您可以在…

Html5版贪吃蛇游戏制作(经典玩法)

回味经典小游戏&#xff0c;用Html5做了个贪吃蛇的小游戏&#xff0c;完成了核心经典玩法的功能。 游戏可以通过电脑的键盘“方向键”控制&#xff0c;也可以点击屏幕中的按钮进行控制。&#xff08;支持移动端哈&#xff09; 点击这里试玩 蛇的移动是在18 x 18的格子中进行移…

(函数指针) 指向函数的指针

函数指针- 指向函数的指针函数指针的声明和使用通过函数指针调用函数函数指针做参数函数指针数组函数指针的声明和使用 函数指针的声明格式&#xff1a; 返回值类型 (*函数指针名)(参数列表); 其中&#xff1a; *函数指针名 表示函数指针的名称返回值类型 则表示该指针所指向…

swf怎么转换成mp4格式,5个方法都很简单

swf怎么转换成mp4格式&#xff1f;各位小伙伴们有没有遇到过想要打开swf文件却需要安装flash插件的情况呢&#xff1f;其实&#xff0c;swf文件是flash软件或者animate软件导出的flash软件的专属格式&#xff0c;主要应用于动画设计领域,在网页html设计中非常常见&#xff0c;但…

(数字图像处理MATLAB+Python)第四章图像正交变换-第二节:离散余弦变换和K-L变换

文章目录一&#xff1a;离散余弦变换&#xff08;Discrete Cosine Transform&#xff0c;DCT&#xff09;&#xff08;1&#xff09;一维DCTA&#xff1a;定义B&#xff1a;实例&#xff08;2&#xff09;二维DCTA&#xff1a;定义B&#xff1a;实例C&#xff1a;程序&#xff…

UE4 几种常见的项目优化方式

1.灯光范围优化 当屏幕某一块像素被多盏灯光所影响&#xff0c;那么也会拖慢帧率&#xff0c;可以打开灯光复杂度视图进行查看&#xff0c;屏幕上越红的地方灯光复杂度越高&#xff0c;尝试降低灯光半径可以解决&#xff1a; 2.材质纹素优化 有时候我们并不知道目标模型的…

OJ练习LeetCode-118:杨辉三角

题目 118. 杨辉三角 - 力扣&#xff08;LeetCode&#xff09; 可以看到&#xff0c;默认的代码块中出现List<List<Integer>>为二级ArrayList&#xff0c;类似于数组中的二维数组。List<元素类型> 在List<List<Integer>>中&#xff0c;元素类型…

百度天工AIoT设备应用使能平台助力企业低成本开发

数字中国建设的顶层文件《数字中国建设整体布局规划》&#xff08;以下简称《规划》&#xff09;于近日印发&#xff0c;作为数字中国建设的重要基础&#xff0c;《规划》指出&#xff0c;要全面赋能经济社会发展&#xff0c;推动数字技术和实体经济的深度融合&#xff0c;产业…

如何将本地项目上传到Github的方法步骤

默认&#xff1a;已经安装好了git。 第一步&#xff1a;我们需要先创建一个本地的版本库&#xff08;其实也就是一个文件夹&#xff09;。 你可以直接右击新建文件夹&#xff0c;也可以右击打开Git bash命令行窗口通过命令来创建。 第二步&#xff1a;通过命令git init把这个…