TA的每日心情 | 衰 2020-3-27 09:39 |
|---|
签到天数: 43 天 [LV.5]常住居民I
|
我有一个经验,流程中凡是有人类手工参与的环节是最容易出错的。因此,尽可能减少流程中人的参与是产品质量的有效保证。(手工劳斯莱斯除外)
, i% C) @% s3 K: a9 C/ u& ~1 s ?: e
; u+ P3 w, J \% z N+ ?4 |" Q% f 我又有一个经验,执行系统升级/回滚这样的关键操作时,要严禁手敲键盘一条条输入命令,而应该在pre-production环境下编写好命令手册,用复制粘贴的方式一步步来或者直接上脚本,原理见上一条经验。(Windows系统除外)5 q: N! E, E9 I1 F; v; B
" c* j# B/ i. B1 ~% {; p& r- X, }
我又又有一个经验,上面这两条你肯定知道,如果你还没这么做,肯定是客观环境不允许。(这条没例外)
g3 ~- _; U% F2 I) e& S: d& B9 k+ a+ i& G
续断研发团队一直在以最严格的流程迭代产品!然而,开始时并不是因为我们天生骄傲,而是老板不肯多招人……好吧,说正题,隧道稳不稳最重要还是产品稳不稳。续断研发团队做了这些工作,尽可能让产品“稳”如泰山。4 c& A0 P8 U% Z7 N9 R5 C, H
2 a% P( Q5 r) m1 y9 Y$ L x
核心功能10倍测试代码0 u9 S; R# p( I7 [1 s$ v; z
u. a+ m6 ~2 t3 m3 s' v 对C/S架构的产品来说,自动化测试实现起来要复杂一些。续断有213个测试用例涵盖隧道功能测试,隧道压力测试,客户端安装卸载,用户注册,充值,扣费等关键功能。按照代码行数粗略计算,每行核心代码有10行测试代码来保证质量一致。这213个测试用例哪里来的?坑踩的多了,攒的……
: z' z5 v- A& Q# E1 }$ s: ]
; `1 {: \' R' W) X% e; z4 g 
* |, [9 q# _' ? g4 A U( |
$ \; O+ ]/ B4 t9 T, l; R% V3 ^ 40000次自动测试' b$ j1 }, M3 M; x; l. b. I! m
4 x+ D& x3 t/ a$ ` 200台测试设备╳每台设备213个测试用例≈40000次自动测试。4 [, f v5 B! _/ W
! ^) {( e' E+ H( W$ \, x' u; l 190台OpenStack虚拟机,外加树莓派,香橙派,极路由,360路由,小米路由Pro,威联通,少量PC,笔记本电脑等。测试环境涵盖下表各类操作系统和版本,pipeline细致而繁杂,只有全部通过流程才会继续。1 w0 h, K7 ]/ B! g( |5 X: ?% t
) X' n* X( `" ] D2 d/ K : M8 k$ f9 g4 ^7 A0 r/ t
" X) P: L: g& H/ o" G' A6 a 0 r+ h5 b7 C4 Y. \/ m, C
! f* a4 f1 v! [5 w7 v% j8 J
升级/回滚3分钟,影响用户几秒钟5 Y* \. @# q" T
C& y* ?% l& q 深度应用CI/CDDevOps,Issue——Master——Pre-Production——Production,层次分明,验证充分。全容器化的服务端架构,让我们能在3分钟内完成对全球范围100多个续断服务器节点的升级/回滚,用户有感知的影响被控制在数秒钟以内。是的,”小个位数”秒以内,以至于让用户阅读升级公告都显得浪费时间,所以就不发公告了。
a l# \7 K* ^; a5 A
4 l: P1 ]' m3 `% s% I; @ 另外
/ w9 b, i2 s/ }. n7 w+ b7 C6 A6 a, [; B+ I
哲西信科官网www.zhexi.tech。我懂,这些都是常规操作,单讲数据的话被某某某一个朋友公司的产品碾压是分分钟的事。但摆数据不是为PK,而是要让我们续断的用户放宽心。续断是老司机开车,稳得狠!还没完,我们老板说了,“南来的北往的有疑问就请在评论区留下,都是程序员,我们踩过的坑不想看别人踩一遍,有必要可以给代码,帮到家”云云……不过我们老板有个特点是说话不算话,你老板不会恰巧也这样吧?
. f. x6 f! M% b! F N" J
+ ^% y7 e1 o7 P. @' v9 B2 J8 S1 f, F
2 {5 h% W! t1 l0 P9 m" e |
|