在用LoadRunner打压时,经常会用到事务和集合点这两个策略。那么问题就来了:插入集合点和插入事务的前后顺序应该是怎样的呢?加我VX:atstudy-js 回复“测试”,进入 自动化测试学习交流群~~
下面我们来做一个实验:
使用同一个脚本,集合点策略为集合100个用户后,对服务器进行打压。
1、集合点设置在开始事务代码后面:
对应的TPS图表:(蓝色线为start事务,且start事务和action事务的时间曲线完全重合)
2、集合点设置在开始事务代码前面:
对应的TPS图表:(蓝色线为start事务,且start事务和action事务的曲线没有重合)
通过两张图表对比不难发现:
将事务设置在集合点之前时的时间比事务设置在集合点之后的时间平均值要多0.2s左右。
这是为什么呢?让我们来分析一下:
第一种情况,集合点设置在开始事务代码后面,其运行过程如下:
从图可以看到,当虚拟用户运行到开始事务起点时,事务就开始统计时间,但是由于集合点尚未集合完毕,由此可见,事务统计的时间多了集合的时间。
第二种情况,集合点设置在开始事务代码前面,其运行过程如下:
从图中可以看到,虽然LR也需要集合点集合完毕,但是由于事务此时还没有计时,所以统计出来的时间更能反映出真实响应时间。
综上所述:我们在插入集合点和事务时,需要将集合点插入在开始事务代码之前。
添加微信:atstudy-js 或者扫描下方二维码,备注“博客”邀请你进入Python自动化测试学习交流群~