美团四年、字节三年,我的软件测试之路

news2024/9/17 7:46:02

前言

时间回到8年前,我人生中的第一份实习工作,是在某互联网公司做一个自动化测试工程师。当时的我可谓意气风发,想要大干一场,结果第一次做测试就出现了事故。由于对某些地方的不了解,把某一个地方侧漏了,并且上完线就去吃晚饭了,等吃饭回来发现师傅在焦头烂额地忙来忙去。那次故障造成了一个某项服务20分钟不可用,对公司造成了不小的影响。​

对于软件测试从业者来说,提起自动化测试,最近两年任何一个招聘渠道对于测试岗位的要求,几乎都要求其会自动化测试。

如果你在软件测试行业有许多的不解的困惑,关注VX公众号:互联网杂货铺,可以进群和我交流,也有免费的资料给到你

这仅仅是一个开始,在后来半年的时间里,我几乎把所有职场新人可能犯的错误都犯了个遍。架构师让我把最新开发出来的软件测试完,我闷头搞了两周,也没有得出任何结论;本来安排好的开发计划,由于我临时要回去写论文,搞得经理措手不及;参加项目座谈会,全程“打酱油”……那段时间,自己也很苦恼,几乎每天晚上11点多才走,很累很辛苦,但依然拿不到想要的结果。

8年过去了,自己从一个职场小白逐步成长为一名技术Leader。我发现团队中的很多同学在不停地重复犯着自己当年类似的错误。他们并不是不努力,到底是哪里出了问题?经过一段时间的观察与思考后,我想我找到了答案。那就是:我们大多数同学在工作中缺乏原则的指导。原则,犹如指引行动的“灯塔”,它连接着我们的价值观与行动。每个人都应该有自己的原则,当我们需要作出选择时,一定要坚持以原则为中心。但是在现实生活中,我们往往缺少对原则的总结,对于很多人来说这是一门“只可意会不可言传”的玄学,是属于老司机的秘密,其实不然。“追求卓越”是美团的价值观。作为一名技术人员,我们应该如何践行呢?下面希望能够给大家带来一些启发,更好地指导我们的行动。

如何提升自己,避免给以后挖坑

要想顺利实现职场转型,应该如何做,才能提高成功率,并且不给以后挖坑呢?以下是3点建议:

1、清晰的职业规划和发展目标

清晰的目标是求职的第一步,也是用人单位比较关注的求职因素。现在用人单位都喜欢有目标、有想法、有能力的年轻人。没有目标、没有想法、没有能力的“三无”人员,随波逐流,如何让用人单位看到你的发展潜力呢?你要想让别人录用你,至少得看到你身上有吸引人的地方。假如你是一个三无人员,恐怕你只能找到含金量最低的岗位。

对于年轻人来说,用人单位对你的期待,不是你有多强的能力(因为你根本就不具备,所有的新人都不具备),而是你身上的可培养潜力。你得有目标,有动力。

同时,从求职的角度来说,没有目标,你就会海投简历。而海投简历的结果,往往是石沉大海,求职的效率很低。

同时,没有目标,你在职场上的发展就很被动。一旦这个职位机会不合适,以后还得跳槽。这样你走弯路的成本损失就会很大。

如何从长远角度思考自己的职业方向?核心关键的问题,就是要找准自身的优势,扬长避短。同时,发挥你优势的工作,才能够带给你更多的驱动力及正向反馈。

2、进行充分的职前知识储备

虽然用人单位不关注知识技能,但你也不能空手套白狼,一定的知识储备还是必要的。如果你嘴上说对xx职位很感兴趣,可是,你如何向对方证明你的诚意呢?你什么准备都没有,如何让别人信任你呢?而最好的证明自己的方法,就是进行充分的知识储备。我们的所有客户,但凡涉及到转行的,知识储备这个环节都是重头戏,需要花费1-3个月左右的时间来进行。

注意:知识储备一定是提前进行的,不能说你都开始投简历找工作了,才进行知识储备。

3、围绕求职目标,优化你的简历,并进行充分的面试准备

在上述3个环节中,是有前后顺序的,一环套一环,少了哪一个环节都不行。你已经耽误一年了,已经开始陷入被动的状态当中了。接下来的职业方向,你能否找对,决定了你未来5-10年的职业走势。职场如棋局,一步错,步步错。这一步走错了,要花三步的精力去弥补错误。

