前言
越来越多的项目负责人会把性能指标的好坏,作为项目质量的重中之重,那么打造一款简单易上手的性能测试平台也是大势所趋。NPT性能测试平台应运而生,网址如下:http://npt.netease.com/。
为什么要开发NPT平台
性能如何是目前很多公司都会关心的问题,很多大公司也都有自己的性能测试平台。但对于在网易工作的小伙伴们来说,仍然有一些不方便之处:
1. 用其他公司的性能测试平台,例如阿里的PTS性能测试平台,需要额外支付费用并且会担心公司信息外泄;
2. 用其他公司的平台,可能会有网络传输等条件影响测试结果;
3. 采用jmeter等性能测试工具,没有强大的测试机可供压测使用;
所以杭州研究院的性能测试组和测试开发组,共同研发了性能测试平台——NPT(Netease Performance Platform)。可以帮助网易的各个研发团队,各个产品评估产品性能,找出性能瓶颈,提升产品质量。简单来说,NPT平台给我们提供了如下功能:
1. 易上手,简单场景3分钟内发起压力服务可用率高达99.99%;
2. 支持多接口并行、顺序等执行策略,支持恒定、上升、变化压力模式;
3. 支持接口性能测试、稳定性测试、容量测试三大类型;
4. 自动、实时、可视化展示性能监控指标,支持系统资源监控、应用性能监控;
NPT平台架构
平台架构图:
NPT性能测试平台主要由前端Web服务、Asimov机器和调度中心、Watchlog日志分析服务三个部分组成。
NPT平台简介
NPT平台首页有多名性能测试专家倾情奉献的培训视频,可以帮助大家方便、快速的开展性能测试:
在NPT平台上,一次完整的测试过程包括如下几个阶段:
1) 新建项目/加入项目
通过openid登录到NPT平台,如果没有项目则新建项目,已有项目可以申请加入,通过后会有邮件通知,已经有权限的项目会在“我的项目”中罗列出来;
2) 创建场景
进入到对应的项目中,在测试场景中创建场景,设置URL请求,可以支持HTTP和HTTPS的协议类型,GET、POST、PUT、PATCH、DELETE类型的请求方式,另外还可以添加断言并从响应消息中提取参数;
URL中的变量可以从上传的CSV格式的文件中取到,也可以通过变量生成器生成;域名设置是至关重要的,内网压测配置云主机机房IP,外网压测直接配置外网IP;
3) 创建任务
选择任务所属的测试场景,并根据服务部署在萧山B还是义桥来选择对应的施压集群,压力模型可以选择平行或者梯度的模式进行压测,原则上NPT平台支持无上限的并发压力;
4) 测试执行
测试执行过程中,可以实时观察到接口的TPS、MRT等性能指标,并可以通过性能风险来检查检测结果的健康度;
任务详情:
性能风险:
更多详细过程,可以参考平台首页视频内容。
本文来自网易实践者社区,经作者齐红方授权发布。