CRM-性能测试报告

时间:2022-03-03 07:23:41

1.     概述

1.1.    测试目的

CRM系统性能测试是针对系统并发处理能力、交易响应时间等性能指标所进行的验证性测试。目的是尽可能地模拟生产环境的前提下,实现以下目标:

  1. 获取上线版本测试需求在当前生产环境下的单交易负载指标;
  2. 获取系统在当前测试环境下可支撑多少并发用户的数量;
  3. 获取系统在峰值的80%压力下稳定运行时系统的表现,重点关注JVM使用表现;

1.2.    测试地点

本次CRM非功能测试是在江苏兴化农商行CRM项目组执行测试。

 

         
         
         
         

 

2.     测试范围及方法

2.1测试性能指标范围概述

     CRM的性能测试在多用户登录并发下的性能指标,主要包括:

1. 事务(测试对象的)的平均响应时间;

2. 各服务器(应用、数据库)的CPU利用率,内存、磁盘I/O使用情况;

3. TPS:反映CRM系统处理能力;(服务器对当前录制的事务的处理速度快慢 Transactions Per Second也就是事务数/ 秒,一个事务指一个客户机向服务器发送请求,然后服务器做出反应的过程。)

4. 交易成功率。

2.2 非功能测试指标标准

     指标项

指标值

备注

系统并发用户数

>=100

混合场景并发

交易成功率

>=98%

 

TPS处理能力

>=2/秒

 

平均响应时间

<=10s 

 

服务器资源利用率

CPU利用率不超过75%,内存利用率不超过80%、磁盘I/O、Network正常。

 

WAS服务器线程数

不存在排队与等待现象。

 

JVM

没有泄露现象能正常回收内存

 

2.3非功能测试场景设计

2.3.1单交易测试业务场景确定

简单解释:单个交易场景压力测试,并发50个用户,执行10分钟的交易操作,获得交易的响应时间和交易成功率数据是否符合性能指标要求。

测试目的:这种测试是为了检查应用程序是否存在代码上的性能问题(包括内存泄漏、连接池不足等问题)。

交易名称

交易路径

CRM系统并发多用户登录

登录至用户首页

客户管理

对公客户视图

客户管理

对私客户视图

客户资源管理

客户分配

客户管理

客户群管理-点击客户群管理

客户管理

集团客户管理-客户管理集团视图

客户管理

点击集团客户管理

客户管理

重点客户管理

客户经理管理

客户经理业务全景视图

首页

客户名称查询

首页

证件号码查询

首页

产品名称查询

 

2.4测试方法简要描述

在CRM系统应用端采用LoadRunner HTTP协议模拟真实的多用户操作,发起登录交易,模拟真实压力。

本次测试采用HP公司的LoadRunner作为压力发起的工具。版本为LR9.5。

LoadRunner是一种预测系统行为和性能的工业标准级负载测试工具。通过模拟虚拟用户实施并发负载及实时性能监测的方式来确认和查找问题。LoadRunner通过模拟实际用户的操作行为和实行实时性能监测,来帮助用户更快的查找和发现问题。

3.     测试环境

3.1.    测试环境介绍

  • 压力发起机:(IP:66.235.97.85)
  • DB2和WAS安装在同一台应用服务器:(IP:66.235.97.52)

3.2.    测试环境机器配置表

主 机

数量

型号

资 源

操作系统

CRM应用服务器(WAS)

1

IBM X3850

8C8G

LINUX

CRM数据库服务器(DB2)

1

IBM X3850

8C8G

LINUX

Loadrunner 控制器

1

PC

2C4G

WindowsXP

磁盘

1

 

 

未用磁盘空间

 

4.     项目时间表

任务

负责人

工期(天)

开始时间

结束时间

         
         
         
         
         

 

5.     压力测试通过标准

系统平均响应时间通过标准如下:

  • 单个用户迭代运行100次,平均响应时间小于2秒
  • 10个并发 平均响应时间小于3秒
  • 20个并发 平均响应时间小于5秒
  • 50个并发 平均响应时间小于8秒
  • 100个并发 平均响应时间小于10秒

系统资源占用情况通过标准:

  • CPU占用<=75%,内存占用<=80%,
  • 交易成功率>=99%
  • TPS>=2笔/秒

 

5.1.    单个场景测试

5.1.1.   单交易负载测试结果(50用户并发)

交易场景名称

交易步骤

平均响应时间

CPU占用

内存占用

交易成功率

CRM系统多用户并发登录

登录至用户首页

6.667

10%

33%

100%

客户管理

对公客户视图

1.912

9%

32%

100%

客户管理

对私客户视图

4.056

11%

32%

100%

客户资源管理

客户分配

7.541

28%

33%

100%

客户管理

客户群管理-点击客户群管理

6.459

28%

32%

100%

客户管理

点击集团客户管理

5.605

4%

35

100%

客户管理

点击普通客户群视图

7.347

22%

34%

100%

客户管理

点击重点客户管理

7.980

13%

34%

100%

客户管理

点击客户视图

5.456

13%

34%

100%

客户管理