同时,在这我也准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺,免费领取

软件测试视频教程观看处:

2023最新【软件测试面试300问】面试八股文教程,涵盖自动化测试/接口测试/性能测试/测试开发等内容

下面分享我整理的这份2022年可能是最全的软件测试工程师发展方向知识架构体系图。

功能测试

1.计算机基础

计算机基础:操作系统,进制转换,逻辑代数,计算机网络基础

软件生命周期,开发模型,测试模型

2.软件测试核心理论

软件测试概念,术语,目的,意义,前景

软件测试方法及分类(白盒测试,黑盒测试,单元测试。集成测试,系统测试,回归测试,验收测试,负载测试,压力测试,易用性测试,兼容性测试,UI测试。文档测试),热门领域测试技巧

需求分析,测试计划,测试用例设计与编写(等价类,边界值,因果图,判定表法,正交实验法,错误推算法,场景法),缺陷管理及缺陷报告,测试报告

测试用例编写,缺陷编写集中演练

3.企业级环境配置实践

LInux系统和Windows系统搭建环境的区别

Linux基本命令,高级命令的使用

LInux操作系统下的服务器环境搭建

Linux环境下编辑软件的使用

Linux远程终端工具的使用

Linux系统Shel脚本基础

数据库的定义及基本概念,关系型数据库,Navicat工具

MySQL:MySQL的安装与配置,用户及连接方式,数据表操作,数据操作-增删改查,条件查询,排序,聚合函数,分组,分页,连接查询,自关联,子查询,数据库设计,命令行操作数据库,函数,存储过程。视图,事务,索引,外键

Oracle:Oracle的基本介绍,Oracle安装及简单操作,SQLplus集成工具安装及使用,SQL常用语句

4.功能测试项目实战

企业中标准则试流程,程序中的前后台数据交互

软件测试管理工具: SVN、禅道、QC\ALM、Jira

搭建功能测试实战环境

Linux环境下B/S结构产品测试项目

自动化测试

1.Python编程技术

Python:Python语言特点,运行环境搭建,Pycharm,变量的定义,输入输出,元组,列表,字

典,运算符的使用,分支结构,循环结构,函数,文件操作,面向对象编程思想,正则表达式,异常和调试,编程规范

2.自动化测试入门

自动化测试分类及自动化适用的项目、自动化测试框架选型,自动化测试行业现状,发展前景,需要掌握的技能

3.Web自动化测试:Selenium

Selenium的发展历史及工作原理,SeleniumIDE插件的使用,Firebug插件 I具及使用,元素基础定位Xpath、CSS元素定位方式,元素操作,浏览器的操作方法,鼠标操作,键盘操作,元素等待,HTML特殊元素处理,窗口截图,自动化测试模型,UnitTest框架,UnitTest断言, 生成HTML测试报告,测试报告自动发送邮件

4.Web自动化测试项目实战

搭建B/S架构的电商网站,使用Selenium对网站的核心功能进行自动化测试,包括元素定位、鼠标键盘的模拟操作及自动化测试框架的使用等

5.移动自动化测试:Appium

手机自动化测试环境搭建,真机和模拟器的测试,独立功能+业务场景脚本,手机自动化测试框架

Appium设计及实现,系统资源监控和日志分析,手机测试常见问题和用例分析

Monkey简介及安装,Monkey参 数,Monkey事件,Monkey自动化脚本,Monkey日 志管理

6.移动自动化测试项目实战

搭建APP测试环境,使用Appium对APP核心功能进行测试验证,包括ID、xpath、 list元素定位,数据交互、模块封装以及自动化测试框架的使用,生成测试报告,对APP功能进行评估。

接口测试

1.接口测试综合核心理论

接口测试基础,接口测试流程,接口测试方法,接口测试工具

计算机网络知识,Postman安装、使用,接口手动测试,Fiddler安装、 使用,Web和手机抓包,基本设置方法

2.Jmeter

Jmeter安装、基本使用,BadBoy录制脚本,测试计划分析、Vuser及场景设计(线程、组、调度器),Jmeter关联技术,Jmeter参 数化,Jmeter调 试和应用

Jmeter的常用组件:线程组、取样器、配置元件、处理器、控制器、定时器、断言、监听器

3.接口测试项目实战

搭建接口测试环境,分析业务流程,设计测试用例,使用Jmeter执行测试用例,对页面跳转,参数传递等功能进验证

