您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件测试技术 > 性能测试 > 正文

聊聊自己对“性能测试”的理解

发表于:2018-07-21 作者:邱功圆 来源:飞测
成长在于学习,实践和总结,今天我们性能测试大师 心&阳(邱功圆) ,给大家带来自己对性能测试的理解,我们一起学习学习:

对于性能测试来说,个人认为知识面要比知识深度更加重要一点,除了测试工具和轮,至少要同时要对操作系统、网络、数据库、前端、语言、通讯协议都有所了解。然而在当今这个信息高速传递的社会,特别是IT行业,先进的知识与技术是一个企业立于不败之地关键因素。因此新技术新架构新思想也是我们需要了解和熟悉的。

作为一个合格性能测试工程师,必须要有大局观和系统化的思维,要站在整个系统测试的角度看问题。一个优秀的性能工程师必须要有相当的知识广度。否则在测试期间,你必须依赖外界援助,例如:开发、运维、DBA。不仅效率不高,更关键的是可能会被误导,漏掉很多性能BUG。我常常遇到团队童鞋们在压测时一看到TPS降了或者升不上去,就死盯着应用,就着急的去分析线程或做CPU Profiling。找不到原因后有时问到我时,我习惯的第一句总是:系统架构是怎么样的?你看过数据库码?看过压测客户端码?一定要先从全局看问题,系统(操作系统、数据库、应用程序)整体配置和常见优化是否到位,然后再隔离到是应用层面、DB层面抑或是压测客户端层面后再进一步深入定位问题。

一名合格的性能工程师应该包含如下能力:

1)熟悉Java(包括JVM内在机理)/c/c++。理由很简单,主站大部分的外围应用和中间件都是JAVA写的,底层核心系统是c/c++写的。

2)精通linux管理和shell编程。理由更简单,shell熟练与否非常大程度决定了一个工程师的工作效率。例如可以用脚本实现linux基本配置的优化,jdk、监控自动化安装等。

3)对数据库管理和性能优化有自己的实践和心得(数据库永远是个性能要点)

另外,性能测试还会接触各种各样的组件,MQ、hadoop、Elasticsearch、Flume、FastFDS等等,我们很难对每个组件都进行深入研究,但是需要了解它的原理和应用场景,方便定位和问题的排除。说到底,做性能一是有相当的知识广度,二是经验积累。
下面是我吸取前人的经验整理出来的性能测试技术体系:

性能测试的常识你知道几个?

性能测试环境的重要性和需要注意,你知道多少?

下面就是性能测试专家需要考虑的内容了

来个全的,可能看不清楚,想要获取全量的请到飞测QQ群获取

本次到此, 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注、转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是我们期待的方向,有更多兴趣的欢迎切磋,我们微信订阅号,联系方式如下: