首先,场景的设置如果根据生产环境中的数据来统计整理,那是最好的。在我最近做的项目中,就是拿生产环境中的几个月的数据统计整理,并最终计算出具体的每一种类型的交易所占的TPS值。在场景设定时,依据得到的TPS来设定场景。完全模拟生产环境的TPS数据量。然后再做一些比生产环境更大的一些场景。这是根据生产环境来分析的。
其次,如果没有生产环境的数据,我的建议是:先做基准测试和容量测试。我们先做少量(比如:3、5个用户)用户的场景,以便给后面的测试做个参考。接着,我们可以这样做(在这里,我先忽略对脚本中相关内容的描述。),忽略所有的思考时间和pacing,从一个用户一直ramp up,直到系统出现瓶颈为止。其实我们可以观察一下,当响应时间上升时,TPS必然增长缓慢。这时,已经可以说明系统的处理达到了上限,但是由于我们的响应时间是在一个范围内可接受的,所以我们还可以接着加压,直到响应时间不可接受。
再者,如果我们希望设置思考时间和pacin这样的延时,同样也可以用上面提到的方式来做。但是有一点很重要。你的性能测试目标是什么?如果没有目标,性能测试就没有停止的时候。如果有目标,达到目标即可。有些公司的性能测试目标提的很泛泛,如果是这样的话,将导致性能测试处在一个很尴尬的位置里:因为你不能精确的达到那个目标。