lr用javaVuser做性能测试

上传人:tia****nde 文档编号:36843535 上传时间:2018-04-03 格式:DOC 页数:50 大小:865KB
返回 下载 相关 举报
lr用javaVuser做性能测试_第1页
第1页 / 共50页
lr用javaVuser做性能测试_第2页
第2页 / 共50页
lr用javaVuser做性能测试_第3页
第3页 / 共50页
lr用javaVuser做性能测试_第4页
第4页 / 共50页
lr用javaVuser做性能测试_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《lr用javaVuser做性能测试》由会员分享,可在线阅读,更多相关《lr用javaVuser做性能测试(50页珍藏版)》请在金锄头文库上搜索。

1、众所周知,Java 语言是一门非常适合网络开发的语言,用 Java语言进行性能测试脚本开发将会大大提高测试开发效率。LoadRunner 中提供了对 Java 虚拟用户的支持。Java 虚拟用户依托于 JDK,这大大扩充了 LoadRunner 的脚本开发功能。测试人员既可以用 Java 虚拟用户来测试基于 Java 的应用系统的性能,又可以使用 Java语言的强大开发脚本功能来测试其他平台的系统性能。本章将和读者一起探索 LoadRunner 的 Java 世界,重点讨论如何开发 Java 自定义的虚拟用户脚本。本章主要内容如下:n 认识 Java 虚拟用户n Java 脚本开发基础n Ja

2、va 算法测试案例7.1 认识 Java 虚拟用户7.1.1 Java 虚拟用户协议Java 虚拟用户脚本主要有 Java Vuser、Corba-Java、RMI-Java、EJB 等类型。这些类型的虚拟用户脚本均可以用 Java 语言来手工编写。下面将对各类 Java 虚拟用户简单地进行介绍。Java VuserJava Vuser 是自定义的 Java 虚拟用户脚本,脚本中可以使用标准的 Java 语言。这种虚拟用户不可以录制,只能采用纯手工编写,其适用范围和 C Vuser 一样,非常广泛。本章主要探讨 Java Vuser 的开发方法。Corba-JavaCorba-Java 类型的

3、虚拟用户主要用来测试用 Java 编写的、使用Corba 应用程序或小程序的性能,用户可以先运行 VuGen 录制的脚本,然后使用标准的 Java 库函数以及 LoadRunner 特有的 Java 方法来增强该脚本。RMI-JavaRMI-Java 虚拟用户适用于测试 RMI(远程方法调用)Java 应用程序或小程序。选择 RMI-Java 用户进行录制,VuGen 可以创建对应的 Java 脚本。完成录制后,可以使用 JDK 或自定义类,通过标准的 Java 代码来增强或修改脚本,还可以通过特定于 LoadRunner 的Java 方法增强该脚本。EJBEJB 虚拟用户专门用于测试 Ent

4、erprise Java Beans 对象。采用 EJB 协议,VuGen 会自动创建脚本以测试 EJB 功能,无需录制或编程,这和标准的 Java Vuser 明显不同。在使用 EJB 协议类型的虚拟用户生成脚本前,需要指定 JNDI 属性和关于应用程序服务器的其他信息。LoadRunner 的 EJB 检测器首先扫描应用程序服务器并确定哪些 EJB 可用;接着选择要测试的 EJB,LoadRunner 将生成要测试每个 EJB 方法的脚本,并为每个方法创建事务,便于度量其性能并找出问题。需要注意的是,创建 EJB 虚拟用户测试脚本必须在应用程序服务器主机上安装 LoadRunner EJB

5、 检测器,而且检测器必须处于活动状态。EJB 检测器是一个独立的代理程序,必须将其安装在要扫描查找 EJB 的每一台计算机上。安装 EJB 检测器前,计算机上还需要安装有效的 JDK 环境。本书中将以 Java Vuser 为例来讲解 Java 虚拟用户的开发和使用方法。Corba-Java、RMI-Java、EJB、Jacada Vuser 等类型的虚拟用户使用方法可以参考 LoadRunner 的联机帮助手册,但是其手工脚本的开发方法与 Java Vuser 是一样的。在“新建虚拟用户”对话框中的“自定义”或“全部协议”类别下选择“Java Vuser”即可创建空的 Java Vuser

