灌水 MTSC 2015 (711 大会) 后感及工作两年总结

陈恒捷 · 2015年07月14日 · 最后由 Karen 回复于 2017年08月29日 · 2713 次阅读
本帖已被设为精华帖!

周六参加完 MTSC 回来,收获颇丰,结识到了不少人,也了解了不少事情。恰好这也是我工作满两年的时候,一直还没总结自己两年的收获,所以一起总结一下。

MTSC 篇

首先,这次 MTSC 确实收获不少。见到了 Appium 的主创 Jonathan 和 Dan 。作为主创,而且是在国外,看到的东西确实和我们有不一样的地方。在我们才刚看到 XCUITest 的时候,他们已经开始尝试把它接入到 appium 当中了!同时也被 Jonathan 的多彩多艺折服了,谁说程序员不文艺!

同时 Dan 的分享也收获不少。他的介绍让我们看到了 Appium 有趣的一面,例如用 AppleScript 控制 appium,用 appium 控制机器手(这么叫应该可以吧)来进行 UI 自动化测试。同时他分享的为何 Appium 能成功也让我们见识到了一个活跃的社区能有多大的能量(顺便也在这里祝愿 Testerhome 越来越活跃)。

从两位老外的态度可以看到,编程其实并不苦逼。我们可以从编程找到很多乐趣(如 Dan 的机器手和 AppleScript),也可以在编程之外找到很多乐趣(如 Jonathan 的音乐造诣,Dan 通过 appium 收获到这么多好友)。工作和生活是可以共存的,而且可以都是快乐的。也许也是因为这样,appium 才能发展这么长的时间,并最终脱颖而出。

下午的国内场虽然相对时间比较紧,但也有一定收获。

React Native 由于是在太困没有全部听到,但了解到了天猫团队对于 React Native 的深度使用以及他们对它做出的较为深度的改造,感受到开源工具不仅仅是免费工具,更是可以在工作中不断改进,并且和社区共同发展的好工具。

芈峮对豌豆荚的实验室环境开发说明也让我有一定收获,虽然工作中暂时没有接触到这样的实验室建设问题,但从其中了解到了两点:

  • 官方工具不一定都符合要求,不符合可以自己改进或者参照其他工具进行改进;
  • 在做事情的时候必须搞清楚自己想做什么。工具够用就好,不要为了一个小功能引入过多的东西,例如不要为了做的是 UI 的事情就引入整套 UI 框架。

oneapm 的分享其实还是有一定干货的,但可能由于演讲妹子的演讲技巧问题,有一些广告的味道,而且说得确实不大具体(有些内容不方便透露?)。但必须承认的是,性能这方面确实是不少测试里面的痛点,获取数据不方便、分析麻烦等确实是大问题。 oneapm 在这方面确实是积累了不少,并最终形成了很好的解决方案。

达峰在论坛里有看过他的一些帖子。一开始以为他只是一个前端开发来学习一下怎么做测试,但听完他的 topic 才知道原来他的一体化测试已经做到了相当完整的程度。 master/slave 架构和前面豌豆荚的有点类似,但在易用性方面着力更多。而且由于整体架构上和我目前所在项目有点类似(都是分布式测试,都具有 master/slave 结构,只是我们还做到设备管理这种级别的功能),所以收获可以说是最丰富的。后面 offline 也要继续交流一下。

吴博士的分享初看没有多少技术含量(相信做过接口测试的都有做过类似的东西吧),但通过他,不对,是他们的演示,可以看出这其实是一个痛点。mock 这个东西很多地方都用得上,所以怎么让它更易用、更通用其实还是有比较大的意义的。而且如果想要做到比较全面的路径覆盖,这更是必不可少的(微信的例子就能很明显看出了)。他们做的东西可能没有太大的技术含量,但他们做到了平台化、易用,这让 mock 能更容易被相对技术不那么强大的普通测试人员使用,进而提高测试覆盖度。而且对于开发来说,这个 mock 也让他们在做 Demo 的时候更加得心应手,不用分散精力。这也让我想起了之前在《Google 测试之道》里面提到的 Google protocol buffers ,当时没有细看,后面要看下它现在发展如何了,说不定能替代一部分接口文档或者自动生成部分接口测试代码。

