性能测试是自动化测试中的重要组成部分。在数字业务(Digital Business)及类似秒杀之类场景的驱动下,性能测试的重要性也在持续攀升。在过去10年间,性能测试经历了从商业产品 LoadRunner 主导到开源工具 JMeter 主导的转变。根据 51Testing软件测试网的调查报告,2009 年时仅 6% 的受访者采纳 JMeter 工具。但是到 2019年,62% 的受访者采纳 JMeter 作为性能测试工具,已经成为目前最主流的性能测试工具。
JMeter 真的完全满足企业性能测试的需求吗? 有了 JMeter,为什么还需要 MeterSphere?我们将规模扩展性、测试报告、测试管理和多人协作这四个方面详细分析 JMeter 存在的问题,及 MeterSphere 带来的变化:轻松在云端运行大规模的 JMeter 性能测试。
一、规模扩展性 {#一规模扩展性}
JMeter 存在的问题
并发数超过单节点承载能力时,多节点环境配置、维护复杂
默认配置下无法并行运行多个测试,需要更改配置启动额外进程
难以支持云环境下测试资源的弹性伸缩需求
MeterSphere 带来的改变
极端可伸缩性:MeterSphere 可大规模扩展,让您能够将负载测试解决方案扩展到超过百万级虚拟用户的测试
减少硬件维护需求:可扩展的负载生成器托管在云中,简化了基础设施的管理、安装和配置
负载生成器资源池共享:多个项目、多个测试可并行使用同一个负载生成器资源池(最大并发数允许情况下)
二、测试报告 {#二测试报告}
JMeter 存在的问题
测试报告需要在测试执行完成后单独生成,实时报告需要通过第三方方案实现
测试报告不能很方便地进行共享
没有多次测试结果之间进行比较的功能支持
MeterSphere 带来的改变
近乎实时的性能测试报告展示
团队共享的测试报告,方便团队成员进行协作分析
历史测试报告随时查看,多次测试结果可以快速比较
三、测试管理 {#三测试管理}
JMeter 存在的问题
如何存放这些脚本可以让整个团队很方便地使用和修改
针对不同产品、项目的脚本如何进行区分
如何控制不同成员对不同测试脚本的访问权限
同一个测试脚本的更新修改如何进行追踪回溯
MeterSphere 带来的改变
B/S 架构的测试平台,测试脚本统一存放在数据库,团队成员可以很方便的进行共享和协作
多租户、多项目的管理模型可以很好的将测试资源进行分隔
灵活的角色配置,根据需求为团队成员分配不同权限
针对测试脚本的修改、执行可以提供完善的记录跟踪
天然支持测试脚本与测试用例的关联, 用户在进行手工测试及接口/性能测试时体验更加一致,测试报告更加完整
四、多用户协作 {#四多用户协作}
JMeter 存在的问题
C/S 架构的测试工具,所有需要使用的人都需要在本地进行安装
没有内置的租户、用户管理能力,测试脚本、测试报告不能很方便地进行共享
MeterSphere 带来的改变
B/S 架构的测试平台,只需一个现代浏览器加可以使用到平台提供的所有功能
灵活的多租户、多项目管理模型,租户间测试用例、测试脚本和报告可以有效隔离,租户内方便共享协作