#说说成长#听Leader讲那成长的故事

2024-01-18 22:18
文章标签 故事 成长 leader

本文主要是介绍#说说成长#听Leader讲那成长的故事,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

从蹒跚地学会走路,到跨入大学校门,再到踏入社会去工作,不同的人生阶段,我们会经历各种不一样成长,形式虽然不同,但内容却同等精彩。

那么我们搜狗测试的同学们的成长历程又是怎么样的呢?#说说成长#系列主要分享我们搜狗测试同学们成长的心路历程,上次我们的一个小伙伴分享了入职一年的感悟,让我们看到了一个热情、有责任感、对搜狗充满真爱的好队友。而这次换我们的Leader出马,跟我们分享他在搜狗7年的成长和收获。下面有请我们搜狗浏览器测试组的Leader诸葛东明为大家讲述他的成长故事:

(*^__^*) (*^__^*)(*^__^*)(*^__^*)(*^__^*)(*^__^*)

微信公众号编辑部的小伙伴们找我约稿,希望我来讲讲作为一个工作7-8年的老人,在搜狗印象最深的一件事是什么,有什么感悟,对新人有哪些要说的。

我想讲两个故事给大家。

讲故事前先做一下自我介绍,我叫诸葛东明,31岁,搜狗浏览器测试组Leader2006年开始北漂生活,2008年加入搜狗,见证了搜狗浏览器的诞生,然后陪着它一起走到今天。

7年之间,我已经记不清上线了多少个版本、运行了多少遍测试用例、提交了多少个BUG、奋战了多少个通宵达旦,但是还是忘不了每次战友离开时那淡淡的忧伤。

曾经多次有人问我,为什么你还不跳槽?

因为一份坚持,从我的leader、从我的BOSS身上学到的那份坚持。也许它听起来有点冠冕堂皇,但请听我慢慢道来。

故事之一:

时间大概是在2009年。在浏览器各项指标中,项目组上下一直极为重视浏览器的稳定性指标,也就是需要测试浏览器的崩溃率。为了改善这一崩溃率,只是通过常规的手工测试手段是保证不了的,这需要使用自动化技术。

起先,我们使用了BHO技术来完成浏览器内核的自动化测试,自动化脚本可以使得浏览器自动地进行前进、后退、导航和刷新等操作。但是这一技术的缺陷是无法进行浏览器内核以外功能的自动化操作,所以随着新功能不断地增多,BHO技术已经无法满足。

之后,我们尝试使用业界比较成熟的QTP进行自动化测试,通过控件识别+键盘快捷键等方式,内核之外的功能也逐步纳入到稳定性测试之中。但是随着浏览器2.0版本的发布,内核变为Trident+Webkit双内核,QTP无法有效识别Webkit内核的控件。

此外,更多的困难也随着项目的行进不断地暴露出来:

1.QTP软件体积庞大,随着测试机由两台不断扩充到几十台,每次部署到新环境非常耗时间。

2.QTP自动化脚本日积月累,已经庞大到几十个组合动作,脚本维护成本巨大。

3.QTP所使用的VBScript脚本无法支持多线程等功能,这使得自动化脚本所能操作的对象比较有局限性。

4.我个人的测试工作已经忙得没日没夜,同时还要维护自动化脚本。

5.更为致命的一点,自动化脚本的作用受到质疑。每次浏览器上线前,自动化测试没有发现什么问题,但是上线后仍然有大量的崩溃问题,这些崩溃问题在测试环境没有被提前发现。

诸多的困难之下,我逐渐对自动化丧失信心,开始质疑这一方法的可行性。在我的学习经历中,所接受到的知识是自动化技术是用于解决重复性的、有预期结果的测试用例回归,我们只能让机器按照我们提前设定好的步骤去执行,然后对比实际结果是不是符合预期。而使用自动化技术进行随机性的操作去发现未知的问题,这行不通。

因为这个问题,我和我的老大鲁剑争论了多次,我坚持认为自动化发现不了未知的问题,过去一年多的实践就是最好证明。而鲁剑始终坚信自动化可以发现影响浏览器的稳定性问题,未来可以作为评估浏览器上线的标准。

我放弃了,但是鲁剑没有放弃。

