LR场景设计、点击率和用户数的相互联系
1、场景设计、点击率和用户数关系图
2、如何获得需要的测试数据
测试的数据来源于:1)需求;2)系统日志。
从日志中获取数据,可以采用日志分析工具,常用的日志分析工具有Awstat和WebTrends,对于它们的区别是前者是轻量级分析工具,分析速度快,报告简单实用,后者是重量级工具,分析速度慢,报告丰富多样。
估算虚拟用户数,虽然有多种方法,但是这里重点推荐以下两种方法:
方法一,采用Little`s Law方法,它是从服务器端提出的一种计算虚拟用户数的方法。
方法二,采用段念书中提到的公式。
3、用户速率不等于并发用户数
在测试的时候,通常想获取系统的并发用户数、峰值用户数,这些数据都可以从日志中获取,因此在日志中都会关注当日、月、年的用户访问量,我们可以把这些数据平均到每秒访问用户数。此时的平均每秒访问用户数难道就是我们要找的平均并发用户数吗?其实不是的。用户速率不等于并发用户数。如下图,纵坐标代表虚拟用户,横坐标代表时间,每条线段代表用户的一个行为,Start of Model到End of Model代表测试开始和结束过程,持续1个小时。
从服务器角度看,在1个小时内有23个用户访问系统,换个角度理解,每小时有23个用户在访问系统,在Start of Model到End of Model之间任意一时刻都只有10个用户在访问系统。
4、点击率、用户数该从哪里入手
缩小话题范围,这里以用户体验感为测试目标,从而提出进行性能测试的重要性是模拟真实的用户行为,因此提出如何模拟用户行为?通常进行性能测试的时候,采用估算虚拟用户数然后进行相关的压力测试、负载测试。但是这样测试出来的结果正确吗?很显然我们无法断定,因此提出了对测试结果的评估。
从估算虚拟用户数开始,以基于用户数的方式设计场景,进行性能测试,获得测试结果和点击率,将测试得到的点击率和日志中分析的点击率进行比较,来验证测试的效果。
从日志中获取的点击率或者页面请求率开始,以基于目标的方式设计场景,进行性能测试,获得测试结果和用户数,将测试得到用户数和日志中估算的虚拟用户数进行比对,来验证测试效果。
通过上面的方法都可以完成测试且能保证测试结果的准确性,但是点击率和用户数从哪个开始比较好呢?个人观点从点击率可以更好的去模拟真实用户对服务器的压力,而当需求中有明确的并发用户数要求的时候,从用户数开始比较好。