专栏文章 沉淀技术——21 年年终总结

陈恒捷 · 2022年02月07日 · 最后由 陈恒捷 回复于 2022年06月23日 · 9528 次阅读

去年回顾

领略新风景——20 年年 终总结 ,当时定下了几个小目标,回头看看达成情况。

工作

  • 完成了公司测试平台的建设及落地,帮助多个团队提升了工作效率,让自动化成为常态和流程中的卡点。
  • 借助这个项目在公司扩大了影响力,了解到更多团队工作中不爽的点,并推动大家一起参与逐个击破,让解决不爽点成为习惯。
  • 和研发团队有更深入的协作,更加体会到效率提升不只是测试团队单独做就行的,要成功离不开开发、项管乃至运维的一起协作。

简单小结:
第一个完成度比较高,第二第三完成度一般。详细的后面正文再说。

生活:

  • 小孩顺利出生,成为爸爸,后面要花不少精力围绕着孩子转。
  • 体重增加到了不再是 “偏瘦” 的水平,开始有 6 块腹肌和一点胸肌。
  • 逐步在广州发展起测试同行的一个圈子,定时聚餐和有问题相互交流,相互成长。

简单小结:
第一个目前八字还没一撇,还需要继续努力。第二个体重呈波浪线,始终没突破 60kg,目前在第二次冲刺中。第三个截止过年前聚餐了大概 3 次,算是基本达成吧。

虽然还是没逃掉计划赶不上变化的规律,但总的来说还是有一些不同的。

21 年总结开始

工作

各种机缘巧合,今年加入了新成立的质效改进团队,绝大部分时间都在做测试平台建设的工作,把自己还欠缺的前端技术版块也对应补全了一下。

xmind 用例管理

这个其实是去年在业务团队的时候就开始尝试了,当时是直接部署使用 AgileTC 项目使用,但由于精力有限 + 丢失用例时有发生,因此一直都没有花大精力来做。直到进入了新团队,终于有时间精力做了。

服务端还是继续基于 AgileTC 已有的服务端,节省了非常多的开发工作量。而前端则是通过 vuera 框架,把 AgileTC 基于 React 页面内嵌到基于 vue 的内部测试平台中,并用 vue 结合百度脑图组件,重写了用例编辑界面,去掉了自动同步并加上了历史记录,彻底解决用例丢失问题。后续也加上了 在测试任务中编辑用例 这个比较大的体验优化,自己实打实地掌握了更多关于 xmind 编辑器的内容。

目前基本上已经在各个团队里落地使用,自己平时写功能自测用例也会基于这个平台,各种快捷键也设定成了自己习惯的键位,用起来还是挺方便的。在此特别感谢滴滴团队的开源奉献。

云真机

本身荔枝在移动端有不少的工具沉淀,包括 UI 自动化、性能自动化、Monkey 测试、静态代码扫描等都有对应工具,并通过 jenkins job 运行。但这类工具有一大部分是需要基于真机运行的,而每个组自己维护自己的运行环境成本比较高,使用时才插上也很容易遇到因为设备差异导致运行不稳定的问题,甚至有出现过调试 1-2 个小时才能让已有的 job 跑起来的问题。所以经过小组讨论,最终确定需要在测试平台中建立一个集中的云真机模块来集中承接这部分工作。这个也是进入质改团队后的第一个比较大的项目。包括远程真机控制、monkey 测试专项、UI 自动化 + 性能自动采集专项三个大块,组内几个人一起协作完成。

其中云真机管理基于 atxserver2 进行,并结合内部实际使用做了一些小优化(ios 改用 tidevice 启动、远程控制自动设定帧率 30、控件树深度为 0、图像压缩比率增大降低贷款要求、管理员可控制使用中设备等)。过程中也和圣翔做了不少交流,这些优化也部分提交回开源版 atxserver2 ,为开源做出了一些贡献。