他后来做了两件事:第一,让测试开发林飞使用python重写稳定性自动化脚本,以此来克服QTP的诸多问题。第二,让林飞每天查看浏览器的崩溃栈,根据栈信息分析可能的操作路径,然后将这些操作路径转化为自动化脚本。这项工作大概持续了一个月之久,林飞通过每天不断地动作补充,建立了三百个庞大的浏览器动作组合脚本。基于python面向对象的特性和更为高效的随机算法,稳定性脚本在效率、问题发现能力和脚本可维护性上都取得了进步。

通过这个脚本,我们多次在测试阶段就发现了潜在的崩溃问题,避免了问题的遗漏。这一通过随机算法自动化测试浏览器的方式,已经成为国内浏览器厂商必备的评估方法。

故事之二:

时间大概也是在2009年,距离搜狗浏览器第一个版本上线后的半年。有一天,公司突然发全员邮件,告知王小川已不再管理搜索团队,只负责桌面团队的管理工作。这意味着什么,小川管理的团队拦腰砍半,原因可能是老张Charles和小川意见不合,不支持研发搜狗浏览器。

一般人遇到这种情况,自己努力工作却不被上级老板支持,也许就此放弃收拾收拾就走人了,但是在我眼里的小川是这样的:

他不但没有消极应对,反倒在浏览器上加大了精力投入。他那时每天会花2小时对浏览器进行测试,经常会报一些路径复杂的BUG给我们。作为测试你会懂那份压力的,你的大BOSS掌管着一个上百人的公司,他不但每天要处理各个产品线的管理事务,而且每天都在测试你测试的产品,发现你发现不了的BUG!与小川共事多年的Better说,从未见过小川在浏览器上投入如此大的精力,他甚至已经不管那时的搜狗音乐盒项目了。

那时候我下班都很晚,基本上是晚上11点以后。工位上已经没有多少人,只剩下浏览器的开发和测试。小川也没走,他有时会走到我们的工位上转转聊聊,自邮件一事之后,我见他嘴角多了不少裂纹,那是着急上火的原因。

隐忍一年之后,搜狗浏览器2.0上线。上线当天还出现了一点小意外,小川在向Charles演示浏览器的时候出现了BUG,我们紧急赶到Charles的会议室来处理,我虽然难忘在大BOSS前处理BUG的窘境,但是更加难忘小川紧坐在Charlse旁,不断地讲解着浏览器的作用和价值,眼神中流露着那份渴求得到认可的期望。

最终浏览器被老板认可,小川重新执掌搜索部门,搜狗得到新生,分拆独立之后,从200人的搜狐研发部门,一路扩充为今天3000人的搜狗公司。

逆境之下,坚持不懈,不忘初衷。这就是我在搜狗最大的收获。

最后,我想分享一段摘文来结束今天所讲的故事,希望对各位小伙伴们有所启发。

“未来的某一天,他们会回顾这段共同度过的时光,对于那些痛苦的时刻,只是过眼云烟,或者付之一笑,他们会把这段时光看做人生中奇妙的巅峰时刻。”

--摘录自: []沃尔特·艾萨克森. “史蒂夫·乔布斯传

图为搜狗浏览器周年纪念徽章

听完了成长故事,有木有感觉画面感特强犹如身临其境呢,有木有特别感动,想问问我们的Leader更多的问题呢?请将您的问题回复给我们,我们会在之后的推文中选出具有代表性的问题一一作答哟~



原文链接

如需转载该篇文章,请注明来自“搜狗测试”


这篇关于#说说成长#听Leader讲那成长的故事的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/620428

相关文章

LabVIEW程序员是怎样成长为大佬

成为一名LabVIEW编程领域的“大佬”需要时间、实践、学习和解决复杂问题的经验。尽管LabVIEW作为一种图形化编程语言在初期可能相对容易上手,但要真正成为精通者,需要在多个层面上深入理解。以下是LabVIEW程序员如何逐步成长为“大佬”的路径: 1. 打好基础 LabVIEW的大佬们通常在初期会打下非常坚实的基础,理解LabVIEW编程的核心概念,包括: 数据流编程模型:Lab

AI产品经理成长蓝图:从入门到精通的学习路径指南