黄勇的分享相对前面的所有 topic 而言对具体代码的关注更少,而更关注要怎么做才能做好移动测试,有哪些点需要注意。对于普通手工测试人员或者测试经理而言,这可能会是更加有用的东西,毕竟通用性、实践性更强。而且也更接近完整的 app 测试。

简单总结一下就是:

  • 开源工具不是万能的,在实际工作中使用会需要根据项目做出改进。这些改进也可以视乎情况同时 PR 到官方中,达到良性循环。
  • 工具够用就好,没必要为了一个小功能而引入一个大工具。
  • 不要钻技术的牛角尖。也许你做出了一个很牛逼的工具,但由于不符合实际工作需要可能最终只能是一个美丽的梦。同样不要轻视技术含量相对低的工具。能让不懂技术的人也能快速学会如何使用的工具肯定不会是失败的工具。
  • 无论是工作还是生活,都要从中找到乐趣。人生在世难道不也为了享受人生吗?

MTSC 番外篇

  1. 中午排队等候就餐的过程中认识了一个 96 后,是的,96 后,高中刚毕业。我们当年还在想办法享受高考后的快乐暑假的时候,他已经来参加这种行业会议了。这让我想起之前参加广州 D-day 时的分享 AvantX 的 PeachApp CTO 段岩(Rocky Duan),同样年纪轻轻(没记错也是 19 岁左右,不过这个真心不大记得了)就有不少成就(做初创公司的 CTO ,做出 AvantX 这个框架),真心感觉自己作为 90 后弱爆了。。。衷心祝愿他们能够最终获得成功!

  2. 引用一下小兔的话:终于见到活着的 恒捷 了。我也终于见到活着的 Monkey、恒温、思寒、小兔、芝芝、国文、明伟、doctorq 等一众 testerhome 的同学了。虽然我的个人形象全毁了(特别是身材。。。),但还是挺值得的!这次由于时间太短没有和大伙一起深入交流,但至少是 O2O 了,也算是一种突破了。

个人篇

回归自己,不知不觉工作满两年了。这两年内虽然自己还是有业余搞一下技术的东西(毕竟还是相当喜欢技术的),但进度相当缓慢(如学习 python 学了接近一年才会写个定时报告 MBA 是否有货的脚本,而且最终抢到 MBA 还不是靠这个脚本。。。),而且用得不深入,所以经常踩坑。

工作中第一年只是做手工测试,从一开始的 iPad ,到 iPhone ,到 Android,再到 Web ,把我所在项目的大部分平台都测了个遍。说实话,那段时间我其实有点怀疑自己是不是不适合测试了。因为测多了之后总是想:有些地方是不是可以不用再测了?这样子的测试结果算是通过还是不通过?这个用例跑这么多遍好累啊,或者这次就跳过它(然后最后敌不过心里的天使,还是跑了一次。。。)?而且执行用例的速度和别人比慢了不止一点点(别人一周 100 多,我一周也就 60 多)。后来和一个从华为外包那边跳过来的一个经验比较丰富的测试交流了一下,发现原来现在的工作流程有这么多的问题,现在的测试用例有那么多的不准确的地方(测多了之后基本看了用例标题就知道怎么执行了,也就没有再去关注用例的具体内容了),原来我做得好烂。。。

同届进来的同事在工作一年后从 5 个走剩 2 个,其中测试的从 3 个走剩我一个,我开始想:我是不是也应该走了?去别的公司见识一下他们怎么搞的?但和其中一个同届的测试(已跳槽)交流后发现,其实其他公司在这方面也没有多大的不同,薪酬差不多,但工作时间更长、压力更大,而且工作内容也都差不多。

我开始迷茫了。恰好有个机会出国旅游,就去英国旅游了 2 周。这两周过得很快乐,也过得很快。不知不觉,我就回来了。

