1.5 安装LoadRunner 12.5
云云:安装LoadRunner 12.5没什么特别的,下载的文件是一个EXE可以执行的压缩包,运行之后会等待解压安装文件,然后出现安装环境准备。
单击“确定”会依次安装相关组件,注意环境中包括了32位的JRE环境,如图1-28所示。
安装组件结束后,稍等片刻后就会弹出安装主界面,单击“下一步”,如图1-29所示。
选择“我接受许可协议中的条款”,单击“下一步”,如图1-30所示。
确认许可协议及安装目录后,就可以开始安装了。等着安装复制文件的进度条走完吧,如图1-31所示。
恋恋:安装的过程好慢啊。
云云:所以趁这个时候我要给你介绍一下LoadRunner这个工具的一些特点和组成了。整个LoadRunner是由三大部分组成的,分别是Virtual User Generator、Controller、Analysis。这三大部分帮助我们解决了性能测试中最关键的用户行为模拟、负载生成及监控、数据收集分析整理,这也是LoadRunner工具流行的一个关键原因。很多别的性能测试工具,要不缺乏成套的工具,要么就做的不如LoadRunner简单易用。
恋恋:这样啊,那么给我具体说一下这三大部分怎么实现用户行为模拟、负载生成及监控、数据收集分析的。
云云:这个说来话长了,不过这里可以先简单给你讲个概念,便于后面的理解。上午我们说过压力测试和负载测试的概念还记得吧?
恋恋:哼,到现在脚还在酸呢,这个账我可记得清楚得很。
云云(冷汗):最近世博会很热闹,你有想过怎么做一个世博会的负载测试吗?
恋恋:这很简单,找很多人,免费给他们发票,让他们去参观就行了啊。
云云:没错,但是这样做成本很高,如果我们要做一个软件的性能测试,我们需要模拟成千上万的用户去操作,这个时候首先我们要做的第一件事情就是先做单用户模拟。也就是说,我们要虚构一个单用户的操作行为。普通的做法是你要自己写代码来做,但是现在高级了,可以通过录制的方法来做。
恋恋(兴奋的):我知道我知道,以前我在大学学习3Dmax的时候要自己建模,自己设置运动轨迹,搞了半天也就只能是一个茶壶飞来飞去一点美感都没,现在有动作捕获技术,在一个人身上装很多感应器,只要人动了,数据就会传回电脑,特别是“阿凡达”他们的新技术都能在脸上做到动作感应。看电影的时候就觉得角色的脸部活动特别真实。
云云:对,确实是这样的。现在很多性能测试工具可以通过录制的方式来获得你的行为,大大降低了性能测试的难度。这里需要注意的是,性能测试工具录制的都是协议,而不是操作。因为操作录制下的有效的性能多用户无法模拟,而协议就可以。
恋恋(不解):哦……
云云:这样说吧,如键盘精灵这种工具,是不是能够录制下来你的鼠标和键盘操作?
恋恋:嗯。
云云:现在录制的操作回放可以实现用户行为模拟,但是你能在一台电脑上模拟多个用户操作吗?
恋恋:这个好像不行哦,因为两个操作是会互相冲突的,而且有些软件在本地不能开两个线程。
云云:LoadRunner是一个基于协议的性能测试工具,它可以录制你的Client和Server相互交流的协议内容,然后通过回放欺骗服务器,从而完成用户行为模拟。因为是基于协议的,所以可以在一台电脑上通过多进程或线程的方式模拟大量用户,从而实现了低成本。
恋恋:大概明白了点。
云云:了解个概念就行了,后面具体一操作就好了,还好你以前学过点TCP/IP,这个会对你后面的学习有很多帮助。
恋恋:那是,我大学的时候多用功啊,哪里像你大学的时候经常逃课。
云云:那不是逃课,那是将有限的时间转化到感兴趣的事情上。
恋恋:羞羞。
云云:上面说到了用户行为模拟,VirtualUserGenerator就是干这个事情的。接着来说Controller。前面通过Virtual User Generator我们获得了用户行为的录制,并且转化为脚本,但是这仍然是单用户的。Controller就是将单用户克隆成多用户的工具,你看到的很多电影都是这样做的。首先构建一个用户的行为,接着克隆成很多个用户,大场面就这样出来了。
恋恋:但是电影里面每个人行为都不一样啊?
云云:嗯,其实如果你注意一下会发现,一般电影中的大场面,总习惯搞得方方正正,因为这样做电脑动画会很简单。但是为了真实地模拟大量用户,我们就应该考虑到每个用户的操作是不同的,这里就需要在脚本里面设置不同的动作。例如我们设置一个用户行为是在24小时内,这个用户8小时睡觉,3小时学习(随机学习不同的课程),2小时吃饭,7小时娱乐,4小时发呆。这些行为都是变动的,当我们将这种用户行为克隆成成千份的时候,我们就会发现他们之间虽然都有这些事情,都花那么多时间,但是由于选择不同,最终实现了真实的映射。
恋恋(点头)。
云云:Controller可以帮助我们模拟多用户,但是仍然需要Virtual User Generator中的脚本足够的智能化和多选择化,这与人和人不一样,就是因为人有独立的选择权是一个原理。除了模拟多用户,Controller还提供了监控的功能,来监控我们关心的响应时间、吞吐量、资源利用率等,为我们分析调优打下基础。
恋恋:明白了。
云云:最后就是Analysis了,这个东西看起来很简单,用好了却很难。你可以把它当做一个数据收集器,或一个巨大的数据表格,放在里面就是各种数据和表格,好像没用,但是你要从这些数据中找出问题,并且通过它做出美观实用的报告就有些难度了。
恋恋:是不是就和Excel一样啊,生成一个表格很容易,做公式,做数据透视很难?
云云:聪明,就是这样。要安装完了,这里会弹出一个Windows 10的防火墙提示,由于LoadRunner需要对网络进行访问,那么这里我们设置“允许访问”就行了,如图1-32所示。
接着出现证书安装界面,(通过证书代理模式,LoadRunner可以录制Chrome浏览器)这里我们不指定证书安装,单击“下一步”,如图1-33所示。
接着出现安装完成界面,如图1-34所示。
好了,LoadRunner安装完成,接着会弹出License信息和一个关于LoadRunner 12.5介绍的HTML页面,如图1-35所示。
在LoadRunner12.5中已经没有了试用期的概念,标准的Community版本自带50个License支持常见的主要协议。而HP Network Virtualization也会同时在后台开始安装,如图1-36所示。
安装完毕后需要重启,单击“重启”完成整个LoadRunner 12.5的安装。
安装完成以后会在开始菜单新建一个HP Software的项目,如图1-37所示。
在菜单中选择“LoadRunner License Utility”启动LoadRunner的License管理器,如图1-38所示。
在LoadRunner的License
中包括了你所能模拟多用户的数量及对应的协议,还有能够支持的监视器和模块。常见的License有两种,一种是Web的,说明该协议支持常见的HTTP协议;另一种是Global,说明支持所有的协议。安装完成后我们有Web 50用户无限使用,基本满足我们平常学习需要了。
恋恋:HP真小气,为啥不给个1000个用户Global协议使用啊。
云云:人家也要赚钱的。
恋恋:好了,现在工具安装好了,我知道概念了,接下来呢?
云云:接着我给你演示一个性能测试的案例。
恋恋:终于到动手阶段了,我都手痒了。
云云:手痒就打手。
**小结
了解下载和安装LoadRunner的步骤,掌握LoadRunner工具的组成部分、实现原理及许可协议的设置。**