性能测试平台及服务,构筑应用质量屏障

关于腾讯课堂
腾讯课堂是腾讯推出的专业在线教育平台,聚合大量优质教育机构和名师。凭借技术优势,实现在线即时互动教学,提供流畅、高音质的课程直播效果。腾讯课堂改善了中国教育资源分布和发展不均的现状,依托互联网,打破地域的限制,让每个立志学习有梦想的人,都能接受优秀老师的指导和教学;同时为优秀的机构及教师提供了一个展示的平台。
背景
2020年新冠疫情爆发之初,全国中小学休假停课,随即教育部发起“停课不停学”号召,腾讯课堂作为首批响应者和主要参与者,仅用48小时完成腾讯课堂“极速版”的开发、测试、上线全流程,妥善应对超百倍的在线人数增长压力。目前,腾讯课堂极速版用户已覆盖34个省市自治区,超过百万名老师自助使用腾讯课堂开课,助力近万所学校数千万师生在线上课。
在腾讯课堂“极速版”上线前后的全部测试过程中,优测与腾讯课堂团队紧密协作,协同完成全链路压测方案的整体设计,并提供压测平台及7x24小时的专家服务支撑,最终高质量完成攻坚任务,面向社会交付了一份满意的答卷。
|
|
|
重视平台功能的完备度,需求私有协议支持 | 优测压力测试平台支持复杂脚本编写,支持HTTP、WebSocket、SSO、TCP等多种协议方式,且支持私有协议扩展,可设置定时任务与告警机制,并可提供多维度的压测报告 | 即开即用的后台测试平台,支持复杂场景,有效降低压测实施门槛 |
用户量激增,需求百万级并发支持和多地压力源 | 提供单接口和全链路两种压力测试类型,配备丰富的系统函数,支持复杂业务场景;支持用文件构造大量测试数据,从全球各地不同压力源发压,模拟真实用户流量 | 准确探知系统瓶颈,确保应用稳定上线 |
提供具有完备功能的压测平台,支持私有协议扩展,有效降低压测的实施门槛
腾讯课堂作为国内TOP级在线教育平台,其整体产品架构非常完善。但在面对“极速版”极短的研发上线周期、数百倍的用户量增长压力下,尤其在测试环节面临着巨大的挑战。优测作为其后台性能保障能力的补充,提供了四大方面的核心能力,以保障测试环节顺利实施:
1.全生命周期后台测试管理平台
优测云测试平台集成API管理、API监控、API测试、性能测试、质量度量为一体的API全生命周期质量保障平台。
2.CI/CD/DevOps流程接入
优测提供大部分能力的Open API,支持用例、任务等触发执行和结果回收,支持详细日志的拉取等,可快速接入CI/CD流程,横向扩展DevOps工具链及实施能力。
3.多协议支持
支持市面绝大多数通用主要支持协议类型,包括有传输层协议(TCP、UDP)、应用层协议(HTTP、TRPC、TAF、WebSocket、GRPC、TCP、UDP、TARS、DubboSSO、OIDB、WUP、WNS…等)、接口描述语言(Json、Jce、PB),同时支持快速扩展支持业务其他私有协议类型。也可扩展支持
4.多维度压测报告
实施展示执行过程数据,支持秒级熔断,通过趋势图和表格数据展示测试结果,汇总展示压测任务、链路、接口等个维度数据,且提供丰富的采样日志,追溯上下文信息快速定位问题原因

支持百万用户并发,全球分布式压力源,模拟真实用户流量
在性能测试过程中会出现很多难点,比如要理清业务场景、每接口QPS要求、评估系统容量、选择合适的测试工具等等,但一般最难的部分便是压力源。一个“动力澎湃”且最大程度接近真实的压力源,会直接提高压测的实施质量,最终决定产品品质。
腾讯课堂“极速版”因其庞大的用户规模,对复杂场景的支持和真实压力源的诉求非常之高。在压测的实施过程中,双方团队紧密协作,完成全链路压测执行方案设计。并以腾讯云为依托,精准评估压力源执行机资源、高效动态配置,最终为压测执行构筑出一套稳定、高效的平台底座。 优测的压力测试在模拟业务复杂场景具有较大优势,支持百万级QPS压测、多接口串行/并行压测、多模式发压配置、流量清洗并发压、动态随机数、梯度增压等。

效果
- 截止目前,腾讯课堂在优测创建的API功能测试用例数已超1万条,累计执行case次数达千万级;
- 压测用例数2000+,压测任务的执行量也已超1万次,实现了服务发布后自动集成API功能测试及压力测试。
- 十年深耕测试领域,构筑专业可靠的质量团队,优测将持续为像“腾讯课堂”一样的在线教育平台,以及面临同样挑战、急需质量保障的企业,提供全生命周期的质量保障服务,共同开启增长“飞轮”!