正当我准备继续过着之前的生活时,项目成立了一个自动化测试的子项目,测试 leader 找到了我(我和测试的 leader 比较熟,他问我有没有兴趣,我就加入了),我也从此进入了自动化测试的世界。

一开始很不适应。一方面是刚旅游完回来还没收回心,另一方面一开始做的是接口测试,而且是串口传输的接口测试,用的数据传输协议是项目自己的自定义协议。每天看着 16 进制的数字,一个一个地对比看有没有问题(那时候没接触到单元测试这个东西。。。),而且由于合作的同事感觉比较难相处,感觉还是手工测试幸福。。。持续了接近两个月后,项目第一期的内容终于搞定了,终于不用再看苦逼的 16 进制了。这个时候由于一些人员变动,我成为了项目的主力之一。由于项目需要,我开始去调研 web 和 mobile 的测试框架。由于前面第一年的业余学习,我知道了 appium 的存在(当然也知道 testerhome ,但当时注册后就没再怎么看了),也大致了解 selenium (停留在用 Firefox 的 selenium IDE 录制脚本的最初级阶段,但至少知道这个东西了)。然后在项目 Leader 的推荐下又去研究了一下 robotframework 的相关 library ,最终把框架的 web 和 mobile 部分基本搞定了。

接着由于项目需要,参考 robotframework 的 library 架构,人生中第一次设计了一个小小模块的架构,并和另一个开发合作完成了这个模块(首次协作过程中各种痛苦。。。)。后面相对就顺畅多了,和 Leader 讨论架构设计、制作各种 Demo 、完成分布式测试的实现...也许是之前积累的东西爆发了,后面这半年学习到了很多,而且学习速度相比之前也加快了好多。

然后终于框架搞定了,要开始真正实施到项目中了,然后就是各种协 (che) 作 (pi)、框架改进、环境配置、持续集成。。。一直做到现在。。。还在写 case 中和还技术债中。。。

同时也在第二年的 3 月跟随 doctorq 发起的开源项目正式开始关注 testerhome ,写了第一个帖子,并作为一个小组长完成了一部分文档的翻译工作。后面随着对 testerhome 了解的深入,决定加入官方 qq 群(在此之前我没啥上 QQ 的习惯,1 个月不上一次 QQ 也是很正常的事),然后就一直在 testerhome 的陪伴下走到现在。认识了不少人(其中一些还给我提供了一些工作机会),也认识了一些大神。

总的来说,这两年有 2 个节点对我影响最大:

  • 进入自动化测试项目。真正开始深入了解自动化测试
  • 加入 testerhome。不再局限于自己的一亩三分地。

但其实我的经历也告诉我:没有任何事情是白干的。没有第一年由于兴趣了解过 appium,python 和 testerhome ,也许第二年我还是一个普通的手工测试,业余随便玩下技术相关的东西。没有前面第一年由于手工测试而对业务比较熟悉,也许我也只会钻研技术,而不会参与到架构设计的讨论中。我也想起了乔布斯在某个毕业典礼上说过的话:

“你们现在同样不可能从现在这个点上连出通向未来的那一条线。只有当你回头看时,才会发现这些过去的点其实已经画出了那条线。所以,要相信每一个点迟早都会连接到一起。”

未来篇

进入第三年。工作方面暂时还是关注前面所做框架的具体落地(之前去微信面试时面试官就有提到对我们具体落地比较感兴趣,只是当时我们还没完全落地)。无论成功还是失败,至少是经历了完整的自动化测试项目,收获到了不少经验。

业余方面,一方面继续在 testerhome 发挥余热,分享自己的经验,参与 testerhome 的各种活动;另一方面去学习、了解一些新的技术并尝试落地(目前主要关注 docker)。

Monkey 说过,在某个领域持续学习,第一年你可能是初学者,第二年就应该是 master 。我也同样要持续学习,往 master,甚至 doctor 之路前进!

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 32 条回复 时间 点赞