4.网络安全测试

Web安全核心理论、Web漏洞及防御、渗透测试、SQL注入、XSS跨站脚本、AppScan

性能测试

1.性能测试核心理论

性能测试理论、性能测试分类、性能测试常用指标、工具选择、LoadRunner安装与注册、性能测试步骤性能测试术语、类C语言

2.Loadrunner

VuGen:协议、参数化、集合点、事务、检查点、思考时间、关联、文件下载、浏览器模拟设置

Controller:手动场景设计、场景运行、IP Wizard应用、负载生成器、服务水平协议(SLA)、场景监控、服务器硬件监测工具

Analysis:HTTP报文结构、执行结果分析、图表分析、网页细分图、吞吐量相关、事务相关

性能测试调优:性能测试方案、Linux服 务器性能监控、JVM配置调优、tomcat配置调优、性能测试报告

数据库调优:慢查询、 线程池、索引命中率、行锁

性能测试指标:衡量性能好坏的包括响应时间,TPS,资源利用率

Jmeter在性能测试中的应用

3.性能测试项目实战

分析需求,搭建测试环境,编写测试计划和测试用例,录制和调试脚本,设置和运行场景,监控和收集数据,写分析报告,项目综合评审

上面就是我为大家整理出来的一份软件测试工程师发展方向知识架构体系图。希望大家能照着这个体系,完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,古人说的好“不积跬步,无以至千里。”等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。

写在最后

PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近500个G。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于C#实现树状数组

有一种数据结构是神奇的,神秘的,它展现了位运算与数组结合的神奇魅力,太牛逼的,它就是树状数组,这种数据结构不是神人是发现不了的。 一、概序 假如我现在有个需求,就是要频繁的求数组的前 n 项和&#x…

2018年全国硕士研究生入学统一考试管理类专业学位联考数学试题——解析版