点击客户概览信息

4.457

13%

34%

100%

客户经理管理

客户经理业务全景视图(包含3个页面场景,每个场景平均7S)

22.115

15%

33%

100%

首页

客户名称查询

6.887

8%

33%

100%

首页

证件号码查询

3.668

15%

33%

100%

首页

产品名称查询

7.298

7%

33%

100%

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

测试结果分析:

经过50个用户并发测试,CRM系统的主要场景平均响应时间完全满足当初系统设计的要求(50个用户并发,平均响应时间小于8S)。

5.2.    混合场景负载测试

混合场景策略:将所有的模块场景组合一起同时运行,完全模拟用户的真实情况进行压力测试,看看系统最大支持多少用户的并发,达到多少用户并发服务器性能开始下降。

5.2.1.   混合场景测试结果

交易场景平均响应时间如下:

1个用户,10个用户,20个用户,50个用户,100个用户并发运行12小时,各场景平均响应时间的测试结果如下:

交易场景名称

1个用户平均响应时间(S)

10个用户平均响应时间(S)

20个用户平均响应时间(S)

50个用户平均响应时间(S)

100个用户平均响应时间(S)

首页

0.367

1.38

3.369

6.532

11.083

客户概览信息

1

1.978

3.856

5.432

10.532

客户群管理

0.541

1.093

3.857

8.523

10.038

营销团队维护

0.193

0.699

1.291

4.821

9.762

客户群管理

0.183

0.628

1.188

4.58

9.744

客户基础信息

0.246

0.796

1.906

4.193

9.675

用户管理

0.181

0.619

1.101

4.535

9.489

客户价值管理

0.954

1.778

4.024

7.798

9.452

对私客户视图

1.561

1.986

4.08

7.682

9.375

客户经理全景视图

0.691

1.869

4.534

6.76

9.358

我的营销活动

0.97

1.959

3.789

6.786

9.232

客户概览

0.239

0.789

1.858

4.879

9.164

营销商机创建

0.253

0.838

1.907

5.012

9.082

外部数据导入

0.199

0.701

1.38

5.395

9.028

客户查询

0.539

1.485

3.749

7.998

8.998

登录

1.328

1.532

4.034

7.238

8.954

营销活动创建

0.181

0.609

1.094

4.433

8.835

客户名称查询

0.531

1.485

4.987

6.768

8.642

客户资源管理

0.841

1.123

3.135

7.63

8.64

重点客户管理

0.222

0.753

1.58

4.982

8.623

日志管理

0.877

1.523

3.084

6.762

8.541

营销产品设置

0.285

1.004

2.051

5.672

8.532

客户流失预警

0.276

0.936

2.022

5.176

8.532

营销活动审批

0.185

0.647

1.232

4.768

8.532

商机销售漏斗

0.18

0.609

1.084

4.362

8.394

重点客户管理

0.203

0.728

1.391

4.272

8.186

我的营销商机

0.267

0.914

1.922

5.493

8.129

客户综合评级

0.315

1.147

2.35

5.078

8.091

快速查询

0.221

0.751

1.428

4.621

8.072

客户分配

0.753

1.986

4.987

6.989

7.987

客户忠诚度

0.35

1.343

3.048

7.038

7.98

集团客户管理

0.234

0.759

1.62

4.325

7.867

客户主观评级

0.327

1.251

2.447

4.526

7.452

客户风险评估

0.18

0.6

0.984

3.327

7.389

客户积分管理

0.168

0.589

0.87

3.845

7.02

客户移交

0.311

1.105

2.121

4.98

6.769

营销商机审批

0.163

0.584

0.85

3.59

6.759

菜单项管理

0.346

1.298

2.685

5.436

6.598

布局设定

0.234

0.77

1.841

4.574

6.538

客户贡献度

0.159

0.582

0.838

3.519

6.439

客户经理信息查询

0.157

0.577

0.822

3.514

6.135

客户关联信息

0.154

0.562

0.814

3.444

5.995

客户经理业绩分析

0.15

0.558

0.797

3.435

5.685

客户视图

0.145

0.544

0.745

3.316

5.651

报表授权

0.143

0.518

0.743

3.298

5.453

客户生命周期

0.141

0.508

0.705

3.05

5.413

客户关怀管理

0.133

0.506

0.678

2.987

5.404

角色功能授权

0.133

0.5

0.669

2.879

5.342

客户概览信息

0.13

0.482

0.661

2.876

4.893

客户财务信息

0.129

0.479

0.655

2.687

4.836

信息提醒管理

0.123

0.423

0.629

2.427

4.191

客户退回

0.12

0.42

0.625

2.412

4.147

公告信息

0.12

0.418

0.606

2.365

4.145

工作日历

0.118

0.418

0.597

2.327

4.132

营销任务制定

0.114

0.404

0.586

2.284

4.06

数据字典管理

0.112

0.401

0.574

2.268

3.965

客户合并

0.107

0.399

0.571

2.258

3.794

通讯推送管理

0.105

0.386

0.547

2.244

3.501

报表查询

0.104

0.381

