使用Loadrunner性能测试经验总结

时间:2024.4.21

教程贴士:明确压力点,根据压力点设计多少种场景组合

第一步:计划测试

1、明确压力点,根据压力点设计多少种场景组合

2、把文档(包括多少种场景组合、场景与场景组合条件的对应表)写好

3、如果监测UNIX机器,在被监测的机器需要安装监测Unix的进程

4、让开发人员帮助我们准备测试数据或他们写相关的文档我们来准备数据

5、让开发人员做一个恢复数据的脚本,以便于我们每次测试的时候都能够有一个相同的环境

6、针对每一个模块包括四个子文件夹:如模块A下包括“脚本”“场景”“结果”“图表” 四个子文件夹,每个子文件夹储存对应的文件,如下表所示

其中:结果名“1场景”是在场景中的“Results Setting”中设置的,具体的设置见“建立场景”部分,这里也可以有另外一种方法:在打开模板设置,如下:

选中“Automatically save the session as:”并且在“%ResultDir%”后面填写你想保存的文件名,当你打开某个lrr文件时,系统自动在当前目录中生成一个文件保存分析图表,如下图所示:

第二步:生成测试脚本

1、 把登陆部分放到“vuser_init”部分,把需要测试的内容部分放到“Action”部分执行;但是如果是模拟多个用户登陆系统,则要把登陆部分放到Action部分来实现

2、 录制脚本后,想查询某个函数的原型,按“F1”键

3、 确认脚本中哪些参数是需要进行参数化的(最好能可以和开发人员一起确认)

4、 在脚本参数化时把函数web_submit_data()中的ITEMDATA后面的数据参数化,因为这些数据是传递给服务器的,当然也可以把一个函数中的所有相同变量都替换掉

5、 脚本中无用的部分用“/*”“*/”“//”注释掉,但最好不要删除

6、 调试脚本遵循以下原则:

确认在VU里SUSI(单用户单循环次数single user & single iteration)

确认在VU里SUMI(单用户多循环次数single user & multi iteration)

确认在controller中MUSI(多用户单循环次数multi user & single iteration) 确认在controller中MUMI(多用户多循环次数 multi user & multi iteration)

7、 事务的名称取的有意义便于事务之间的区分,把所有的事务名都记录在一起,便于在测试结果概要中区分它们,这要写成一个表:某次测试有哪些模块,每个模块中有哪些事务(见对应的“关系表”)

8、 在 “Parameter List”中可以选择参数类型“Random Number”,使某一个参数取设定的范围内的随机值

第三步:建立场景

1、 把场景名称编号,并制定出一份场景名称和场景条件组合的对应表。比如,场景m对应于“某一模块_xx个vu _分z台machine”(见“关系表”中的例子)

2、 根据上面的对应表把场景设置好,需要设置的要素如下:总体多少个用户、分多少个组、每个组有多少个用户、分几台机器运行、每个脚本迭代多少次、是否回放think time时间、检查Parameter List中每个参数设置是否正确、参数从表中取值间隔是否正确、是否选中“Initialize all Vusers before Run”

3、 测试结果应该保存为“m场景0,m场景1,…”

4、 把虚拟用户分散到几台机器上和在一台机器上面都要进行测试,因为有可以效果不同

5、 场景中如果有需要改动的地方,必须新建一个场景(建议使用“另存为”,然后再修改结果文件名,再选择相应的脚本),并把场景按顺序编号,先维护好场景与场景组合条件的对应表,以便以后的查找,并且在结果 “Results Setting”中设置的结果名与场景名相同。建议在“Results Setting”中选中“Automatically create a results directory for each scenario executeon”让它每次自动累加,不建议选中“Automatically overwrite existing results directory without prompting for confirmation”,因为我们不要覆盖掉以前的测试结果,把它保存下来以便有个根据。

6、 需要注意的地方:当在“Parameter List”中的“Select next row”选中“Unique”时,如果再在“Edit Schedule\Schedule by Scenario\Duration”中选中第二项“Run for XX after the ramp up has been completed”时系统就会报错,提示“Unique”类型不相符。


第二篇:Oracle的性能测试经验总结


前段时间,在阿里妈妈新机房压力测试过程中用到了LR测试ORACLE,跟DBA一起在杭州网通新机房进行1000用户的压力模拟测试。整个压力测试耗时两天。以下是一些经验:

1)压力测试过程中发现一些SQL脚本执行非常慢,进行了优化。

2)最好并发测试,否则服务基本上没有什么压力。

3)先从100用户开始,再慢慢向上加,直到CPU的承载达到90%以上。查看系统的性能情况,包括TPS,响应时间,和内存等。

还包括oracle服务器的I/O流量和交易数。

这个方案是参考了淘宝的机房性能测试方案,下面是性能测试的具体步骤:

oracle的性能测试主要是模拟大量的sql语句操作,来对数据库服务器进行加压。在测试前,需要准备以下要模拟的sql语句,测试脚本,并将测试控制机、测试加压机、被测数据库服务器准备妥当。