而随机测试专项,则是通过调度 atxserver 上的设备来完成。内部集成原生 monkey、fastbot 等多种不同的遍历方式,通过 web 平台界面封装,让大家用起来更为简单方便,免去了维护自己环境的成本,且可以使用自己想要的任意多个设备来跑。实际落地也比较受欢迎,内部几个业务团队都有在用,基本上发版前必跑。

而 UI 自动化 + 性能自动采集,同样也基于调度 atxserver 设备进行。内部使用原有的 UI 自动化 + 性能自动化工具,并重点优化了平台上的报告功能,包括日志、截图等都集成到平台的报告中,并提供类似 perfdog 这样的性能报告界面和对比功能。目前也有部分 UI 比较稳定的团队开始在用,但由于 UI 自动化的各种暗坑(不同设备控件树会有些差异、有些对网络有要求),总体上还在脚本持续调稳定中。

持续测试

在前面把工具都基本集成上测试平台后,下一步就是怎么让它们能更好地融合到研发流程中,自动且持续的跑,并发挥卡点作用了。也因此模仿流水线的理念,弄了一个持续测试,目前还在试点中,还有挺多需要优化的,暂时就先保密,后面有机会再分享。

公司内部创新营

除了日常工作,也突破了一下自己,报名参加了公司内部的创新营活动,学习一个新产品怎么从零到一,并作为其中一个组长带领一个包含产品、运营、技术相对全角色的小组,把一个创新的点子一步一步细化为一个具体的产品原型。这期间学习到了如何从底层去思考、设计一个产品,特别是关注最核心的价值点和整体的解决方案流转图,再到通过精益创业的各种手段做成本最低的最小化验证,再到规模化后各种数字化运营手段,进一步帮助自己不只是关注需求的 what 也关注需求的 why 。这里面也听到 CEO 亲自讲解荔枝怎么在 1.0 版本应用需要接近 1 年时间打磨后才推出的情况下,利用各种不需要太多开发的手段,逐步验证这个 UGC 的播客价值点的过程,以及团购鼻祖最开始搞个静态网页 + 邮件提交购买意愿的方式就可以跑起团购,验证用户端和商家端的需求规模和确定是否值得加大投入。实际上确实有非常多的东西,并不见得必须要把功能开发完上线才能验证,微信群、邮箱等多种交互方式,都可以让一个产品 idea 基本不需要开发,就可以在一个用户群体里跑起来,让用户感知价值点并通过使用行为反映认可度,验证价值后再开始投入技术资源进一步研发提高体验。

这期间也和产品、运营有了更多的交流,了解他们的视角,也惊觉一个小小的竞品数据爬虫在他们眼中已经是一个相当不错的成就。最终收获了一个我觉得对我十分受用的金句:不要自己给自己设限。

社区

上社区

今年除了部分时间关站外,基本保持了工作日每天上一下社区、回一下贴的习惯,累计也有几百个回帖了。顺势研究了一些偏门问题,部分回帖也收获了不少赞,感谢大家支持。

发贴方面只发了 2 次贴,分享 xmind 增量保存的技术设计和实现相关,虽然不多但内容还算比较详尽,希望能帮到大家。有时候回顾自己以前发过的帖子,不禁感慨好记性不如烂笔头,很多以前的实践细节自己脑子都忘得差不多了,还好文章写得细自己想重新实践也不那么费劲。后面还是得继续保持这个习惯。

MTSC

从上海站开始,感谢 @shixue33 @Daito 的加入,分工后终于不用经常奋斗到凌晨两三点了。也有幸在深圳站二度上台做主会场主持人,第二次比第一次从容很多,甚至有点放飞自我,多处脱稿导致控台老师都不知道啥时候切 ppt 好。。。

不知不觉已经陪伴 MTSC 九届了,从第一届还只是一个听众,到逐步深入做某个方面的 owner ,学习了很多,也更清晰了解到自己的不足。感谢社区有这个机会让自己突破舒适圈,不再只是个埋头苦干的小伙子,看到外面精彩的世界。

