首先,成为“合格的”“的”性能测试工程师并不是那么容易,我认为需要具备2个方面的素质:一是要熟练掌握大量的技能和知识;二是要经历一定数量的性能测试项目,才能算毕业。测试项目的经历需要有机会,我主要说下我认为需要掌握的知识技能吧:

  基础:系统学习一种或几种编程语言并熟练掌握。

  学习编程语言是做性能测试的基础,因为涉及到实现测试的时候,肯定涉及到具体的编码。那么我们在学习的时候,可以根据实际的方向定义如下目标:

  A、以主流测试工具(软件)所使用脚本语言为目标。

  语言结合实用工具,有利于提高语言在工具中的应用认识,也同时可以更好的认识测试工具。

  *  LoadRunner(9.5)使用的脚本语言可以为C、C#、VB.NET、VB、java;

  *  Robot则是SQA Basic(类VB);

  *  WebLoad是Javascript;

  *  RTF则是java和.NET。

  B、以当前可接触到的编程语言为目标(目前负责的测试项目)。

  第一呢,学习好被测试项目、系统采用的编程语言对于更好的认识该测试项目、系统有很大的帮助,而且在学习的过程中可以直接请教程序员从而不断的提高自己的水平,因为在学习的过程中,一个可以不厌其烦为你解答的初学者问题或者一些小白问题的老师,很难找到??即使你花钱去培训学习。第二个好处是永不落伍,至少如果有新技术或者新工具出现,因为语言适用的局限,都会采取主流的语言,以便可以更快更好的推广;建议可以系统的学习java、C和.NET中的一种。

  本文出自51Testing软件测试论坛:http://bbs.51testing.com

  C、以主流脚本语言为目标。

  脚本语言有一些,比如Perl、Python、JS和VBS等;这些语言都具有跨平台的特性,简洁高效,语法通俗易学;对于不依赖于性能测试工具的测试框架和体系,使用和实现性能测试更为方便。有的脚本语言第三方类库庞大到无所不能,比如Perl。

  掌握:一种通用规范的性能测试过程。

  虽然说了通用,其实我不认为任何一种工作过程是可以大家都通用的;虽然说了规范,其实我的意思只是过程前前后后每步都有控制可以了。得,不废话了,那么有了基本的编程技能之后,下步我们应该学习性能测试都有什么东西、如何做,其实这些都包含在性能测试过程里。这个阶段,主要学习掌握2个方面:

  A、 性能测试的工作流程。

  * 接到任务后,开始应该做什么?

  * 如何定义测试目标?

  * 如何编写测试计划?

  * 测试场景如何设计?

  * 测试报告如何编写?

  B、 性能测试实现的过程。

  这里我觉得可以学习一下用LoadRunner的整个过程,先是录制脚本(Virtual User Generator),然后场景设计和监视(Controller),后分析结果(Analysis)。自己写工具脚本,过程可以借鉴LR的。

  重点:性能测试目标,串起整个性能测试过程的基础。

  性能测试需求,我这里叫测试目标,我认为是整个性能测试中基础的部分。知道了如何确定测试目标,想办法为了验证测试目标(所有的测试指标)而实现测试,获得测试输出数据和测试目标进行对比分析,然后进行测试汇报。我博客有个以前写的测试需求获取的文章,大家可以参考一下。

  http://www.51testing.com/index.php?uid-6343-action-viewspace-itemid-16336

  规范:测试汇报和经验总结。

  这个不多说了,只说一个我的经历给大家提个醒吧。有一次我做测试报告,写的很详细,画了好多图表,粘了好多数据,结果到了领导那里,被批评了一顿,他根本不看,问我哪个指标不行,哪块儿有问题,我很纠结啊。不得已我以后写报告都写2个,一个简易的,一个详细的。简易的是领导要的那些,详细的包含了很多数据记录和分析。