0.538

2.149

3.234

客户事件提醒

0.103

0.368

0.53

2.05

3.231

客户投诉管理

0.103

0.363

0.515

2.05

2.985

营销综合统计

0.101

0.353

0.507

2.005

2.876

客户管理菜单

0.1

0.353

0.506

2.004

2.861

营销产品管理查询

0.099

0.351

0.505

1.981

2.858

角色管理

0.097

0.347

0.497

1.922

2.838

指标管理

0.096

0.345

0.484

1.898

2.814

客户认领

0.089

0.341

0.484

1.828

2.807

客户管理

0.089

0.34

0.475

1.786

2.778

营销计划管理

0.089

0.33

0.437

1.777

2.297

风险客户管理

0.088

0.33

0.435

1.708

2.257

阳光信贷客户管理

0.086

0.33

0.433

1.7

2.22

客户关系图

0.084

0.328

0.416

1.653

2.197

任务管理

0.084

0.325

0.4

1.587

2.172

产品助手查询

0.08

0.315

0.383

1.551

2.044

片区管理

0.08

0.299

0.382

1.54

2.04

机构汇总

0.079

0.296

0.379

1.538

1.953

营销活动统计

0.077

0.293

0.378

1.457

1.7

部门管理

0.072

0.287

0.372

1.349

1.485

个人汇总

0.071

0.287

0.353

1.327

1.441

渠道信息管理

0.071

0.286

0.348

1.295

1.346

知识库

0.071

0.276

0.345

1.268

1.136

客户产品导入

0.07

0.27

0.343

1.243

1.134

税务数据导入

0.069

0.238

0.331

1.177

0.705

营销活动跟踪

0.069

0.237

0.329

1.16

0.615

报表配置

0.067

0.221

0.322

1.084

0.555

电费数据导入

0.067

0.217

0.322

0.927

0.547

营销模板管理

0.066

0.21

0.319

0.908

0.518

在线用户监控

0.063

0.208

0.299

0.873

0.484

水费数据导入

0.063

0.196

0.295

0.749

0.467

潜在客户管理

0.054

0.158

0.292

0.692

0.415

操作日志

0.05

0.157

0.28

0.669

0.404

机构管理

0.049

0.155

0.241

0.505

0.389

系统管理

0.044

0.124

0.233

0.413

0.349

金融工具箱

0.038

0.113

0.14

0.36

0.348

客户视图展示

0.016

0.032

0.028

0.099

0.121

结果分析

1个用户,10个用户,20个用户,50个用户,100个用户并发下,大部分事务的响应时间都在性能测试标准之内,并且压力过程中没有失败的事务,也未发现JVM泄漏、连接池不足等问题,基本上达到了需求要求的性能指标。

交易场景资源使用情况如下:

1个用户,10个用户,20个用户,50个用户,100个用户并发运行12小时,各场景资源使用情况和TPS,交易成功率的测试结果如下:

并发用户数量

TPS

交易成功率

CPU占用

MEM占用

1

1.2

100%

2%

18%

10

2.8

100%

5%

22%

20

3.1

100%

6%

25%

50

3.85

100%

6%

30%

100

4.6

99.9%

15%

33%

结果分析

通过以上数据分析,TPS,交易成功率,资源使用情况都符合性能指标要求。基本上达到了需求要求的性能指标。运行过程中没有发现内存泄漏、连建池不足等问题。

5.3.    稳定性测试

主要考察系统在一定的负载情况下,系统是否一直正常运行(24小时),系统是否中途会宕机或者内存泄漏的现象。

并发100个用户CRM所有主要场景混合压力测试,运行24小时,最终结果正常,没有发现内存泄漏和服务器死机现象,CPU使用,内存占用使用都在正常范围内。

6.     优化过程描述

经过3轮的稳定性测试,通过稳定性测试发现并解决问题如下:

1、 问题描述:部分场景响应时间慢

解决方案:通过增加数据库索引、重写部分前台SQL;

2、 问题描述:并发10个用户运行5分钟就连建池不足

解决方案:调整WAS相关参数,解决代码中连建池未释放缺陷;

3、 问题描述:并发50个用户运行20分钟就内存泄漏

解决方案:分析HEAPDUMP文件,找出问题代码并解决;

4、 问题描述:系统日志中的错误信息

解决方案:分析系统日志的错误信息,并解决代码问题;

5、 问题描述:并发100个用户运行12个小时,日志存在有PAGESIZE不足

解决方案:调整DB2的PAGESIZE设置;

7.     测试结论和建议

通过本次性能测试,在测试环境下,WAS单节点能稳定支持100个并发用户使用系统。按照经验,100个并发用户约等于800~1000个用户使用,按照目前兴化农商行的用户数600多人,已经完全满足,后续省联社版本,可以采取4台PC-SERVER(16C32G),做WAS集群,每台部署6个节点,按照单节点支持800~1000用户使用,预计可以支持19200~24000人同时使用系统,基本满足当时的系统设计,后续随着用户量增加还可以通过增加PC-SERVER集群,来支持系统的灵活扩容。