生活

家人

今年老丈人永远离开了,陪着老婆从刚开始身体不舒服入院,到确认肿瘤找各种专家看,再到 ICU、离世,不过几周。第一次近距离感受到面对疾病,我们如此无力,希望老人在天上能不再那么辛苦。

同时由于疫情,爷爷奶奶已经好久没怎么出门了,身体也因为少走动每况愈下,还好老爸老妈今年身体还不错,没什么大病。现在每隔一段时间就会回家陪陪他们,聊聊天,吃吃饭。珍惜眼前人,只求不留遗憾。

运动

年初各种原因换了个健身教练后,体重增长越来越不明显了,到了 58kg 后就没有再增长,后面还由于疫情必须在家办公,体重又降回去了。中间也有一段时间自己练习,但总练不到位,遂年底找了个不错的健身教练重新开练,年前练了 1 周,涨了 1 公斤,后面健身房开门了再去测测。

羽毛球打了十多年,终于还是落下了点小毛病,肩膀抬起来时会有些疼痛,去了医院也问了康复教练,说是力量不足加长期打球肩部负荷大,韧带有点发炎导致。后面打球也逐步养生,少打快节奏,多打控制。

个人思考

有些杂七杂八的想法,也顺势记录一下。因为写的时候断断续续,想到哪写到哪,各位看看就好。

年龄焦虑

今年正式迈入 30+ 的年纪,进一步迈进了中年大叔的行列。随着年龄增大,“中年焦虑” 也慢慢随之而来。从几年前开始就一直在管理和技术两边摇摆纠结,一方面之前管理总算迈过了心态转变关,逐步有自己的一些套路;另一方面又由于之前技术实践做得越来越少,加上去年面试刷题发现自己技术生疏了开始恶补。今年大半年的测试平台开发,总算是基本解决了技术焦虑症,但到底长期走的是管理还是技术,坦白说心里还是没底。

唯一确定的是,不管走哪个路线,都不能只是默默无闻做一个一线小兵,还是要扩大影响力,解决更多的问题,掌握更多问题方法的解决之道,打造自己的核心竞争力。再者,管理和技术并不一定是 or 关系,也可以是 and 关系,有时候内部平台落地推广的最后一公里所需要的管理能力或者说 “软能力”,并不见得比带团队弱。多花时间去突破舒适圈,做有挑战的事情,总会让自己有所提升。

持续>冲刺

工程效能经常说 “持续集成” 、“持续交付” 。这里面其中一个很核心的点,就是持续。

之前由于经常各种事情导致经常晚睡晚起,被老婆诟病良多,现在逐步养成 11 点左右睡,7 点半左右起的生物钟,并在早上起来后花 45 分钟左右进行学习。最近在学 google 的机器学习课程,已经顺利突破前两次学习的 “3 节课内放弃” 怪圈,学习到了第 5 节,并保持做笔记,算是开始有点入门。

也从这次突破开始,让我更深刻认识到持续>冲刺。前两次卡住更多是在 “冲刺” 中失败,由于各种网络原因或者其他事情插入,导致停止了学习。而现在形成了习惯,每天持续学习,虽然速度不快,但胜在已经成为习惯,容易坚持。持续积累,总归会有所收获。

未来方向

今天刚看完 debugtalk 的总结,里面提到 “以创业的心态进行思考和做事” ,非常认同。很多时候确实我们过于关注外界,关注 “行业” 的各种 “普遍规律”,而忽略了自己。和老婆有时候聊天,我们都觉得自己挺幸运的,家在广州,买房家里人有能力给予支持,也已经有房,相比很多人其实已经很幸福。所以有时候不用纠结太多,全力去追求自己所想就好。我喜欢技术,更喜欢通过技术帮助大家,产生价值。所以,继续专注于 “用技术解决问题”,把有限的资源集中到自己觉得最有价值的事情上,持续尝试持续验证,让自己解决问题的能力越来越强,越来越深厚。

