一切福田,不離方寸,從心而覓,感無不通。

OPENSTA使用介绍

1.   OPENSTA简介

OpenSTA是一个免费的、开放源代码的web性能测试工具,能录制功能非常强大的脚本过程,执行性能测试。例如虚拟多个不同的用户同时登陆被测试网站。

 

目前比较著名的并发性能测试工具有Rat ional Robot 、QALoad、LoadRunner 和微软的WAS 等。这其中QALoad、LoadRunner、Rational Robot 都是比较不错的商业测试工具。微软的WAS是一个免费的测试工具,但有一定的局限性。

OpenSTA 是专用于B/S结构的、免费的性能测试工具。它的优点除了免费、源代码开放的优点外,还能对录制的测试脚本进行,按指定的语法进行编辑。在录制完测试脚本后,可以对测试脚本进行编辑,以便进行特定的性能指标分析。其较为丰富的图形化测试结果大大提高了测试报告的可阅读性。

Op enSTA 基于CORBA 的结构体系,它通过虚拟一个proxy,使用其专用的脚本控制语言,记录通过proxy 的一切HTTP/S traffic。通过分析OpenSTA 的性能指标收集器收集的各项性能指标,以及HTTP 数据,对系统的性能进行分析。

优点:压力测试引擎具有可扩充性,可以完成打规模的压力测试。提供脚本语言支持。

 

2.   OPENSTA安装

下载OPENSTA安装包,双击安装即可。

3.   测试入门

首先打开OpenSta Commander,主界面如下:

 

该界面主要包括Repository(仓库),用于存储测试相关数据,单击仓库中的相关内容,主视图回显示与之相关的内容。

 

一个完整的测试一般包括3个方面的内容,首先录制测试脚本,然后定制性能采集器,最后把测试脚本和性能采集器组合起来,组成一个测试案例,通过运行该测试案例,获取该测试内容的相关数据。

可通过如下步骤录制新脚本:

1) 鼠标点“Scripts ”,通过右键菜单“New Script ”->“HTTP”生成新脚本,脚本名称缺省为NEWSCRIP。

2)双击新脚本,打开Script Modeler 窗口,在Options菜单中设置Browser 和Gateway,一般情况下,保持Gateway 的缺省设置。

3)按工具栏中的红色圆钮,自动打开指定的浏览器,输入需要录制的系统URL,显示被测试网站的首页内容。在登陆成功之后,执行各个既定的操作步骤。按工具条上的方框按钮,或直接退出浏览器,可以停止脚本的录制,这是在Script Modeler窗口中将看到被录制下来的脚本语句。

如下图

 

 

生成性能指标收集器(Collector)

性能指标收集器(Collector)是用户定义的一组问题,决定在测试过程中哪些性能指标需要记录。包括两种类型:

1) NTPerformance Collectors 用于采集运行WinNT 或Win 2000 的主机的性能指标。

2) SNMP Collectors 用于采集主机和其他运行SNMP agent 或proxy SNMP agent 的SNMP 数据。

Collector 的设置:

1) 鼠标点“Collectors”,通过右键菜单生成新指标收集器,缺省为NEWCOLLECTOR。

2) 通过browse Queries 浏览并设置需要收集的性能指标,如下图

 

 

组成测试环境

在Tests中新建一个NEWTEST,将测试脚本和性能指标收集器拖到该Test 中,如下图:

 

 

按工具栏中的,执行测试,测试过程中可以查看“Monitoring”页签的内容,测试结束后,该页签为空。测试结束后,点工具按钮下方的Results页签,显示所记录的测试结果数据,如下图。

 

 

需要注意,OpenSTA是GUI界面,同时也支持命令行、批处理文件,但不支持使用嵌入技术(如Applets,ActiveX,Flash或javascript),以及通过HTTP/S以外的协议访问Web Server。

4.   分布测试

OPENSTA支持分布测试,可以把测试任务指派到其他机器上运行,前提是另外的机器必须安装OPENSTA,并且他的NameServer必须运行起来,要在其他机器上运行测试任务,需要在组织测试案例时,设定host属性,见下图:

 

 

在Host Name设定相应的主机名,然后执行该任务即可。

 

5.   并发测试

OPENSTA支持并发测试,可以模拟多个用户同时多次发出http请求,要在机器上运行多个用户测试任务,需要在组织测试案例时,设定VUs属性,见下图:

有关参数的解释见图示说明.

转自:http://www.cnblogs.com/wishma/archive/2008/07/21/1247637.html