文章目录 2018 年考研管理类联考数学真题一、问题求解(本大题共 5 小题,每小题 3 分,共 45 分)下列每题给出 5 个选项中,只有一个是符合要求的,请在答题卡上将所选择的字母涂黑。真题(2018-01&a…

JavaScript实现右键菜单

1、代码实现 window.onload function () {(function () {// 自定义右键菜单内容并插入到body最后一个节点前let dom <div id"rightMenuBars"><div class"rightMenu-group rightMenu-small"><div class"rightMenu-item"><…

C#开发的OpenRA游戏之属性RenderSprites(8)

C#开发的OpenRA游戏之属性RenderSprites(8) 本文开始学习RenderSprites属性,这个属性是跟渲染有关的,因此它就摄及颜色相关的内容,所以我们先来学习一下调色板,这是旧游戏的图片文件保存的格式,如果放在现代来看,不会再采用这种方法,毕竟现在存储空间变大,便宜了,并…

RubbleDB: CPU-Efficient Replication with NVMe-oF

RubbleDB: CPU-Efficient Replication with NVMe-oF 前言 这是ATC2023的文章&#xff0c;作者来自哥伦比亚大学这篇工作在LSM-tree多副本存储的场景下&#xff0c;利用NVMe-oF技术避免了LSM-tree副本上的重复合并&#xff0c;减少了CPU开销。 Introduction 为了提供高可用性…

练习九-利用状态机实现比较复杂的接口设计

练习九-利用状态机实现比较复杂的接口设计 1&#xff0c;任务目的&#xff1a;2&#xff0c;RTL代码3&#xff0c;RTL原理框图4&#xff0c;测试代码5&#xff0c;波形输出 1&#xff0c;任务目的&#xff1a; &#xff08;1&#xff09;学习运用状态机控制的逻辑开关&#xff…

vue history路径编码

记录今天遇到的一个问题&#xff1a; 问题现状 有一个需要前端伪造302进行重定向的需求&#xff0c;我们需要将这样的一个路径&#xff1a;http://xxx.com/system-name/#/index&#xff0c;拼接在跳转地址的后面&#xff0c;进行重定向。拼接的方式是这样的&#xff1a; htt…

暗物质探测器认知教学VR元宇宙平台打破传统束缚

“飞船正在上升&#xff0c;马上就冲出大气层了!”这是一位在1&#xff1a;1还原的神舟飞船返回舱内借助VR设备置身元宇宙世界&#xff0c;沉浸式体验升空全过程的游客兴奋地说道。不仅如此&#xff0c;在载人飞船训练期&#xff0c;元宇宙技术为航天员虚拟一个逼真的太空世界&…

口碑好的猫罐头有哪些?宠物店受欢迎的5款猫罐头推荐!

快到双十二啦&#xff01;铲屎官们是时候给家里猫主子囤猫罐头了。许多铲屎官看大促的各种品牌宣传&#xff0c;看到眼花缭乱&#xff0c;不知道选哪些猫罐头好&#xff0c;胡乱选又怕踩坑。 口碑好的猫罐头有哪些&#xff1f;作为一个经营宠物店7年的老板&#xff0c;活动期间…

Windows平台如何实现RTSP流二次编码并添加动态水印后推送RTMP或轻量级RTSP服务

技术背景 我们在对接RTSP播放器相关的技术诉求的时候&#xff0c;遇到这样的需求&#xff0c;客户做特种设备巡检的&#xff0c;需要把摄像头拍到的RTSP流拉下来&#xff0c;然后添加动态水印后&#xff0c;再生成新的RTSP URL&#xff0c;供平台调用。真个流程需要延迟尽可能…

LL(1)语法分析程序设计与实现

制作一个简单的C语言词法分析程序_用c语言编写词法分析程序-CSDN博客文章浏览阅读322次。C语言的程序中&#xff0c;有很单词多符号和保留字。一些单词符号还有对应的左线性文法。所以我们需要先做出一个单词字符表&#xff0c;给出对应的识别码&#xff0c;然后跟据对应的表格…

FlinkCDC实现主数据与各业务系统数据的一致性(瀚高、TIDB)

文章末尾附有flinkcdc对应瀚高数据库flink-cdc-connector代码下载地址 1、业务需求 目前项目有主数据系统和N个业务系统,为保障“一数一源”,各业务系统表涉及到主数据系统的字段都需用主数据系统表中的字段进行实时覆盖,这里以某个业务系统的一张表举例说明:业务系统表Ta…

社群乱象,社群玩法正解

社群乱象&#xff0c;社群玩法正解 越来越不喜欢混社群了&#xff0c;从原有的好几百社群&#xff0c;精简到剩两三个。就这两三个&#xff0c;也貌似奄奄一息&#xff0c;命不久矣的感觉。 现在的社群&#xff0c;妥妥的已经被各路妖魔鬼怪给玩坏了。童话觉得这里面还有不少…

vue3 iconify 图标几种使用 并加载本地 svg 图标

iconify iconify 与 iconify/vue 使用 下载 pnpm add iconify/vue -D使用 import { Icon } from "iconify/vue";<template><Icon icon"mdi-light:home" style"color: red; font-size: 43px" /><Icon icon"mdi:home-flo…

Spring Boot 邮件发送(五种类型的邮件)

邮件协议&#xff1a; SMTP、POP3、IMAP SMTP 协议全称为 Simple Mail Transfer Protocol&#xff0c;译作简单邮件传输协议&#xff0c;它定义了邮件客户端软件与 SMTP 服务器之间&#xff0c;以及 SMTP 服务器与 SMTP 服务器之间的通信规则。 用户先将邮件投递到腾讯的 SMT…

.nvmrc 文件使用详解

文章目录 1. 前言2. .nvmrc 是什么3. 创建 .nvmrc 文件4. 使用 .nvmrc 文件5. 终端自动切换版本 1. 前言 当开发多个项目时&#xff0c;每个项目运行环境要求的 node 版本不一样&#xff0c;那么我们就需要给每个项目指定 node 版本&#xff0c;也就是通过终端执行 nvm install…

虚拟摇杆OnJoystickMove未被调用,角色不移动

更改interaction type 为 event notification

Windows权限维持方法论

Windows权限维持方法论 1.注册表自启动2.组策略设置脚本启动3.计划任务4.服务自启动5.dll劫持6.直接上远程控制木马 1.注册表自启动 通过修改注册表自启动键值&#xff0c;添加一个木马程序路径&#xff0c;实现开机自启动 常用的注册表启动键&#xff1a; # Run键 HKEY_CU…

数据结构-栈的实现

1.栈的概念及结构 栈&#xff1a;一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶&#xff0c;另一端称为栈底。栈中的数据元素遵守后进先出LIFO&#xff08;Last In First Out&#xff09;的原则。 压栈&…