我们的"火星日"
因忙于部门内部火星日比赛的活动,上周技术文章推送比平时晚了几天,在此表示歉意。
什么是火星日
火星日是酷家乐质量效能部半年举办一次的技术专题竞赛活动(然鹅并不是纪念我们来自火星)~
竞赛主题由整个部门同学提前2-3个月投票选出,所有同学都均可报名参加,报名的同学只需要提交PPT等相关资料,最后决出前三名比赛获奖者。(为了尽快进入精彩环节,特意将火星日比赛规则挪到文章末尾)
2020H1火星日
2020年上半年火星日主题经过投票后定为"前端测试",可以是前端测试领域内任何相关内容。
本次有7位同学报名,数量比上一届少了将近一半,但内容更加丰富、呈多元化,涵盖了国际化业务、前端性能、前端埋点、前端自动化、前端框架等领域。
主题背景
说到前端测试,大家可能认为这有什么难度?流程点点点,用个自动化UI框架代替手工测试不就完事了吗?难点顶多是元素变更带来的手工维护成本。我想说的是,咱们酷家乐前端的还真不一样!
酷家乐产品主打大家居室内智能设计,前端测试的难度主要集中在工具线。
前端主要作为一块画布,设计师在上面进行新建更改户型、铺设地板瓷砖、任意拖动橱衣柜模型、更改材质尺寸、自动生成家具(生成移门、台面等)、智能设计摆放饰品等等不胜枚举的专业设计操作。
天马行空的创意设计、不胜枚举的交互功能,专业的大场景大方案,由此给测试在回归测试和前端交互性能方面都带来了很大的挑战,并且似乎业界也没有太多可以参考和借鉴的案例。如果您有任何好的想法,欢迎随时交流~
精彩作品
前端自动化
Selenium等业界开源工具根本直接无法满足酷家乐前端自动化的需求。最终,在公司最高级别产研协委员会立项,成立前端自动化框架项目组,就是为了攻克前端自动化测试难题。
为了提高产品的可测性,测试和开发同学配合设计封装了一系列前端操作API,由此搭建了酷家乐前端测试框架pybell。
动图仅供参考
前端性能
前端性能作为新版设计工具需要解决的头号挑战,我们在这个领域进行了多方面的尝试,包括性能基线和性能场景看板。
前端监控
前端监控分级策略为发现性能问题带来清晰的问题排查思路,也为灰度发布计划带来了科学合理的依据。
前端自动化框架
最后压轴展示的是,酷家乐自主研发的前端自动化框架pybell。经过不断地优化,代码量压缩了85%,还提高了稳定性。评委风少对此的评价是,这体现了框架作者对技术的极致追求~
火星日规则
比赛形式
比赛总共两轮,分为初赛和决赛。
1. 初赛环节会将PPT等资料放入confluence空间,由部门同学在评论区发表评论、打call等方式进行投票,最终决出5~6名名左右同学进入决赛。投票时间为期一周。
2. 决赛环节采用现场PK的方式,由观众和评委进行投票,并进行赛后点评。
投票规则
1. 本次比赛采用现场观众投票+评委投票的机制,其中现场观众投票占70%,评委占30% ;
2. 现场观众从'比赛内容'、'现场表达'、'可推广/落地性'三个维度综合打出一个分数,满分为5分, 现场扫码投票(没错,听起来还有点小高端呢)。