从一次故障聊聊前端UI自动化测试

北京医院治疗酒渣鼻 http://baidianfeng.39.net/a_wh/210117/8598818.html
01背景事件的起因在于老板最近的两次“故障”,一次去年的,一次最近。共同原因都是脚手架在发布平台发布打包时出错,导致线上应用白屏不可用。最神奇的是,事后多次CodeReview,结果还是没有发现任何能够导致该问题的bug,最后推测有可能是服务器在发布打包的时候出了问题。当老板第N+1次吐槽因为他写的工程化工具领来的天外飞锅,我突然思考起来,如何才能避免这种天外飞锅。归根结底,导致这类线上故障的原因都是在于打包上线的代码没有经过验证。针对这个问题,有两种方法可以解决:治本由于请求地址不同,预发(测试)版本不可直接发线上,而线上版本缺少了上线之前的验证过程。所以,可以通过在发布系统的预发和线上之间,新增一个beta发布,beta发布使用线上发布的打包流程,不同的是,只允许内网访问,专门用于内部测试。有人可能会问,哪怕添加了beta发布,依然无法保证线上发布重新打包的时候不出错呀?重点来了,这种解决方案的核心就在于,beta发布测试通过后,直接将beta发布的打包产物进行线上发布,因为不需要二次打包,所以避免了打包过程中产生新的问题。由于添加beta发布需要不同岗位,比如运维、后端、移动端的协作,所以实施难度较大。治标既然线上版本上线之前验证不了,那么上线之后立刻回归验证,如果发现问题,立刻手动回滚。正所谓没有人发现的故障就不是故障,perfect!正如之前所说的,治本的方法实施难度较大,所以,我们重点


转载请注明:http://www.aierlanlan.com/tzrz/384.html