【前言】
性能测试并不是一个很新的名词,但自从LoadRunner进入国内并流行,带动了性能测试的潮流,一时间测试人员的口边已经离不开这个HP的性能测试神器。如果你不会使用它进行性能测试,出门都不好意思和同行打招呼,似乎掌握了该工具就成为了测试的资深专家。可以说性能测试的流行从某些角度也反映了国内软件测试技术的进步,从过去的手工化功能测试逐步开始涉及通过开发编程的方式对系统进行功能测试,而现在进一步地开展性能测试。
为什么写这本书
看过很多性能测试方面的书,也在论坛上不断地解决各种问题,但总会发现新手问题反复发,高手问题无人解的问题。仔细一看很多书都有介绍,但是要么高深莫测要么缺乏实用性,而且出现了一年多的LoadRunner 9.x系列版本没有任何一本书来进行全面的介绍。在培训中,每次解决各种问题的同时都感到一点点厌倦,从而考虑把遇到的各种问题整理出来,随着整理过程的深入,我渐渐发现内容不少,而在朋友和同事的指引下,这本书就诞生了。限于作者的经验和水平,书中的不足和纰漏之处在所难免,恳请广大读者批评指正。
本书面向的读者
本书并不是完全为初学者设计的,因为性能测试本来就不是一个新人能够涉及的内容,想要掌握性能测试需要多年的测试基础及广泛的知识面。
对于一个刚刚涉及性能测试的朋友来说,这本书可以解答你遇到的所有问题,虽然刚开始看会稍显吃力,但随着逐步的深入,会越发轻松。对于已入门的朋友,在简单地了解性能测试基础及LoadRunner的实现原理后,本书的深度会让你进一步看透一些朦胧的东西。而对于高手来说,工具的介绍和后面的脚本开发可以帮助你进一步扩展思路。
本书作者
陈霁,51Testing论坛中ID为云层,集上海人和四川人的优缺点于一身。自认公司内皮肤最白,经常被学员笑称“云版”或“棉花糖”老师,现任51Testing高级讲师,主攻性能测试。
2001年至2004年在多家软件公司任职测试工程师,在底层摸爬滚打多年,对各种类型的软件测试都有所涉及。
2004年至2007年在Gameloft上海部曾任测试经理、SQA及SCM。
2007年中加入51Testing任职高级讲师一职,负责软件测试相关培训的授课工作。
牛霜霞,西安电子科技大学控制理论与控制工程专业硕士,ISO 及CNAS内审员,河南电力试验研究院高级工程师。具有多年从事软件开发、软件测试及质量管理工作的经验,负责过多个大型项目的设计、开发、测试及维护工作。
龚永鑫,计算机、通信工程双专业。曾在国内知名IT公司从事多年大型系统的研发工作,对复杂系统的性能瓶颈定位和规避有着独特的视角。
后加盟中国移动从事IT系统运营管理工作,所设计的信息管理系统、卫星地面站监控系统、变更管理平台多次获得省部级和通信协会科技创新奖项,作为核心设计人员设计的业务运营支撑系统,已是中国移动六个省份核心生产系统。
本书由陈霁、牛霜霞、龚永鑫共同编写,其中陈霁负责第1~7章的编写工作,牛霜霞负责第1、2、5、7章部分内容及附录部分(共计约5万字)的编写工作,龚永鑫参与部分章节的修改、编写工作。
本书的结构
本书分为7章,其内容如下表所示。
从本书能收获什么
对于读者来说,通过本书的学习可以完全掌握LoadRunner 9.1的各种功能,并了解性能测试的实施过程,做到理论联系实际。本书中所有的例子都可以在本地或者权威网站进行实践,包括项目实践的所有内容也可在本地完成,从而真正实现自学成材。虽然本书是介绍如何使用LoadRunner这一性能测试工具来进行性能测试,但是书中还穿插了大量的辅助工具,从而弥补了LoadRunner自身工具的不足。在实战阶段提供了详尽的性能需求分析方法、测试数据构造方式、性能测试分析方法及性能测试团队构建方式,让菜鸟迅速成长为高手。
致谢
测试做久了总习惯挑别人毛病或者具备一点完美主义精神,看了很多论坛上的提问和市面上的书籍后,我自信地认为能写本“比别人好点的书”。当开始执笔时,一本“完美”的书一直压迫得我喘不过气来,经过多次辗转,最终这个相对“完美”的版本没有胎死腹中,这里不得不感谢那些在这一年中和我互相学习分享知识的朋友。
对我来说最幸福的事情是在进入高中时拥有了一台小小的学习机,当第一次接触到键盘,第一次编写Basic小程序时仿佛失了魂,按照现在的说法也就是“宅”了。这里要感谢我的父母,他们并没有阻止我沉迷于计算机之中,从而让我找到了自己的兴趣并进一步将兴趣转化为了职业。
第一次接触软件测试是在2001年,作为一个刚毕业、自我感觉良好的大学生,我只身来到了上海。四处碰壁后“委身”于一家软件公司任职测试工程师,就这样误打误撞地进入软件测试行业,多亏当时面试我的原IBM测试经理田芳女士给了我这样的机会。师傅领进门,修行靠个人,待我明白这个道理并奋发努力后,在Wang Sheng和Steven Ye的栽培下我逐渐成为了独当一面的测试经理,而在不如意的那段时间里飞雨给了我很多鼓励和人生规划上的指导。
加入51Testing对我来说是个不小的转变,作为原Gameloft的测试经理,游戏测试及管理和软件测试还有一条不小的鸿沟,而性能测试以前并不是我的主攻方向,期间受到Sincky、海龙、老朴、徐林林的细心指点,使我对性能测试的理解逐步加深,也逐渐接过了性能测试培训的教鞭。而海龙作为我的老师,本书的很多思想流程也是继承于他,正是因为海龙“忙”而我“闲”,才会由我代笔完成了本书所有的编写工作。
在本书的编写过程中,周春江、宋锋、吴晓红、陈文广等老师都在各个方面给予了我很多支持。最后还要感谢可爱的学员们,在我授课的过程中给了我不少有用的建议和灵感。而学员Lucia、井淼、牛敏、方闻、小虫虫帮助我完成了Beta和RC1版本的测试工作,并在校稿中做了很多的工作,包括内容的收集、评审和整理,在此表示感谢。