全网独家:成长经历分享 & 我为什么要写书?
在当今高速发展的移动互联网+云优先的时代,到处充斥着不可预知的变化,有的来自于客户需求的变化,有的来自于市场环境的变化,面对着这些变化,给企业在市场、渠道、产品、服务各方面都带来了一系列新的挑战,每个成功的企业都在培养打造快速适应这种变化的能力。对于企业的产品研发部门来说,面对着愈发不确定的客户需求,快速并高质量地完成开发工作,使需求早日上线,尽早收集市场反馈,优化产品和服务,是研发响应市场变化的基本原则。但在追求产品快速交付上线的同时,质量底线是每一个成功的产品必须要坚守的红线,这也意味着研发团队在提升产品交付速度的基础下也要同时保证产品质量,而要求保证产品交付效率的同时又要持续保证产品质量,自动化测试引入是一种行之有效的保障实现手段。
在三月中旬,笔者的新书上市了,关于新书的介绍,可查阅:重磅消息 |《自动化测试实战宝典:从小工到专家》隆重上市! 本书主要以自动化测试技术为主线,基于Robot Framework框架来展开介绍如何在实际工作中开展自动化测试工作。当前移动互联网行业的测试工程师有非常多的测试工具、框架和技术可以选择,但不得不说即便是在这工具泛滥的环境下,Robot Framework框架仍然是其中的佼佼者,它是一个值得推荐给大家深入使用的优秀开源测试框架,既保证了在初级入门时,快速帮助团队完成自动化测试任务,又能在深入研究时,学习到优秀开源框架的设计理念,提升自身技术能力。
准备写这本书之前,其实内心还是挺纠结矛盾的,毕竟最近两三年一直都是从事研发管理的工作,对技术的钻究上已经无法全身心投入了。如果是已购书的读者,从作者介绍中,读者能获取到一些我的个人从业经历。回顾过往的几家工作经历:刚毕业的第一份工作在一家台资企业,呆了不到一年左右,这份工作给我最大的收获是:认识到职场和学校的环境差异,职场更讲究自己要对自己负责,自己不努力谁都帮不了你,以结果为导向。(这句话也送给那些即将毕业或刚毕业不久的读者,也适用那些在职场工作几年但仍在迷茫的人)
第二家公司,由于工作本身比较积极主动、肯担当,加上自己平时喜欢捣鼓一些新技术,在入职不到半年就晋升为部门主管(划重点:笔者毕业不到一年半,就已经晋升为测试经理)。这份工作开始阶段,移动互联网的浪潮还未真正开始,至少这个期间还没有明显感知到行业变化的冲击,当时市面上比较主流的测试工具还是以QTP、LoadRunner这些为主,当时如果能很好的结合QTP完成产品的自动化测试,就已经相当厉害了(从现在的技术视角来看,之前的那些工具还是弱爆了)。由于第二家公司做的是偏传统行业的产品(属物联网类的产品),产品类型覆盖了Web端、PC端、硬件嵌入式类的产品,在带团队之余,自己也会主动去学习接触一些新的技术,这个状态持续了三年。这份工作的末期刚好处于移动互联网快速发展的阶段、期间行业涌现出了很多优秀的后起之秀工具,比如Selenium、Appium、Jmeter等。但由于公司产品形态的原因,这些工具技术并不合适当前的产品,带着英雄无用武之地,要与时代接轨拥抱移动互联网时代的心态,即便在当时研发老总抛出高薪的诱惑,仍然毅然决定选择离开了这家公司。
在第三家公司(酷狗音乐),由于对技术的热衷和追求,从管理岗转型测试开发岗(纯技术岗),在这家公司工作期间,可以说是我技术成长最快、最大的,在所负责的事业部门,先后主导过后端接口自动化、App UI自动化等项目,并参与持续集成系统、测试平台等系统的开发建设。也正是在这份工作期间,接触了Robot Framework框架,说来也挺有意思的,在引入接口自动化测试之前,当时事业部现状是各个产品线测试工具太过于杂乱,有Postman、Jmeter、Unittest等用的五花八门,为了便于整个事业部各产品线接口测试的统一管理和资源复用,研发BOSS下定决心要坚决把接口自动化测试做起来,在我们处于技术选型期间,还是研发BOSS将Robot Framework框架推荐给了我们。刚开始接手Robot Framework框架,其实我内心是抵触的,因为当时的我认为通过直接编码或采用类似Pytest、Unittest这类框架来组织测试用例,效率上会更快捷。但是当我真正深入使用了Robot Framework框架之后,它的一些优秀特性深深的吸引了我,也是得益于它在酷狗音乐工作期间落地了很多优秀的测试实践,包括后续的App UI自动化。通过它带来的一些成功实践,打开了我看待问题、解决问题的角度和深度,期间我也做过很多其它的一些测试技术实践,并且申请通过了9个国家技术专利(当时在酷狗音乐,申请通过的专利奖金还是不菲的)。
在第四家公司,做的是研发效率提升,加入这家公司其实是一个很偶然的机会,当时无意间恒捷(TesterHome社区管理员)联系上了我,交谈了一两次之后,觉得大家的想法理念一拍即合,所以很快就同意加入(对于职场,能有一个志同道合,理念想法相当的人并肩作战很重要)。其实大家当时的想法很简单,就是想一起通过技术的手段,提升研发的效率和质量,起码是真心想要做成一些事情。由于某些原因,呆了一年多就离开了这个团队,对于我来说"抛弃"恒捷还是有些愧疚的,虽然进来之后,建设起来了测试平台、CI的一些能力,但终究觉得离我们当初的雄心壮志还远远不够。
最近的一家公司,算是又一次从技术转向管理,而促使我写这本书的初衷,也是最近一两年,感受到越加明显的一个行业不良现状:“测试人员能力的两极分化太过于严重”。一类是行业小白,这里说的小白,并不一定指的就是刚毕业或刚跨入这个行业的同学,更多指的是测试思维和测试技术一直处于小白状态。即便是有些工作了很多年的同学,仍然有很多一直处于手工测试点点点的工作状态中、他们不主动或者不愿意去理解业务架构、技术架构,甚至根本没有想过通过提升来改变这种工作状态。在几家公司中,我也面试过很多人,这类不求变或者说不求突破的纯手工功能测试的群体并不在少数。说这些话,虽然可能会刺痛一些读者,但我还是希望通过把问题真正抛出来,让大家去正视直面自己的不足,只有敢于正视不足,才有可能克服解决这些不足,也只有这样才能变成更好的自己。除了一类是行业小白,另外一类则是行业大师,这类群体的占比是极为稀缺的,也是软件行业最为抢手的一类人。这类人无论从知识的广度还是深度,都可以媲美开发架构师的能力,甚至有些还会超过开发架构师的水平,因为测试作为一个“高危职业”,它需要比产品经理(或SA需求分析)想得更全面,要比开发更懂需求,要能读懂甚至能修改开发的代码。这个观点和《Google测试之道》一书中提到的一条理念很相似,在Google他们对测试工程师的定位是这样认为的“如果一个测试人员业务能力不比产品强,编码开发能力没有RD牛,你怎么能发现他们的问题呢?这也足已说明产品的测试质量工作,绝对不是随随便便就能做好或者谁都可以胜任的。
前面介绍了作者的从业经历和工作过程的一些感悟,希望对正在读文的你,有一些启发和帮助。
本书的写作目的并不是为了简单地告诉读者如何使用一个自动化测试工具,这并非我的初衷,我希望读者在学习本书的内容后能提高综合的技术高度与宽度,从而摆脱简单的手工测试,向成为一名新时代的优秀测试工程师道路迈进。如今移动互联网的技术和知识迭代都是非常快的,技术栈也涉及比较广,建议读者在学习本书的内容同时要自己学会Google相关技术的官方文档,构建一个属于自己的知识体系,从而有一个系统全面的理解,千万不要指望在书中找到所有的答案,这个在移动互联网时代是不现实的。
正所谓:“授人以鱼,不如授人以渔”。互联网行业的工程师就好比运动员,要想在竞技场上获胜,需要在训练场里长期刻苦地练习技巧,想要成为一个不被时代抛弃的技术人,就需要不断的更新迭代自己的知识体系,加油读者们,共勉!
全网独家:成长经历分享 & 我为什么要写书?的更多相关文章
- 阿里Java架构师分享自己的成长经历,教你如何快速成长为架构师
架构师是公司的“金领”,很少需要考虑生存的问题,从而有更多的精力思考关键技术,形成“强者愈强”的良性循环.当然,冰冻三尺非一日之寒,成为一名合格的架构师是一个漫长的积累过程.对于大部分的软件开发人员来 ...
- UltraEdit等软件详细安装破解教程,附注册机(全网独家可用)
--- title: "UltraEdit等软件详细安装破解教程,附注册机(全网独家可用)" categories: soft tags: soft author: LIUREN ...
- Sublime Text 3.2.1详细安装破解教程,附最新激活码license(全网独家可用有效)
title: "Sublime Text 3.2.1详细安装破解教程,附最新激活码license(全网独家可用有效)" categories: soft tags: soft au ...
- xmind 8 update8(pro)最新版专业版破解教程(附破解补丁以及注册机,全网独家可用)
title: "xmind 8 update8(pro)最新版专业版破解教程(附破解补丁以及注册机,全网独家可用)" categories: soft tags: soft aut ...
- Navicat 12.x for MySQL最新版安装破解教程(附安装包和注册机,全网独家可用
title: "Navicat 12.x for MySQL最新版安装破解教程(附安装包和注册机,全网独家可用" categories: soft tags: soft autho ...
- Xmanager PowerSuite 6企业版详细安装破解教程,解决评估过期问题(附注册机,全网独家可用),非学校/家庭免费版
title: "Xmanager PowerSuite 6企业版详细安装破解教程,解决评估过期问题(附注册机,全网独家可用),非学校/家庭免费版" categories: soft ...
- python怎么自学?今日头条技术大佬的真实经历分享
大家好,我是武州,27岁,目前在字节跳动担任Python后端工程师一职. (摆拍一下,假装是保安) 在开始今天的文章之前,不知道你们有没有遇到过这样的问题: 大学没学到什么实质技术,毕业后找不到高薪的 ...
- 2018届研究生招生预推免(THU,HIT)经历分享——guochengtao
注:本文为作者原创文章,且为无偿分享,读者可以阅读,但请尊重劳动成果,勿作为商业用途!如对文章中的内容有意见或者出现了您不喜欢的言论,请您保留,谢谢合作! 又到一年12月,这代表着2017年已经接近尾 ...
- 一点不懂到小白的linux系统运维经历分享
进入运维行业刚不到二个年头, 刚刚从大白变成小白.都说it行业是青春的饭.但是运维行业可不这么认为.运维工程师便是经验技术的积累,经历的过的沟沟坑坑都会融入你的血液,成为你的智慧. 二年前接触linu ...
随机推荐
- Django中的session的使用
一.Session 的概念 cookie 是在浏览器端保存键值对数据,而 session 是在服务器端保存键值对数据 session 的使用依赖 cookie:在使用 Session 后,会在 Coo ...
- 看逐浪CMS技术小哥做SVG动画(附使用Bodymovin和Lottie将Adobe After Effects(AE)程式转为 HTML5/Android/iOS原生的动画全过程-即AE转svg\canvas\html5动画)
名词解解释 adobe After Effects AE:adobe After Effects,adobe公司的专业视频制作软件. Bodymovin插件预览 Bodymovin:是一个AE的插 ...
- windows7免费永久激活方法分享
前言 我相信,这里肯定有看过我上一篇博客的同学. 我说了,为解决windows7激活问题,我会找一个比较好的方法. 首先先让大家看一看激活前windows7的计算机属性: 显示是未激活的.下面就是方法 ...
- python学习-练习题4巩固
一个数加100后是一个整数的平方,加268后也是一个数的平方,求这个数 分析:这个数加100之后开方是整数,说明int(math.sqrt(a+100))转为整数应该没有小数部分 so:b*b = i ...
- scrapy中间件中使用selenium切换ip
scrapy抓取一些需要js加载页面时一般要么是通过接口直接获取数据,要么是js加载,但是我通过selenium也可以获取动态页面 但是有个问题,容易给反爬,因为在scrapy中间件mid中使用sel ...
- Set-Get(?占位符)-Java(新手)
创建实体类: package JdbcDome; public class EmpL { private int uid; private String uNAME; private int age; ...
- Jasper报表 自动序列号
添加表达式:$V{REPORT_COUNT}.toString()
- 10个python爬虫入门实例
昨天和伙伴萌一块学习,写了几个简单的入门实例 涉及主要知识点: web是如何交互的 requests库的get.post函数的应用 response对象的相关函数,属性 python文件的打开,保存 ...
- sleep()和wait()方法的区别
1,sleep()声明在Thread类中,而且是静态方法: wait()声明在Object类中,而且必须由锁对象调用. 2,sleep()时间达到后恢复: wait()可以设置事件自动恢复,如果没有设 ...
- 深入Redis客户端(redis客户端属性、redis缓冲区、关闭redis客户端)
深入Redis客户端(redis客户端属性.redis缓冲区.关闭redis客户端) Redis 数据库采用 I/O 多路复用技术实现文件事件处理器,服务器采用单线程单进程的方式来处理多个客户端发送过 ...