6、脚本,如图 7-1 所示。在自动生成的脚本中,vuser_init、vuser_end 部分没有任何内容,Actions 部分生成的脚本如图 7-2 所示。对于 Java 类型的虚拟用户,可以编辑 Actions 类,而 init、end 部分则不可以进行编辑。在Actions 类中,有三个方法 init、action 和 end,通常在 init 方法中编写初始化代码、在 action 方法中编写业务流程、在 end 方法中编写诸如释放资源之类的代码。图 7-1 选择 Java Vuser 协议图 7-2 Java Vuser 自动生成的 Actions 部分Java Vuser 脚本中可以

7、放置任何标准 Java 代码,这也是 Java 虚拟用户的魅力所在。7.1.2 Java 虚拟用户适用范围LoadRunner 完全支持 C 语言,原则上可以用 C 语言实现任何想要录制的功能。但是 C 语言的特点决定了这样做是不现实的:一是性能测试脚本开发成本非常高;二是很多企业的测试人员开发基础不好。因此,性能测试开发多选用 C+、C#、Java 等面向对象语言因为这类语言既有成熟的集成开发工具,又有庞大的类库来支撑,测试脚本开发速度会更快。下一章将重点介绍如何用.NET 来开发性能测试脚本。Java 虚拟用户适用范围非常广,归纳起来主要有两大类:一类是不太适合录制的业务功能点的性能测试,

8、例如网页上 Http 文件的下载过程、视频播放等;另一类是基于 Java 语言开发的应用系统的性能测试,这类应用更适合采用 Java 虚拟用户进行测试。用 Java Vuser 实现无法录制的测试需求这类测试需求往往关注于对服务器产生的压力,重点测试在一定压力下服务器的负载情况,为评估、部署、调优系统提供参考。在这类测试工作中,Java 的作用仅是一门语言,用于辅助测试人员完成测试程序的开发。在性能测试工作中,不能录制的测试点很多,主要有以下几类:l 含有控件的 Web 应用在 Web 应用中,很多包含一些插件的浏览器应用经常不能录制。这类应用往往涉及很多协议,因此录制起来不是特别方便。对于这

9、类应用,可以用 Java 语言调用其功能来完成用户行为的模拟。l 一些和媒体播放、文件下载等相关的应用媒体播放或文件下载等过程的录制往往不容易控制,如果是应用基于 P2P 的协议,则会更加复杂。因此,这类测试只能由测试人员开发虚拟用户脚本来完成。用 Java Vuser 测试基于 Java 语言的应用系统性能相比前面,基于 Java 语言开发的应用系统,在性能测试中采用 Java 虚拟用户更显得“门当户对”。这类虚拟用户主要应用在下面两类测试中:l 核心算法或业务的执行效率对银行、电信等大型的基于 J2EE 的架构应用系统中,开发阶段的性能测试是必不可少的。为了降低后期遇到性能问题的风险,往往

10、在开发阶段进行一些核心业务的性能测试。这些核心业务或要求较高的执行效率,或者要求支持较多用户的并发。因此,可以利用Java Vuser 来测试这些业务的执行效率。l Java 应用中不能录制的业务模块很多时候,一些 J2EE 架构的业务系统用 LoadRunner 录制起来不是特别方便,例如一些 Java 智能客户端程序。这时可以手工编写测试代码,完成测试任务。与非 Java 应用相比,Java 应用中不能录制的业务功能更适合采用 Java 虚拟用户,因为可以直接对一些方法进行调用。由于 Java 语言的强大功能,Java 虚拟用户的应用远不止上面这些,读者可以慢慢挖掘。7.1.3 脚本开发环

