浅谈性能测试之工具入门

大家都知道性能在互联网项目中起到的成败作用。因此不管是公司招人的测试技能要求,还是从测试人员的职业发展来看,性能测试都是需要掌握的重要技能。那下面我谈谈性能测试怎么入门,特别是怎么通过工具入门。

选择一款性能工具入门性能测试

在对团队成员和学生进行性能测试培训时,通常开篇我都会强调性能测试不等于性能测试工具。但是入门做性能测试,最好从一款性能测试工具开始(比如Loadrunner、Jmeter)。

通常一套完整的性能测试工具涉及到性能测试的各个方面,相关知识可以查看专题《Loadrunner工具原理与分析》。性能测试的流程通常为性能需求调研,性能环境搭建、数据准备、脚本录制、场景模拟、场景运行、计数收集,以及结果分析。这方面的内容可以查看文章《系统性能测试及调优》

起初,通过性能工具的使用,能帮我们更快的投入到性能测试。并且在使用过程中,会让我们逐步去思考问题如:

怎么录制编写性能脚本才能真实模拟一个用户在系统中对关键业务的使用过程?

为什么需要做参数化,参数化在性能测试中的作用?

为什么会设置集合点,集合点的作用是什么?

怎么才能用工具模拟一个真实的用户负载使用场景?

测试运行过程中性能计数器的作用,是否反映了真实的资源使用情况?

性能测试结果应该怎么去分析,怎么进行瓶颈定位?

带着这些疑问,通过我们去做进一步的探索、思考和学习,逐渐使我们纯熟的掌握工具做性能测试。

透过工具掌握性能测试原理

要做好性能测试,光靠工具是远远不够的。所以进入到第二个阶段,我们应该透过性能测试工具,去分析性能测试工具的原理,以及总结性能测试的通用流程步骤,以便更高效的进行性能测试。

武侠小说中有无招胜有招,同样做好性能测试也需要我们脱离具体的某一款工具。我们应该针对项目具体情况,选择合适的手段(不一定是工具)达到性能测试的目的。如:做通信接口方面的测试,可能SoapUI更高效;做页面请求性能方面的测试,httpload可能更快捷;做一般操作方面的性能测试,可能使用Jmeter代价更小。要做好这些选择,都是建立在我们对性能测试原理的掌握程度上。

同时,我们应该总结性能测试的通用流程步骤。一个性能测试是否有效,从它起初的设计就可以看出。如我们要做好性能测试前的需求调研,如准备一个性能测试调研清单,然后再同相应人员沟通交流,这样才能准确的知道市场(或客户)对性能的具体要求。如果这块没做好,那后面可能都是在做无用功。

不断发现短板并提高是做好性能测试的关键

做好性能测试,我总结过程中有四个关键点。一是,前期性能需求的获取,获取真实的性能要求。二是,怎么尽可能的模拟用户真实的使用行为。三是,对测试过程性能计数器的监控和收集。四是,通过分析结果数据定位瓶颈,并给出优化性建议。

要做好上面四个关键点,都需要不断学习和提高才行。这有可能是计算机网络知识,有可能是中间件优化知识,也有可能是数据收集沟通分析技巧等。只有这样不断做提高,才能让我们的性能测试对软件有更多实质性的帮助。

总结

性能测试不等于性能测试工具,但是入门做性能测试,最好从一款性能测试工具开始。做好性能测试,不取决于一款工具多么强大,而往往取决于我们对性能的认知和过程设计。



留言