OpenSTA介绍

发表于:2007-11-01 15:34

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

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

rr

1-5生成收集器
2)通过browse Queries浏览并设置需要收集的性能指标。(各个性能指标的含义不是这篇文章所包含的内容,这里不做介绍)
 
4、组成测试环境
        与脚本和性能收集器同样的方法,在Tests中新建一个NEWTEST(下图中已将新建的Test进行了重新命名), 将测试脚本和性能指标收集器拖到该Test中,如下图;

rrrr

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

t

1-7 测试结果界面
        至此,读者对如何使用OpenSTA这个测试工具应该有了一个大概的了解,如果需要详细了解使用的细节,可以查看该工具的使用手册,不过是E文的哦:)。需要下载OpenSTA工具的朋友可以访问网站http://www.opensta.org/,使用手册也可以在这个网站上下载。下面,介绍如何在OpenSTA的测试脚本中引入变量,并给变量赋不同值的过程。网络应用系统一般都会有一个登陆网页,需要用户输入正确的用户名称和密码,经过系统验证后,用户才能进入该应用系统。在使用OpenSTA录制测试脚本时,输入的用户名称和密码将被OpenSTA记录在脚本中,录制完成后,可以在脚本文件中发现如下语句:

w

        这里“mike”、“ekim”就是录制脚本时登陆系统所输入的用户名称和密码。

        问题是在执行性能测试时,往往需要模拟很多个不同的用户同时登陆系统,观察系统的各项性能指标。
        为每个不同的系统用户录制单独的测试脚本是不现实的。那么,如何修改已录制好的测试脚本,使其在
        测试过程中可以模拟多个不同的虚拟用户,而每个虚拟用户的用户名称和密码都被写入测试脚本中呢?
1、首先,在测试脚本的Definition部分中增加变量USERNAME、PASSWORD的定义:

qqqq

        这里假设mike、allan、david、robert是该系统正确的用户名称,ekim、nalla、divad、trebor
        分别是这些用户的登陆密码(说明:OpenSTA测试脚本分三个部分, Environment、Definition、Code)
2、同时,在脚本的Definition 部分增加变量MY_USERNAME、MY_PASSWORD的定义:
 
CHARACTER*512 MY_USERNAME, LOCAL
CHARACTER*512 MY_PASSWORD, LOCAL
(注意,这两个变量范围是LOCAL型)
3、在发送登陆请求的语句“PRIMARY POST URI"http://demosite.opensta.org/gsg-v1 HTTP/1.0"ON 2…….”
之前, 添加下列语句:
   ACQUIRE MUTEX "LOGIN"
  NEXT USERNAME
  NEXT PASSWORD
  SET MY_USERNAME = USERNAME
  SET MY_PASSWORD = PASSWORD
RELEASE MUTEX "LOGIN"
        其中:AQUIRE MUTEX命令 的含义是: 将变量USERNAME 和PASSWORD 设置为用户名称和密码这两个变量选择
        值序列中的第一个值,并设置为local 形式,避免其他虚拟用户使用这个值;RELEASE MUTEX命令 的含义是:
        释放Mutex, 其他虚拟用户可以选择序列中的第一个值(序列中的值是被循环使用的);这里需要解释一下
        MUTEX锁定机制 的含义,是为了避免多个虚拟用户测试时,自动从变量选择值序列中进行选择时,出现选择
        同一值的现象(即选择了同一个用户的现象);
 
4、将发送登陆请求的PRIMARY POST语句中BODY的用户名和密码替换成变量:

ww

        至此,对测试脚本的修改已经完成。按照本文前面所介绍的OpenSTA操作步骤,设置性能测试收集器,
        设置虚拟用户的个数为4,开始执行测试,OpenSTA就会模拟mike、allan、david、robert这4个不同的用户
        同时登陆系统的情况。说到这里,读者可能又会问,怎么验证在测试执行过程中,确实是模拟了这几个用户
        进行登陆的呢?我们可以通过将所有登陆系统的用户名称打印出来的方法进行验证。方法是,在发送登陆
        请求的PRIMARY POST语句之后,添加Report语句:REPORT? "USER ", MY_USERNAME
        这样在测试执行完成后,Test Report Log中就可以看到打印出来的登陆用户名称。
        (是不是很简单?大家可以来试试)作者在自己的测试脚本中进行实验,设置虚拟用户为3个,在登陆
        请求语句之后增加Report语句,以下是测试结束后Test Report Log信息
   ee
1-8 测试结果
这里,“admin”、“sjcj”、“data”是被测试系统的三个用户名称。
        通过上边的一系列阐述,大家对Web性能测试工具OpenSTA应该有了一定的了解。
        如何更有效的利用这个工具,收集系统的性能指标进行性能分析,希望大家共同探讨。
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号