11、境配置Java 虚拟用户需要 Java 开发与运行环境的支持,因此首先要安装 JDK。JDK 是 Java 开发工具包的简称(Java Development Kit),Sun 公司将 JDK1.2 以后的版本通称为 Java 2。JDK的另外一种叫法是 J2SDK(Java 2 Software Development Kit),现在比较常见的 J2SDK 是 1.4 以上的版本。JDK 可以从 http:/ Java 虚拟用户开发与运行环境的配置。在本章中,JDK 安装在“C:j2sdk1.4.1”路径下,LoadRunner 安装在“D:Program FilesMercury Inte

12、ractiveMercury LoadRunner”目录下,系统调试环境以 Windows XP 为例。第一步:在桌面上右键点击“我的电脑”,进入到“系统属性”设置界面,切换到“高级”选项卡,如图 7-3 所示。第二步:点击图 7-3 中的“环境变量”,进入到环境变量配置界面,如图 7-4 所示。第三步:在图 7-4 的“系统变量”中,选中 CLASSPATH,点击编辑,如果没有 CLASSPATH,则点击“新建”,同样会进入图 7-5 所示的界面。通常安装了 LoadRunner 等软件的系统会创建 CLASSPATH变量。这里需要注意的是,一定要在 CLASSPATH 变量值的最前面输入当

13、前路径“.”和 JDK 的类库路径,例如“.;C:j2sdk1.4.1lib; C:j2sdk1.4.1jrelib;”,否则将可能导致 Java 虚拟用户的运行错误。例如:在图 7-4 中,CLASSPAT 变量值是“.;C:j2sdk1.4.1lib; C:j2sdk1.4.1jrelib;D: Tomcat-5.0commonlib; D:Program FilesMercury InteractiveMercury LoadRunner classes;D: Program Files Mercury InteractiveMercury LoadRunnerlib”。图 7-3 系统

14、属性界面图 7-4 环境变量设置图 7-5 系统类路径设置第四步:在图 7-4 的“系统变量”中,选中 Path,点击编辑,会进入图 7-6 所示的界面。在变量值的最前面填上 JDK 开发工具包的 bin 目录路径。图 7-6 系统 Path 设置这里仍然要在 Path 变量值的最前面输入当前路径“ ”和 JDK 的 bin 目录路径,如“.;C:j2sdk1.4.1bin;C:j2sdk1.4.1jrebin;”,否则Java 虚拟用户可能产生运行错误。例如在图 7-6 中,Path 变量值是:“.;C:j2sdk1.4.1bin;C:j2sdk1.4.1jrebin;D:Program F

15、ilesMercury InteractiveMercury LoadRunnerbin;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem; C:Program FilesIntelWirelessBin”。开发环境的配置会因操作系统和应用程序的安装路径不同而有所差异,根据实际情况进行相应的修改即可。7.2 Java 脚本开发基础要想掌握 Java 虚拟用户的使用,测试脚本开发人员至少需要两方面的技能:一是具有 Java 语言方面的技能,并熟练使用至少一种Java 集成开发工具,例如 Eclipse;二是掌握 LoadRunn

16、er 的 Java API,Java API 是访问 Vuser 函数的基础,通过 LoadRunner 的 Java API 可以在脚本中很容易地创建事务与并发点、获取用户信息等功能。不难看出,Java 虚拟用户要求测试脚本开发人员具有良好的开发基础,否则 Java Vuser 很难发挥应有的作用。限于篇幅,本节在 Java 测试开发基础部分,仅对 Java 语言方面的知识做概要介绍,读者可以通过 Java 方面的书籍进行学习;在 LoadRunner 的 Java API部分,将会介绍一些相对重要的方法。7.2.1 Java 虚拟用户开发基础Java 语言基础Java 语言博大精深,即使资深的 Java 开发工程师也未必敢自称精通,测试人员就更不容易成为“高手”了。但是如果仅仅为了满足测试开发,还是很容易快速入门的。表 7-1 列出了一些进行 Java 虚拟用户开发的知识点,读者

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号