脚本协议选择oracle(2-Tier),将所有要模拟的sql语句放在一个sql文件内,使用sql-plus来操作数据库载入,使用 loadrunner来录制。录制好之后就是修改脚本了,首先在vdf.h文件中定义变量(static void FAR * OraBind1;),定义参数(

static LRD_VAR_DESC UID =

{LRD_VAR_DESC_EYECAT, 1, 10, LRD_DBTYPE_ORACLE, {1, 1, 0},

DT_SF_STRIPPED_SPACES};)。

为什么要在这里定义而不直接只用参数化呢?因为那样会对加压机造成很大的压力,不利于测试。这里需要根据你的脚本来变化,你在脚本中使用了多少变量,多少参数,那么你就在要这里定义多少。接下来修改脚本的,将一次性的登陆登出放在init和end中,使用lrd_assign和 lrd_ora8_bind_placeholder命令替代参数,如

lrd_ora8_stmt(OraStm6, "SELECT COUNT(*) as counter FROM ***** WHERE ***_id=" ":U and ( status = 0 or "

"status is null)", 1, 0, 0);

lrd_assign(&UID , "{UID}", "", 0, 0);

lrd_ora8_bind_placeholder(OraStm6, &OraBind1, "U", &UID , 0, 0, 0);

这样,脚本就差不多大功告成了。编译一下,没有问题就通过了^o^

将脚本放在控制机上,就可以开始加压了,注意的是,被测数据库服务器的各个参数配置要记录下来,以便修改参数调优时能分析清晰。记录下数据库的iops,time,tps和响应时间,结果汇总出报告。

更多相关推荐:
软件测试经验总结

软件生命周期(SDLC)的六个阶段1、问题的定义及规划此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。2、需求分析在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析…

手机软件测试经验总结

手机软件测试总结沙晶晶一个合格的手机软件测试工程师要掌握的东西是很多很多的。在我个人理解中,一个合格的高级手机软件测试工程师应该具有最基本的两点知识:软件测试理论知识和一定的开发技能。1.软件测试理论知识这个不…

性能测试经验总结

第一步:计划测试1、明确压力点,根据压力点设计多少种场景组合2、把文档(包括多少种场景组合、场景与场景组合条件的对应表)写好3、如果监测UNIX机器,在被监测的机器需要安装监测Unix的进程4、让开发人员帮助我…

软件异常测试经验总结

软件异常测试从业务需求方面:特殊业务流程测试:测试软件不按照正规的流程,而是按照可能的但非正规的业务流程运行,是否会生成错误数据,或者造成原有数据的错误,甚至造成系统的瘫痪;主要是检查系统某些关键业务在极限情况…

测试经验总结

1.测试人员和用户的联系与区别黑盒测试人员和用户,都是站在实际应用层进行操作,因此他们对应用层的可用性、实用性非常关注。用户不懂的是软件的使用,而相对用户来说,测试人员对软件比较了解,但不熟悉业务本身。八个字归…

手机测试经验总结--SMS

手机测试经验总结--SMS手机测试经验总结--SMS短消息uGSM中唯一不要求建立端-端业务路径的业务就是短消息(亦称为短信),即使移动台已处于通话状态下仍可进行消息传输。?SMS:ShortMessageSe…

测试经验总结1

一、测试用例是软件测试的核心软件测试的重要性是毋庸置疑的。但如何以最少的人力、资源投入,在最短的时间内完成测试,发现软件系统的缺陷,保证软件的优良品质,则是软件公司探索和追求的目标。每个软件产品或软件开发项目都…

Oracle的性能测试经验总结

前段时间,在阿里妈妈新机房压力测试过程中用到了LR测试ORACLE,跟DBA一起在杭州网通新机房进行1000用户的压力模拟测试。整个压力测试耗时两天。以下是一些经验:1)压力测试过程中发现一些SQL脚本执行非常…

测试总结报告

文档模板20xx42222doc版本v1520xx09041测试总结报告CEERSTSR01文档修改记录RevisionChart北控软件有限公司20xxI测试总结报告CEERSTSR01目录1引言111编写目...

10年软件测试工作总结

10年软件测试工作总结时光荏苒从毕业到现在已经10年10年来一直从事着软件测试的工作从一个什么都不会到测试技术人员再到测试管理期间有迷茫有痛苦有弯路有捷径今天对自己过去的10年测试经历做一个总结一是给自己重新出...

软件测试人员6年工作经验总结

1分享第一条经验学历代表过去能力代表现在学习力代表未来其实这是一个来自国外教育领域的一个研究结果相信工作过几年十几年的朋友对这个道理有些体会吧但我相信这一点也很重要重要的道理明白太晚将抱憾终生所以放在每一条让刚...

软件测试转正工作总结

软件测试转正工作总结本人自20xx年6月25日起进入梦龙移通公司从事手机软件测试工程师一职在不知不觉中已经经过了2个月的试用期在这段时间里我感悟颇多虽然这并不是我的第一份工作但是在此期间我对于工作一贯谦虚谨慎认...

测试经验总结(56篇)