江苏长田信息科技有限公司是一家专注智慧校园建设领域的服务型企业,打造覆盖 “教、学、考、评、管” 全场景的智慧校园一体化解决方案,构建集智慧教学、智慧管理、智慧服务、智慧安防于一体的校园数字生态,打通校园各系统数据壁垒,实现资源共享、业务协同与数据互通。
一、测试策划与准备阶段
1.1 明确测试范围
确定本次要验证自愈能力的对象:
应用服务:统一门户、教务、学工、一卡通、考勤、数据中台
中间件:应用服务器、消息队列、缓存、API 网关
数据库:主库、备库、集群
网络:核心交换机、汇聚、AC、AP、链路、VLAN
硬件:服务器、存储、PDU、UPS
终端:门禁、消费机、摄像头、班牌
业务流程:登录、选课、消费、考勤、推送、数据同步
1.2 制定测试通过准则(量化)
服务自愈:进程异常终止后 ≤3 分钟自动恢复
数据库主从切换:≤5 分钟,业务无感知
网络故障自愈:≤1 分钟链路恢复,会话不中断
数据一致性:故障前后数据一致,无丢失、无重复、无脏数据
业务连续性:核心功能可用,无需人工干预
自愈成功率:≥99%
1.3 环境准备
确认测试环境(试运行 / 仿真环境),严禁直接在生产环境破坏性测试
完成全量数据备份
部署监控:服务状态、CPU / 内存 / 磁盘 / 连接数 / 接口成功率
准备工具:
进程管理工具(taskkill、kill、systemd)
网络模拟工具(Fiddler、交换机端口控制)
数据库客户端
PDU/UPS 断电模拟
门禁 / 消费测试卡
浏览器、APP、监控平台
1.4 人员分工
测试负责人:统筹、记录、判定
系统工程师:模拟服务 / 数据库 / 硬件故障
网络工程师:模拟断网、闪断、链路切换
业务验证人员:教师端 / 学生端 / 管理端操作验证
监控人员:实时观察指标、日志、告警
二、基线采集阶段(测试前必须做)
检查所有系统正常运行,无告警、无报错
记录基线指标:
各服务进程状态
数据库连接数、主从状态
网络延迟、丢包率
接口响应时间
业务功能可用情况
执行一次完整业务流程并记录结果:
登录→选课→查询成绩→考勤打卡→消费→门禁通行
确认监控、日志系统正常,可追溯自愈行为
三、分场景故障模拟与自愈验证阶段
每个场景严格按:故障注入 → 持续监控 → 等待自愈 → 业务验证 → 数据核对 → 记录结果
场景 1:应用服务进程异常崩溃
手动 kill 核心应用服务进程(如统一门户、教务服务)
监控观察:
是否自动重启、重新注册
重启耗时
有无报错、死循环
业务验证:
页面能否正常打开
接口能否正常调用
登录、查询是否正常
数据验证:故障前后数据一致
记录:自愈时间、是否成功、是否人工干预
场景 2:中间件 / 缓存异常自愈
关闭 Redis、RabbitMQ 等关键中间件
观察应用是否熔断、降级、自动重连
恢复中间件后,系统是否自动恢复业务
验证消息不丢失、缓存数据一致
场景 3:数据库主库故障
关闭主库服务或断开主库网络
观察:
是否自动触发主从切换
VIP 是否漂移
应用是否自动连接新主库
业务验证:读写正常、无卡顿、无报错
数据验证:主从数据一致,无丢失
场景 4:网络链路中断 & 闪断
拔掉核心交换机上联线 / 关闭端口
观察:
冗余链路是否自动切换
漫游、会话保持是否正常
模拟弱网、高延迟、频繁闪断
验证:
重连后无需重新登录
提交不重复、不丢单
门禁 / 消费断网后可离线,联网自动补传
场景 5:单台服务器宕机
关闭集群中一台应用服务器
观察负载均衡器是否自动剔除节点
流量自动切换到其他节点
业务全程不中断、用户无感知
场景 6:服务器突然断电
通过 PDU 远程断电再上电
观察:
服务器上电后系统自动启动
服务自启动、数据库自动拉起
无数据损坏、无事务丢失
业务全功能验证
场景 7:磁盘满 / 资源耗尽
模拟磁盘空间
观察系统是否告警、自动清理日志
释放空间后,服务是否自动恢复
不宕机、不崩溃、不卡死
场景 8:高并发过载自愈
使用压测工具模拟选课 / 迎新高峰
观察系统是否限流、降级、自我保护
停止压测后,系统是否快速恢复正常
无雪崩、无死锁、无长期阻塞
场景 9:第三方接口超时 / 异常
模拟一卡通、门禁、第三方平台接口超时
观察应用是否熔断、重试、降级
第三方恢复后,系统自动恢复
不影响核心平台运行
场景 10:定时任务 / 同步任务失败
手动中断夜间数据同步任务
观察是否自动重试、补跑
次日数据完整、无缺失
四、自愈效果综合判定
对每个场景统一判定三要素:
是否自动恢复:无需人工登录、启动、执行命令
恢复时长是否达标:在准则时间内
数据与业务是否正常:无丢、无重、无错、可用
判定等级:
通过:全部满足
基本通过:轻微超时但可自动恢复
不通过:需人工干预 / 数据异常 / 业务不可用
本文章来自:江苏长田信息科技有限公司
编辑人:任女士
联系
VX:TRENDY_001
转发请注明