您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 博客园loadrunner摘抄
LoadRunner的简单使用《第一篇》LoadRunner是一个用压力测试的软件。这东西比较难上手,光安装就非常麻烦。好不容易一步步跟着安装说明安装好之后,还是用不了。记录一个问题如下:导入脚本的时候报错failtocreateononline,无效指针:关掉杀毒软件,360之类的,然后修复安装就是在控制面板-程序中找到了Hploadrunner然后点击修复在解决了安装问题之后,使用的方法并不难。LoadRunner提供了脚本录制功能。这个功能实际上相当于后台监控并记录你发送的HTTP请求,然后当你开启多线程的时候,再多线程发送这些请求,当然一些参数在LoadRunner中是可以替换的。LoadRunner入门试验LoadRunner测试分为两个步骤;第一步:录制脚本,其实就是监控并记录你这段时间发送的HTTP请求。第二步:启动多个线程,用录制的脚本,模拟多线程发送请求。1、录制脚本如果是录制本机,要用localhost填127.0.0.1的话就会不录制脚本。录制脚本的操作步骤如下:1、启动LoadRunner后点击Create/EditScripts;打开如下窗口:2、点击Web(HTTP/HTML)3、设置各种信息4、设置完成之后点击OK,当出现如下Banner条时,脚本就开始录制了,此时LoadRunner会用你刚才设置的浏览器打开你刚才设置的地址。录制完成之后,只要点击那个正方形的stop按钮,脚本就录制完成了。5、脚本录制完成后会打开如下界面,里面的代码就是刚才录制的脚本。当然,如果你足够牛B,也可以自己手动敲。最好在录制脚本的时候,关掉无关的软件,否则可能会录入不少杂质,如上面那个迅雷的地址。6、替换内容在代码中,可能有时候你希望将一些内容进行替换。如登录账号及密码。我们只需要将值替换为一个参数。然后为该参数设置不同的值。设置完成之后,先测试一次,看脚本有没有报错。如果没报错,就可以保存了。和所有保存文件一样File=》Save。2、压力测试1、点击RunnerLoadTest,启动如下界面。2、在刚才录制的脚本Add到右边去。3、设置选项4、设置用户示例5、启动测试设置完成之后,就可以点击左上角的启动进行测试了6、测试界面如下7、当测试完成之后,点击顶部的就能够自定义各种报表。8、报表有很多种,也可以自定义,下面给出总概览的报表LoadRunner脚本《第二篇》一、基础函数简介在VU左边导航栏中,有三个LoadRunner框架函数,分别是vuser_init()、Action()、vuser_end()。这三个函数存在于任何Vuser类型的脚本中。vuser_init:虚拟用户的初始化函数,一般将用户初始化的操作放在这里,如登录操作、分配内存等。在做uvser_init的时候,Controller的Vuser状态区域会显示initialize状态(只运行一次)。Action:虚拟用户要做的业务,用户的业务操作,也就是测试内容的主体。在VU里设置迭代循环选项时,只针对Action有效,Action会被重复运行,而init和end部分则在脚本的运行过程中只会运行一次。vuser_end:与vuser_init相对应,uvser_end做收尾工作。在vuser_init中如果是登录,vuser_end里面就是退出登录;在vuser_init中如果是申请内存,比如使用了malloc函数,在vuser_end中应该就是释放内存,使用free函数。在VU右侧脚本编辑框中,我们看到的是Action的实现主体,在运行时,Action内的web_url函数会被调用执行。在LoadRunner的脚本中,我们可以调用三种函数:1.VU通用函数,一般以lr开头,就如上面的lr_start_transaction函数。2.协议相关函数,不通类型的Vuser的函数一般以本协议类型开头。如果上面的脚本时Web(HTTP/HTML)类型的,web_url就是一个协议函数,web前缀说明它是属于WebHTTP协议的,HTTP协议函数还包括web_list、web_link。3.语言相关函数。上面的VU脚本时用C语言写的,那么C语言的标准函数或dll都可以在这里被加载和使用。二、通用VU函数通用VU函数是构建在C语言基础之上的脚本框架函数,起支持作用。通用VU函数有一个特征,就是以LR开头,以标明它们属于LR,而不专属于任何协议,只要是C脚本,都可以使用。通用VU函数可分为:事务控制函数;命令行分析函数;系统信息函数;字符串函数;日志函数;运行时函数;1、事务与事务控制函数软件系统的性能就是开一个个事务来度量的。LoadRunner中事务的定义就是靠事务函数来进行的,在执行性能测试时,LoadRunner会采集完成其定义的每个事务所花费的时间,并在性能测试后再Ayslysis中进行统计分析。lr_end_sub_transaction:标记子事务的结束以便进行性能分析。lr_end_transaction:标记LoadRunner事务的结束。lr_end_transaction_instance:标记事务实例的结束以便进行性能分析。lr_fail_trans_with_error:将打开事务的状态设置为LR_FAIL并发送错误消息。lr_get_trans_instance_duration:获取事务实例的持续时间。lr_get_trans_instance_wasted_time:获取事务实例浪费的时间。lr_resume_transaction:继续收集事务数据以便进行性能分析。lr_resume_transaction_instance:继续收集事务实例数据以便进行性能分析。lr_set_transaction_instance_status:设置事务实例的状态。lr_set_transaction_status:设置打开事务的状态。lr_set_transaction_status_by_name:设置事务的状态。lr_start_sub_transaction:标记子事务的开始。lr_start_transaction:标记事务的开始。lr_start_transaction_instance:启动嵌套事务。lr_stop_transaction:停止事务数据的收集。lr_stop_transaction_instance:停止事务数据的收集。lr_wasted_time:消除所有打开事务浪费的时间。2、命令行分析函数当LoadRunner用命令行方式启动和运行时,以下函数用来分析命令行,以得到命令行中的参数信息。lr_get_attrib_double:检索脚本命令行中使用的double类型变量。lr_get_attrib_long:检索脚本命令行中使用的long类型变量。lr_get_attrib_string:检索脚本命令行中使用的字符串。3、系统信息函数用来得到VU系统信息:lr_user_data_point:记录用户定义的数据采集点。lr_whoami:将有关Vuser的信息返回给Vuser脚本。lr_get_host_name:返回执行Vuser脚本的主机名。lr_get_master_host_name:返回运行LoadRunnerController的计算机名。4、字符串函数主要是对参数进行操作,包括对不通类型参数的读取、存储和移动。lr_eval_string:返回参数的当前值。lr_save_string:将以NULL结尾的字符串保存到参数中。lr_save_var:将变长字符串保存到参数中。lr_save_datetime:将当前日期和时间保存到参数中。lr_advance_param:前进到下一个可用参数。lr_decrypt:解密已编码的字符串。lr_eval_string_ext:lr_eval_string的扩展,为指向包含参数数据的缓冲区的指针。lr_eval_string_ext_free:释放由lr_eval_string_ext分配的指针。lv_save_searched_string:在缓冲区中搜索字符串实例,并将改字符串实例保存到参数中。5、消息函数是VU发送和记录log的函数lr_debug_message:将调试消息发送到输出窗口。lr_error_message:将错误消息发送到输出窗口。lr_get_debug_message:得到当前的消息类。lr_log_message:将输出消息直接发送到output.txt文件,此文件位于Vuser脚本目录中。lr_output_message:将消息发送到输出窗口。lr_set_debug_message:为输出消息设置消息类。lr_vuser_status_message:生成格式化输出并将其打印到ControllerVuser状态区域。lr_message:将消息发送到Vuser日志和输出窗口。6、运行时函数运行时(run-time)多数是通过VU的runtime来设置的。lr_load_dll,加载外部dll。lr_think_time:暂停脚本的执行,以模拟思考时间。lr_continue_on_error,指定脚本如何处理错误场景,是继续还是退出。lr_rendezvous:在Vuser脚本中设置集合点。三、协议相关函数除了通用Vuser函数以外,Vugen还会在录制时生成特定于协议的函数,并将它们插入到Vuser脚本中。1、Http协议Header设置函数:Web_add_headerWeb_clean_header点击链接:Web_linkWeb_image提交表单:Web_submit_dataWeb_submit_form2、Web系统设置Cache设置:Web_cache_leanupWeb_load_cacheCookie设置:Web_add_cookieWeb_cleanup_cookiesProxy设置:Web_set_proxyWeb_set_secure_proxy3、LoadRunner框架支持检查点:Web_findWeb_image_check关联:Web_create_html_paramWeb_create_html_param_exWeb_reg_save_paramWeb_set_max_html_param_len控制:Lr_start_transactionLr_rendzvousLr_think_timeAction(){Web_add_cookie(nav=140,Domain=Dogbert);lr_think_time(7);Web_url(Login,URL==0,RecContentType=text/html,Referer=,Snapshot=t1.inf,Mode=HTTP,LAST);}第一条语句Web_add_cookie的作用是保存Server传过来的cookie,以后的访问都会基于此cookie,直到脚本的结束。第二条语句lr_think_time,模拟用户思考时间,暂停7秒。第三条语句Web_url显示用户在IE地址栏输入然后回车,IE发起一个访问的请求。LoadRunner用户行为模拟器《第三篇》用户行为模拟器简称VU,VU通过运行VU脚本模拟了用户对软件的操作行为。VU是基于网络协议的。很明显,被测服务器是通过各种各样的网络协议与客户端打交道的。VU要“骗过”被测服务器,当然就要遵守这些协议,按规矩、按步骤来执行动作,否则就会吃“闭门羹”。基于网络协议的脚本的一个好处是,我们可以使用相对少的硬件资源,来生成大量的虚拟用户负载。相比之下,
本文标题:博客园loadrunner摘抄
链接地址:https://www.777doc.com/doc-2598688 .html