AI产品经理区别于普通产品经理的地方,不止在懂得AI算法,更重要的是具有AI思维。 人工智能产品设计要以操作极度简单为标准,但是前端的简单代表后端的复杂,系统越复杂,才能越智能。 同样,人工智能的发展依赖于产业生态的共同推进,上游芯片提供算力保障,中游人工智能厂商着力研发算法模型,下游应用领域提供落地场景。 一、人工智能产业链结构 人工智能产业链结构上可分为基础层(计算基础设施)、技术层(

科研小白成长记40——第三个五年计划

小gap期间,拼命玩和拼命休息的同时,仔细思考了下我期望的五年之后的样子,gap结束,算是目标愈发清晰起来。曾经,读博的目标是成为一名independent researcher,并且具备发至少一篇顶会的能力。而现在,希望五年后的自己,成为一名good independent researcher。当然,这里的good,根据现阶段的科研榜样,已经有了具体的metrics。 首先是随时在线的深度理解

接下来的这个故事就来自于我的先生,一个交警的口述

这可是没有过的事情。先生是个交通警察,在事故科工作已经五、六年了,对于生离死别、阴阳两隔,用他自己的话说是已经有些麻木了;不用说他,就连我,对那些卷宗里血淋淋的照片都已经有些漠然。他的办公室常有悲悲切切的人来哭诉,他却总能在复议时做到不掺杂感情。我是个爱哭的女人,偏偏先生对于眼泪早已有了职业的免疫力,他说要是每个事故他都要为每个逝者陪眼泪的话,他早就活不下去了,但是今天不同,他分明是掉过泪了。

【百日算法计划】:每日一题,见证成长(010)

题目 合并两个排序的链表 输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的 示例1: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 思路 引入一个带虚拟头结点和tail指针的结果链表,把原节点的值比较大小后加入到结果链表中。 public ListNode mergeTwoLists(ListNode l1, ListNo

JD 1204:农夫、羊、菜和狼的故事

OJ题目:click here~~ #define vegetable_go 0#define vegetable_come 1#define sheep_go 2#define sheep_come 3#define wolf_go 4#define wolf_come 5#define nothing_go 6#define nothing_come 7using

作为面试官的一点点感悟,谈谈技术人的成长之路

因为工作上的原因,做过几次面试官,面试的同学有应届生,也有工作3-5年的老技术人。最近也频繁作为面试官帮助筛选候选人,中间有很多值得深思的东西,我记录了下来分享给大家。 以下观点仅为个人观点,不代表任何公司的立场。        01 面试不是简单的你问我答 一般来讲,作为面试官和候选人进行沟通的第一个问题是一般是自我介绍,整个自我介绍的情况应该控制在2分钟左右,阐述自己的教育背景,项目经历

2020年数据术语的故事

点击上方蓝色字体,选择“设为星标” 回复”资源“获取更多资源 2020年整个技术圈子要说话题最多的,应该是大数据方向。新感念层出不穷,数据湖概念就是其中之一。这篇文章是关于数据仓库、数据湖、数据集市、数据中台等一些列的概念和发展进程。希望给大家带来一个全面的感知。 本文作者:Murkey学习之旅、开心自由天使 本文整理:大数据技术与架构,未经允许不得转载。 如今,随着诸如互联网以及物联网等

【大数据哔哔集20210124】有人问我Kafka Leader选举?我真没慌

一条消息只有被ISR中所有Follower都从Leader复制过去才会被认为已提交。这样就避免了部分数据被写进了Leader,还没来得及被任何Follower复制就宕机了,而造成数据丢失。而对于Producer而言,它可以选择是否等待消息commit,这可以通过request.required.acks来设置。这种机制确保了只要ISR中有一个或者以上的follower,一条被commit的消息就不

我写过的关于成长/面试/职场进阶的文章

点击上方蓝色字体,选择“设为星标” 回复”资源“获取更多资源 如果我说,程序员是这个时代最好的职业之一。估计有一堆人要来喷我。 但是,你静下心来想想。实际上这个职业才是当下最享受时代红利的职业。所以除了坚持学习,刻意练习,加强自身技能和护城河还需要在红利期迅速积累软实力。 在写技术文章的这近两年时间里,我一直坚信的一个理念是,技术能力的提升只有一个途径:无他,唯手熟尔。 而且极少数的人会一直从