1、Blog中的内容,除了对相关权益特别声明的以外,任何人都可以转载或引用,但是请在使用是注明出处及作者;如果是我转载来的内容,请注明原始出处和作者;最重要的一点,没有经过本人或相关权益人的同意,请不要将本Blog内的任何内容用于任何盈利性用途,否则,本人及相关权益人将不排除使用法律手段维护自身的权益。 2、本Blog中的内容,主要是记录我工作中遇到的一些问题和怎么解决这些问题的。希望能有一个记录。

发布新日志

  • loadrunner 小知识累积(有一部分是转载)

    2008-10-31 16:27:12

    loadrunner 小知识累积

    1. 在启动录制脚本操作的Start Recording对话框,去掉Record the application startup前的选择,可以不录制应用程序启动时的操作,而仅录制所需的特定操作。

    2. 添加windows性能计数器时,必须先用管理员身份登录该台服务器,然后添加才可生效(注意先后顺序)。

    3. 设置DB2数据库监视:在Monitored Server Machines中配置Machine Information机器信息,Name中要填写主机名@实例名,如“168.31.6.47@DB2”,其中实例名要填完整,包括节点名称。Platform“N/A”

    4. 添加windows性能计数器时,必须先用管理员身份登录该台服务器,然后添加才可生效(注意先后顺序)。

    5. web_reg_save_param是在web脚本中用于关联HTML语句的函数。只有在录制中的关联有效时(在录制选项中设置),web_reg_save_param才会被自动录制。

    6. 设置Internet首选项的其它选项
    几个比较常用的:
           
    由资源引起的步骤超时是警告(Step timeout caused by resources is a warning):如果由于资源未在超时间隔内加载而引起超时,将发出警告而不是错误。对于非资源,VuGen 总是发出错误。(默认情况下为 NO
            HTTP
    请求连接超时(秒)(HTTP-request connect timeout(sec)):Vuser 终止之前在步骤内等待特定 HTTP 请求连接的时间(秒)。超时为服务器保持稳定并响应用户提供了机会。默认值为 120 秒。
            HTTP
    请求接收超时(秒)(HTTP-request receive timeout(sec)):Vuser 终止之前在步骤内等待接收特定 HTTP 请求的响应时间(秒)。超时为服务器保持稳定并响应用户提供了机会。默认值为 120 秒。
           
    超时设置主要用于以下高级用户:这些用户已确定可接受的超时值应该随环境而异。大多数情况下,默认设置应该足够长。如果服务器在合理的时间内并未做出响应,请检查其他与连接相关的问题,不要设置太长的超时,否则可能会导致脚本不必要地等待。
           
    网络缓冲区大小(Network buffer size):设置用于接收 HTTP 响应的缓冲区的最大大小。如果该数据的大小超过了指定的大小,则服务器将按块发送数据,从而增加了系统开销。从 Controller 中运行多个 Vuser 时,每个 Vuser 都使用自己的网络缓冲区。该设置主要用于以下高级用户:这些用户已确定网路缓冲区的大小可能影响其脚本的性能。默认值为 12K 字节。

    7. Analysis中,可以很方便地将各个分析图表拷贝出来。方法是:先切换到某个图表页(Graph),再使用Edit?Copy to Clipboard功能,便可将该图表的图、数据等复制到剪贴板,然后就可以粘贴到需要的地方(如软件测试报告)去。
    8.
    将参数设置为Unique时,要特别注意提供的参数列表是否足够,在Controller中分配值的选项(Allocate Vuser values in the Controller)默认设置为自动分配数据块(Automatically allocate block size),这样的设置在场景的执行过程中往往会出问题,报出参数不够的错误,可以修改为由人工分配(Allocate__values for each Vuser),为每个虚拟用户分配指定数目的参数,以便于控制。
    9. LR
    在录制脚本时有时常会出现一些乱七八糟的字符,例如:
    "Name=save_path", "Value=D:"
    "\\x5C"
    "resin-2.1.12"
    "\\x5C"
    "doc"
           
    以上脚本片断中用红色标出的“x5C部分就是录制下来的乱字符,该脚本原本是为了将附件上传到服务器端保存,可录制下来的保存路径却多了以上的乱字符,导致本应的保存路径D:\resin-2.1.12\doc\...,变为D:\x5Cresin-2.1.12\x5Cdoc\...。要特别注意,以避免产生不必要的错误

    10. 如何设置oracle数据库监视?

    首先要安装oracle客户端,完成相关配置,再添加oracle计数器就可以了。

    11. LR录制不成功,或报错时,如何解决?

    首先要将IE 设置为默认浏览器,其次是IE6.0..

     

    12.loadrunner录制非HTML资源

    在录制选项中,ToosRecording Option下,Recording选项中,有一个Advanced HTML选项,可以设置是否录制非HTML资源,只有选择了“Record within the current scrīpt step”时,List of Resource Attributes才会被录制到。

     

    12. Run-Time Setting日志参数的设置: http://softtest.chinaitlab.com/LoadRunner/764581_2.html

    Run-Time Setting—General—LOG:

    Enable logging启用日志记录;

    Send messages only when an error occurs 仅在出错时发送消息;

    Always send messages始终发送消息;

    Standard log标准日志:创建在脚本执行期间发送的函数和消息的标准日志,供调试时使用。

    Extended log-----Parameter substitution参数替换:选择此选项可以记录指定给脚本的所有参数及其相应的值

    Extended log-----Data returned by server:选择此选项可以记录服务器返回的所有数据。

    Extended log-----Advanced trace  高级跟踪: 选择此选项可以记录 Vuser 在会话期间发送的所有函数和消息。

    13. 实用技巧之用LoadRunner监控Linux方法: http://it.rising.com.cn/Channels/Safety/Safe_Foundation/2008-04-08/1207633994d46114.shtml

    LoadRunner监控Linux安装成功,所以共享出来,备忘. 需要下载3个包,到网上google一个吧:

        1rsh-0.17-14.i386.rpm

        2rsh-server-0.17-14.i386.rpm

    3rpc.rstatd-4.0.1.tar.gz

    注:本地解压

        1.安装rsh,和rsh-server两个服务包。

        a. 卸载rsh

        rpm –q rsh----------查看版本号

        rpm -e 版本号---------卸载该版本。

        b.安装

        rpm –ivh rsh-0.17-14.i386.rpm rsh-server-0.17-14.i386.rpm

        这两个包在我的目录下有共享。

        2.下载并安装rstatd

        gunzip rpc.rstatd-4.0.1.tar.gz

        Tar –cvf rpc.rstatd-4.0.1.tar.

        ./configure ---配置

        make ---编译

        make install ---安装

        rpc.rstatd ---启动rstatd进程

        3. 打开/etc/xinetd.conf

        里面内容是:

        # Simple configuration file for xinetd

        #

        # Some defaults, and include /etc/xinetd.d/

        defaults

        {

        instances = 60

        log_type = SYSLOG authpriv

        log_on_success = HOST PID

        log_on_failure = HOST

        cps = 25 30

        }

        includedir /etc/xinetd.d

        4.重启xinetd

        A: service xinetd reload

        B: /sbin/service xinetd rstart

        5.修改/etc/xinetd.d/下的三个conf文件 rlogin ,rsh,rexec 这三个配置文件

        打这三个文件,将里面的disable = yes都改成 disable = no (disabled用在默认的{}中禁止服务)

        或是把# default: off都设置成 on ,并把“#”去掉,这个的意思就是在xinetd启动的时候默认都启动上面的三个服务!

    15.有关loadrunner录制ca证书系统的脚本设置以及方法总结:

    1)选择新建New single protocol scrīpt脚本

    2)选择web(http/html)协议

    3)打开Vuser菜单--选择run-time settings设置栏目

    4internet protocol栏目下选择preferences栏目,勾选advaced栏目下的

        Wininnet replay instead of socketswindows ohly)选项。

    5)选择started record录制按钮考试录制测试脚本。

    6)录制脚本时,在系统中用户登录数字证书登录选择前即设置事务检查点以及集合点。

    7)正确选择登录用户数字证书,此时loadrunner仍会不断的跳出选择证书的提示窗口,不需要管他,正确选择一次数字证书一次即可,待页面打开后,即关掉多余窗口即可,此时用户已正确通过数字证书校验,即可结束用户数字证书事务检查点,或者继续录制其他功能点事务检查点,或者即结束测试脚本录制。

    8)开始调制脚本,打开view菜单选择tree view窗口编辑。

    9)再次打开用户登录数字证书选择的URL页面log记录,并且再次正确选择数字证书一次即可,查看用户登录后系统页面是否完全正确打开,如有其他问题再继续做脚本调整。

    10)调整脚本的时候,调试即编译并试运行,直至试运行用户运行结果完全复核测试设计要求,即可开始测试场景的设置和运行。

     

    16. 解决报“setp was not added ,error is step arguments”错误

    方法一:

    Select Tools > General Options > Correlation, and check the Save correlation information during replay box.
    (ii) To enable Extended Log: Select Run-time Settings > General: Log, and check Enable logging, Always send messages, Extended log, Data returned by server, Advanced trace.

    方法二:重装LR

     

  • LR中三性能指标说明(转载)

    2008-10-31 16:25:28

    1.    Median

    中值,表示采样数据的中间值.简单来说,就是在你的采样数据中,有一般的数据比它大,一般的数据比它小,举例如下:

    a.假设一组数据(2,3,5,6,1),这组数据的中值为3

    b.假设一组数据(1,2,3,4,5,6),这组数据的中值为(3+4)/2

    2.    90 Percent

    我之前也理解错了,其实这个值是告诉你你的采样数据中有90%的数据比它小,10%的数据比它大,举例如下:

    假设你有一组数据(1,3,4,6,5,11,8,2,9,12),从大到小排序之后为(1,2,3,4,5,6,8,9,11,12),那么你的90 precent就是11.

    这个主要的作用就是当你的性能指标中有定义某个事务的响应时间90%的值不能超过某个阀值时来参考的.当然这个90%是可调整的,你可以在analysis中通过tools-options下的Transaction Percentile来调整.

    :这个值大概的意思就是这样,具体的计算方式我还没完全清楚.

    3.    Std. Deviation

    标准方差,这个数据是描述数据采样数据离散状态很重要的指标,它又分为以下两种:

    a.给定样本标准方差,它是估算给定样本而不是整个样本的标准方差(也就是样本中的一部分).计算公式如下:

     

    其中a代表平均值,n代表取样个数.n-1主要是统计学上的常用做法,主要考虑到采样量越大,越能反应真实的情况.

    b.总体样本标准方差.它是估算整个采样样本的标准方差(注意,是整个采样数据,而不是部分),计算公式如下:

     

    当采样数据足够大的时候,两种计算方式得出的偏差相差很小.

    我有做过验证,loadrunner的计算方式采用总体样本标准方差计算方式计算(对于验证过程,以后我会详细描述),

    标准方差相对于平均值越大,说明数据越离散,分布状态相对于平均值波动很大;标准方差相对于平均值越小,说明数据分布越集中,曲线也越平稳.在采样值服从正态分布的条件下,资料中约有68.26%的采样值在平均数左右一倍标准差范围内;约有95.43%的采样值在平均数左右两倍标准差范围内;约有99.73%的采样值在平均数左右三倍标准差范围内。全距近似地等于6倍标准差

    通过上面三个指标结合平均值,最大值,最小值,你可以比较清楚的知道你的采样数据分布状态,采样数据是否有大的波动,这些对于你分析系统的状态都是很重要的参考.

  • 一个系统的最大并发用户数为1100,怎么能推算出该系统的支持最大用户数。

    2008-10-31 16:19:56

    本篇主要是性能方面的。

    一个系统的最大并发用户数为1100,怎么能推算出该系统的支持最大用户数。

    其中用户性能要求如下:支持100万注册用户

    性能需求分析:

     1、根据用户的要求,本系统要支持100万用户,其中性能机器配置如何?高峰值是多少?带宽?等

     2、如果都是采用公司的测试环境,那么本次性能应该做哪几种性能?性能评测、负载测试、强度测试?

     3、怎么算出并发用户数?响应时间?

    性能指标确定:

    因为用户的性能需求太广,没有定到具体的数值。那么我怎么开展后继的工作?
    1、确定采用公司测试环境,不用考虑环境问题。也就是说,客户端、服务端以及带宽等一系统都可以不用考虑,这是固定。

    2、考虑此项目组以前开发过的系统性能情况,能否做为一个参考值。
    解决方案:找出本项目组以并发过二个项目,其性能个项指标进行求权。其中浏览功能:并发数为1100,平均响应时间363秒;每用户平均响应时间为0.33秒。每秒中并发3个用户。其中一系统用户已达500万,另一系统用户为320万。并且二系统一直运行正常,但目前的二系统的服务器各为3台。可以得出一台服务器为载166万,甚至更多。(因为服务器中有求权的关系)

    3、100万用户,那么怎么计算出他的每小时峰值活动用户数?

    解决方案:采用80·20原则计算得到每小时峰值活动用户数 6.667万/小时;那么每秒中的同一功能点点击并发数应该是18.5。

    4、怎么得其并发数?

    解决方案:本系统有多少个功能点?功能点为153个;也就是本系统在高峰值时一功能将被点击1258次,每秒点击0.35次。(不考虑间隔时间)考虑以前本项目组的数值。初步设置并发数为1100,主要以浏览功能为主、其次是查询和新增。

    5、应该测试那种性能类型
    经再三考虑,三种性能都进行测试。

    执行性能:
    评测,依据性能指标确定中的第三点,将用户的并发设置为300-350,看其情况。
    负载测试,以1100为起点
    强度测试,为15小时和24小时为准

    性能测试结果:
    发现本系统最大用户支持为1100.失败用户最高为209,响应时间为315。可以判断此系统最大并发数为1100左右。也就说此系统在一台服务器上可支持150万用户数。

    根据上述情况,可以得出:

    1100用户并发时,用户一共响应时间为315秒(即每用户平均响应时间0.005秒),其中最高产生209个失败用户,但成功用户基本上可以完成后续操作,符合现系统要求的最大稳定用户数。由此可得出本系统在新增功能点中支持最大用户并发数为1100。按照1*100比例,计算得到每小时峰值活动用户数 11/小时;采用80·20原则计算得出本系统支持注册用户数约为165万。而本系统性能需求大规模支持100万注册用户,由上述的数据我们的系统已达到本系统性能需求。

    注:100万,采用80·20原则计算得到每小时峰值活动用户数 6.667/小时.

     

Open Toolbar