同样作为 90 后,感觉更加惭愧...共勉,加油!

记得我和你说的专注。

我想我也应该写一篇 2 年的总结文章了。

#2 楼 @lihuazhang 嗯,专注确实是我现在所欠缺的。

我表示很崇拜楼主。努力 ing 😄

没去 MSTC 最可惜的是没见到恒洁姐姐!

Appium 的机械手,目前市场上早就有了吧。日本机械手应该算不错的,国内的,我记得宁波普天有个山寨版本的机械手测试 工具,还有 ocr 中文识别技术,不过 appium 的创始人确实很牛逼,虽然没有去,但是还是默默的赞!还有,楼主,我也很崇拜你的。

Appium 的机械手 看了发笑

好长,看完了,专注、多学习、多实践、多总结......受教了

现在只是个实习生,做手工测试一个月,说实话真的很迷茫,你的经验分享点醒了我,测试的路还是边走边学习。

赞,加油加油

基本你的笔记已经写了我想要表达的东西了,不过后续我还是要补一下我自己的感想。
专注,确实很重要。希望以后交流,共同成长。

#7 楼 @anikikun 没见到大东哥哥也好可惜。。。
下次广州沙龙有兴趣来当讲师不?

#8 楼 @cpfeng0124 谢谢支持!机械手这个我还真没怎么了解过。。。Dan 那个看起来像是 3d 打印机改造的。

#14 楼 @woniu 自己的感想还是很重要的。有些东西部及早动笔后面就找不回来了。以后多交流,共同成长!

#11 楼 @philina 勤思考,做总结。只要能坚持下去,什么行业都很有前途。而且无论是什么行业,不断学习都是很重要的。

我一直以为你是男生……原来的头像用的男朋友的?

受教,个人觉得还是要参与到实际项目中成长的更快,共进步!

#15 楼 @chenhengjie123 哈哈。回头回广州了有空肯定来一发~

#19 楼 @laiyuncong8404 我是男生啊。。。那是他们起的绰号。。。
#21 楼 @anikikun 你看,搞出误会了。。。

#22 楼 @chenhengjie123 姐姐不要说笑了。。。姐姐其实喜欢班男生。。。。

#23 楼 @monkey 擦。。。Monkey 阿姨别捣乱!

第一次参加行业大会,接触到很多新知识,有很多的想法却无法用语言表述,这篇文章写得很详细,全面,谢谢分享。
同为 90 后,表示惭愧...

强!赞!

写得很赞!!! 很有共鸣,同样喜欢 “你们现在同样不可能从现在这个点上连出通向未来的那一条线。只有当你回头看时,才会发现这些过去的点其实已经画出了那条线。所以,要相信每一个点迟早都会连接到一起”

很赞!期待下次大家坐下来好好聊聊吃顿饭

谢谢分享。我刚刚正处于迷茫期,你的经历给我了继续坚持在这条路的信心。工作了一年,一直是手工测试,想让自己的职业生涯有些转机,学了下 python,appium,selenium,但不深入。感觉没有自动化测试项目去实践,学起来很没有落地感。想找个自动化测试的工作,又太缺乏经验。不知道该如何真正迈入自动化测试的领域

wangxiaojie 回复

哈哈,能帮到你就好~

建议从小事做起,比如自己把一些执行频率最高的用例做成 UI 自动化,或者对一些最核心的接口做成接口自动化。渐渐有成效后,老大会注意到,你得到做自动化项目的机会也会越来越大。

自动化测试项目可遇不可求,但任何一个测试项目其实都有可以自动化的部分的,没必要等到很正式的自动化项目才开始。

陈恒捷 回复

嗯,好的,谢谢~

谢谢分享,非常赞同也很喜欢乔布斯那句话:“你们现在同样不可能从现在这个点上连出通向未来的那一条线。只有当你回头看时,才会发现这些过去的点其实已经画出了那条线。所以,要相信每一个点迟早都会连接到一起。” 从 0 到 1 的过程必定是辛苦的,但是也是值得的。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册