性能测试方案设计思路 ②

2017-05-08  本文已影响0人  WinterM9

二、系统分析

结合需求分析中第3点,分析系统架构。

1)请求顺序、请求之间相互调用关系

2)数据流向,数据是怎么走的,经过哪些组件、服务器等

3)预测可能存在性能瓶颈的环节(组件、服务器等)

4)明确应用类型 IO型,还是CPU消耗性、内存消耗型-> 弄清楚重点监控对象

5)关注应用是否采用多进程、多线程架构-> 多线程容易造成线程死锁、数据库死锁,数据不一致等

6)是否使用集群/是否使用负载均衡

了解测试环境部署和生产环境部署差异,是否按1:1的比例部署

通常建议测试时先不考虑集群,采用单机测试,测试通过后再考虑使用集群,这样有个比较,比较能说明问题

参考阅读“浅谈web网站架构演变过程 ”:http://blog.csdn.net/qiaqia609/article/details/50809383

三、业务分析

1)明确要测试的功能业务中,功能业务占比,重要程度。

目的在于

<1>明确重点测试对象,安排测试优先级

<2>建模,混合场景中,虚拟用户资源分配,针对不同业务功能施加不同的负载。

2)明确下“需求分析-指标分析”中相关业务功能所需基础数据及数据量问题,因为那块需求分析时可能只是大致估算下,评估指标是否合理,需要认真再分析下

四、用例设计

1)用例设计

通常是基于场景的测试用例设计

<1> 单业务功能场景

运行测试期间,所有虚拟用户只执行同一种业务功能某个环节、操作

<2> 混合业务功能场景

运行测试期间,部分虚拟用户执行某种业务的某个环节操作,部分虚拟用户执行该业务功能的其它环节

或者

运行测试期间,部分虚拟用户执行某种业务功能,部分虚拟用户执行其它业务功能

注:这里用例没说到多少用户去跑,跑多久等,这里只是把他当作相同场景用例下的的一组组测试数据了。

2)事务定义

根据用例合理的定义事务,方便分析耗时(特别是混合业务功能场景测试),进而方便分析瓶颈。

比如,购买商品,我们可以把下订单定义为一个事务,把支付也定义为一个事务。

3)场景监控对象

针对每条用例,结合“系统分析”第4)点,明确可能的压力点(比如数据库、WEB服务器),需要监控的对象,比如tps,耗时,CPU,内存,I/O等

上一篇下一篇

猜你喜欢

热点阅读