vlambda博客
学习文章列表

性能测试过程中,人人要把握的8条原则

性能测试,工具重要吗?对于不会用的人来说,确实很重要,但会的人来说也就那回事“无他,唯手熟尔”。

工具,小酋后面会给大家介绍一些,今天还是让我们先看看,性能测试要做好,过程中需要把握的8条原则:

1、测试前,要弄清楚性能测试的目标和目的

接到性能测试任务,不要拿起就开跑。首要工作是,弄清性能测试需要达到的目标,如“系统支持200人同时并发使用,响应时间不超过4秒”,而不是模糊的“支持200人使用,无明显时延”,两种目标哪个具有操作性一目了然。除了弄清目标,还要弄懂为什么需要达成这样的目标,如普通公司财务系统要求达到第一个目标,有没有必要?

2、环境要尽量真实,能用现场环境最好

为什么提倡用现场环境?因为性能测试结果往往受多方面影响,就算是仿真环境和真实环境也会存在一些差异,如硬件、网络线路、软件环境参数等。

3、测试数据要随机,有历史数据最好,每次执行数据要“清零”

为了给出准确的性能测试结论,必须依靠准确的性能测试数据。每次执行完一次场景后,还需要对数据进行还原(即“清零”),保证下一次执行环境基线与上一次一致,从而得出较准确的结果。

4、同一个性能场景至少执行3次,避免随机因素干扰

正因为影响性能测试结果的因素过多,所以我们才需要对同一场景至少执行3次。如因为突发性的网络波动,导致性能测试结果极为糟糕,执行一次就去分析性能瓶颈,结果并不准确。

5、定位瓶颈和调优,要从软件环境、硬件到程序依次进行

从性能修复代价来看,通常 程序>硬件>软件环境。所以我们要反向进行定位瓶颈和调优,尽量花较少的代价取得较好的结果。(当然,很明显是程序问题导致的瓶颈,如死锁,就不要这样了)

6、疲劳强度测试少不了,性能问题的出现往往需要时间

内存泄露和溢出,数据库连接数耗光致程序卡死等问题,往往都需要系统长时间运行才会暴露。所以,有必要在夜晚,自动执行几次疲劳强度测试。

7、务必保存好每次性能测试的结果,作为后续调优测试的参考点

一定要保留每次性能测试的结果,方便后续调优作为优化效果的参考点(基准)。

8、性能调优时,应保持变量的单一性

每次调优保证变量的单一性,我们才清楚每个变量对性能优化结果的影响,在了解该变量后可以最大化的对结果调优,也方便以后对系统精准调优。

-- End --



文末寄语  起初,我们揣着糊涂装明白;后来,我们揣着明白装糊涂。并不是我们愿意活得不明不白,只是,好多事情,一用力,就会拆穿,一拆穿,就会失去。