新年展望

工作上,进一步把现在的各种测试平台能力在业务中推广开来,也通过到业务中去,更深入了解业务的痛点难点,用更合适的方案去解决问题。

生活上,努力造人,继续健身,珍惜家里人。每 2 周至少回家一趟,唠唠叨,做做家务。

最重要的是,继续保持自己身体健康,keep 住这个能坚持一年不生病的好体魄。

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

个人观点:
持续做管理吧,技术只作为辅助手段,中年危机都会有,测试想做纯技术太难了。。。
要不要试试从测试 OWNER 向项目 OWNER 转型呢?

对社区的付出真是有目共睹,respect!

magicyang 回复

嗯嗯,也在内部争取一些管理的机会,不过也要看机遇。项目 owner 也是我的目标,但这个对业务的熟悉度和把控度会有更高的要求,还需要加把劲。

rihkddd 回复

感谢大家支持

笑哼 回复

客气啦,和大牛比还差得远。

手动点赞👍

给你点赞👍 ,工作生活和 8 小时外的成长,你做的很棒了(就是努力增重那趴有点气人呢)

我们都想着减重,你却想着增重...
不过每次看大佬回帖都那么认真负责,手动点赞。

magicyang 回复

看过书上一句话关于做管理还是做技术的分析:做技术有余力,有心得,就可以去做管理,去进一步推行自己的心得;反过来,当管理有余力,就应该再去做技术。

12楼 已删除
陈恒捷 回复

其实没你想的那么难,从端到端做一次 0 到 1 的项目,基本的素质就具备了。
只是机会相对来说比较少罢了。

听君一席话,感觉还是挺收益的,我们今年也要做类似的工作,一方面是项目一站式管理平台,一方面是基于 atxserver2 实现自动化遍历和 UI 性能的自动化。所以请问一下你们这个有啥设计文档之类的资料可以参考的吗?😀

去年还在荔枝做 ToB,没感觉到测试自动化的作用,还是说质效部门只覆盖了 ToC 产品

厉害了,恒捷大佬一看就是羽毛球高手,走路都带着飘逸的灵动气息~😂

我理解,恒捷大佬是通过抱娃,练出了腹肌和胸肌,所以大家赶紧造娃啊,娃喂的越胖效果越显著啊😂

槽神 回复

大佬好像说八字还没一撇,还没生吧?

Roy 回复

还没怀上😂

TD 回复

完整方案可能不是很方便分享,大致思路是通过 atxserver 占用设备和连接设备,然后在对应的 jenkins job 里面通过指定设备的方式来执行 monkey 、ui 自动化这些。

slink 回复

目前还是以 ToC 为主,ToB 暂时还没涉及到。

我去催饭 回复

过誉了,没那么厉害。。。只是打的久熟练一点而已。

陈恒捷 回复

好的,谢谢~

恒捷大佬怎么会有年龄焦虑?现在大佬级别的应该都是公司的顶梁柱阿,

技术 | 管理 路线的摇摆?大佬之前在 PP 即做技术负责人又做管理,不是做的挺好吗?
比纯管理强多了

hwsimon 回复

有时候看得越多,越容易看到自己的不足,而且现在已经不在 pp 啦。

膜拜下大佬,好厉害啊。

向大佬学习

陈恒捷 回复

大佬,atx2 针对 android 10 以上设备无法显示图像的问题有解决吗

大雄 回复

Android11 获取不到屏幕流,原因是 stf 官方未维护 Android 28 以上版本的 minicap.so

解决:

  1. 手动下载对应版本的 minicap.so
    https://github.com/varundtsfi/Android12Support_withso/tree/main/aosp

  2. 推送到手机

    adb -s 设备id push 下载路径 /data/local/tmp/
    
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册