上线前准备
回归测试完成之后,通过测试,表明项目已经具备上线的要求了,那这时就开始做上线前的准备
上线前准备一般会为三个步骤:
第一步:确定上线策略
a.上线顺序
如果有多个系统上线,上线顺序是怎么样的?经常我们会有三个系统一起上线,那么A、B、C三个系统的依赖关系是怎么样的?
比如B系统的上线功能依赖于A系统的上线功能,那么就先上A系统,再上B系统,项目中上线顺序根据实际情况确定上线。
b.修复数据策略
如果功能上线之后出现BUG,应该怎么处理?一般我们会设一个开关,当新功能一旦出现问题,将开关打开,走原来的老流程。
如果上线之后出现BUG,BUG影响的数据应该怎么修复?有时会单条单条的修改数据,但如果数据量太大,单条修复数据这个工
作量就很大,那么在有可能出现BUG地方设置一个点,有可能是task任务,重新跑原来的流程,也有可能是设置一个状态,一
旦数据出现问题,无法正常进入下一个流程,那么设置状态为error,当BUG解决后,可以重试,修复错误数据。
c.旧数据分析
这个分析并不是每个项目都需要,仅限新功能上线后分影响老数据的那些项目。
举一个简单的例子:
前阵子做了一个流程改造的项目,以前流程是:
用户数据----》先在A系统核验通过----》入库到A系统----》再同步到B系统进行业务操作----》最后再将数据同步到A系统
流程改动之后:
用户数据----》先入库到B系统,在B系统通过校验后----》入库到B系统---->再同步到A系统入库----》B系统进行业务操作
---》最后再将数据同步到A系统
针对这个流程改造项目上线之后,一定会有部分数据在上线之前是走的老流程,同时整个流程又没走完,那么在上线的时候
就需要新流程去兼容老流程遗留下的数据,我们当时是增加了一个校验,在老流程中数据是从A系统同步到B系统的,在新流
程中数据是从B系统同步到A系统,那么在B系统同步到A系统时增加一个校验去判断A系统中是否有相应数据的存在,没有才
同步。
第二步:写上线申请邮件
上线之前,项目测试负责人要写上线申请邮件,邮件内容包括有:
1.数据配置
有没有开关?有就需要配置。
数据库有没有修改?有新增表,需要事先增表,有修改表结构,需要改表结构。
有没有外部接口?有就需要配置接口URL,否则流程不能跑通,回调也不能通。
等等,根据实际情况来写。
2.上线注意点
可以写本次项目上线后,会引起的风险,哪些地方可能容易出现问题?需不需要加上监控等?又或者上线之后,需要人为地去监控数据。
3.在邮件中写清楚上线策略
(第一步中考虑到的上线策略)
第三步:配置线上环境数据
根据测试人员编写的上线申请邮件,在上线之前在线上环境中配置好数据,根据邮件来配置,所以在编写邮件的时候需要将配置写全
这些配置可以根据开发人员提测时的转测邮件来写,或者测试过程中的补充配置,谨记配置要写完整。
完全以上步骤之后,就可以择良辰开始上线了,一般上线的权限只有几个人有,所以上线的人员是固定的,上代码时需要先将线上环
境的job停掉,我们也是用jenkins进行自动化部署,只是需要人为的打版号、标签,部署版本,停Djob任务,上线完全之后,启动Djob任务等。
上线之后
对于测试人员来说,并不是你测试完全,项目上到线上(生产)环境上就OK了,就不关你的事了,而实则项目上线之后才是真正对测
试人员的考验,测试人员经常疑或为什么总有一些BUG是在线上环境中才会被发现?
1.线上环境数据的复杂度是测试环境不能比拟的。
2.业务操作的不可控性
3.实际场景的复杂性
基于以上三点,这也就是为什么线上环境总是出现一些测试环境不能发现的BUG,排除测试人员漏测的情况。
故,上线之后,测试人员需要做好以下二件事:
第一,灰度测试
项目上线之后,首先是测试人员开始做灰度测试。
灰度测试时,可以设置由业务开关或者白名单之类做控制,只要少量数据或添加在白名单上的数据可以走新业务流程。
灰度测试完全之后,也就是将所有业务流程走完,检查各项数据的正确性、流程是否通、流程是否完整等等检查点。
确定无问题时,再将开关打开,再开放少量真实用户数据。
第二,监控线上数据
灰度测试时就已经在监控线上数据和检查线上数据,但因为灰度测试时数据量比较少,有时并不足以引发新问题,所以测试人员需
要继续观察线上数据。
测试人员需要在项目上线之后的几个小时内,重点监控线上数据的流向,一旦数据有异常,立即采取措施,回滚代码又或者重新打
开开关等,尽量将线上bug引起的损失降到最低,接下来就开始修改bug和修复数据。
在这个时候,测试人员对数据的敏感性特别就要发挥出来,有时似错非错的数据正是BUG的前兆,千万不要掉意轻心。
整个项目上线前后的流程就大致如此,不管是上线前的准备还是上线之后数据的观察都是一环扣一环,这些步骤有息息相关,前面
的准备工作做得足,那么后面监控数据就会相对轻松,因为不容易出现问题。
最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】
全套资料获取方式:点击下方小卡片自行领取即可