loadrunner脚本开发参数取值策略_第1页
loadrunner脚本开发参数取值策略_第2页
loadrunner脚本开发参数取值策略_第3页
loadrunner脚本开发参数取值策略_第4页
loadrunner脚本开发参数取值策略_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、loadrunner脚本开发参数化取值策略质量管理部2014年8月目录1. 文档说明42. 场景简述43. 参数取值模拟73.1 sequential7sequential + each iterator7sequential + each occurrenee7sequential + once83.2 random9random + each iterator9random + each occurrenee9random + once103.3 unique10unique + each iterator10unique + each occurrenee11unique + once1

2、14. 试验详述114.1 sequential12sequential + each iterator12sequential + each occurrenee13seque ntial + once144.2 random15random + each iterator15random + each occurrence16ran dom + once174.3 unique17unique+ each iterator17unique+ each occurrenee18unique+ once195. 其他类型参数说明19&联系方式错误!未定义书签。1 文档说明在压力测试的过

3、程中,根据应用程序对数据的要求不同,压力测试人员会选择不同的参 数取值方式,下面对几种参数取值方式做一个简单的说明。在 loadrunner paramrter list 中,select next row 包括以卜三种选项(sequential、 random> unique)sequential :顺序取值random:随机収值unique:惟一取值update value on 包扌舌以卜三个种选项(each iterator 、 each occurrence、once)each iterator:每次迭代each occurrencc:遇到迭彳弋once:惟一迭代vu:虚拟用户

4、迭代:在vugen屮脚本回放一次称为一次迭代(如脚本回放3次称为迭代3次);controller 中脚本运行一次称为一次迭代(场景执行一次,脚本则可能运行多次)2 场景简述参数文件内容参数文件内容行号文木值1sid0012sid0023s1d0034sid0045sid0056sid0067sid0078st 1)0089sid00910sid01011sid01112sid01213sid01314s1d01415s1d01516sid01617sid01718std01819s1d01920sid020参数取值说明类型取值方式取值说明实例sequentialsequential +each

5、 iterator所有用广取值步调致,每次 迭代时更新,获取下一个数值所有vu取值一致,在第一-次 迭代中使用第1行数据“sidool”,第二次迭代使用第 2行数据“sid002” ,第三次迭 代使用第3行数据“sid003” , 以此类推sequential +eachoccurrence所有用户取值步调一致,每次 遇到参数时进行更新,即使在 同次迭代中,各个vu也会同 时去获取下一个数值单次或者多次迭代执行脚本时, 所有vu笫1次遇到参数时取第 1行数据“sidool” ,第2次遇 到参数时取第2行数据“sid002”,第3次遇参数时取 第3行数据“sid003” ,以此类 推sequen

6、tial +once所有用户取值一次,即使迭代 多次取值仍然不变所有用户在所有的迭代中均使 用第1行数据“sidool”randomrandom + eachiterator每次迭代时,各个vu随机从数 据表屮获取参数值,同一次迭 代过程中参数取值保持不变。random + each occurrence各vu在每次遇到参数时就会 随机取一个数值,即使在同一 次迭代屮random + once各个vu在第一次迭代中随机 获取一个参数值,但是在所有 子迭代屮各个vu的参数取值 保持不变uniqueunique + eachiterator所有用户取值均不同。每个用 户在每次迭代时将会更新参数 值

7、假设迭代3次,第1个vu第 1次使用第1行数据“sidool”, 第2次使用第2行数“sid002”, 第3次使用第3行数据“sid003” ,第2个vu依次使用第4、5、6行数据“sid004”、 “sid005”、“sid006” ,第 3个vu使用第7、8、9行数据,以此类推unique + eachoccurrence所有用户取值不同,每个虚拟 用户每次遇到参数就会取一个 新值,即使在同一次迭代中根据参数出现的次数来取值, 假设一个脚本只有 vuser_init (), action ()、 vuser_end()3部分,参数仅在 action部分出现2次,则各个 vu取值过程如下:第

8、一个vu第 1次迭代时第1次遇到参数使用 第1行数据“sidool”,第2次 遇到参数时使用“sid002” ,第 3次迭代时使用第3、4行数据, 第2个vu第1次迭代时使用第 5、6 行数据“sid005”,“sid006 ”,第2次迭代使用第7、8行 数据 “sid007、sid008” ,以此 类推unique + once每个vu第一次迭代是获取不 同的参数值,该用户所有的了 迭代取值不变笫一个vu在所有迭代过程 中使用第1行数据“sidool” , 第2个vu在所有迭代过程屮使 用第2行数据“sid002” ,依次 类推same line as xxx该参数取值方式与xxx参数取 值

9、一致3 参数取值模拟3.1 sequentialsequential + each iteratorparaaeter siaulati on 一 siduse the simulator to simulate parameter behavior in a load seenaio.vusers! number of vusers:scenario run modea rununtil completion:number of iterations to run:take number of iterations from the run-time settingsrun indefini

10、telynumber of iterations to show: |1simulateit era tion 1iteration 2iteration 3userl sid001sid002sid003user 2sid001sid002sid003user 3sid001sid002sid003sequential + each occurrence(由于loadrunner无法识别参数在脚本中出现的次数,因此无法模拟)sequential + onceparameter siaulation 一 siduse the simulator to simulate parameter be

11、havior in a load scenario.vusers!tt number of vusers:scenario run modea run until completion:number of iterations to run:take number of iterations from the run-time settingso r un indefinitelynumber of iterations to show:simulateiteration 1iteration 2 iteration 3user 1 sid001sid001sid001user 2 sid00

12、1sid001sid001user 3 sid001sid001sid0013.2 randomrandom + each iteratorrandom + each occurrence(由j: loadrunner无法识别参数在脚本中出现的次数,因此无法模拟)random + onceparaaeter sinulati on 一 siduse the simulator to simulate parameter behavior in a load seenaicivusersw number of vusers:seenaioun mode|3 ±|run until co

13、mpletion: number of iterations to run:take number of iterations from the run-time settingso r un indefinitelynumber of iterations to shovel:simulateit era tion 1iteration 2iteration 3userl sid017sid017sid017user 2sid018sid018sid018user 3 sid003sid003sid0033.3 uniqueunique + each iteratorparaaeter si

14、mulation 一 siduse the simulator to simulate parameter behavior in a load seenaio.vusers! number of vusers:scenario run moderun until completion:number of iteration$ toun:take number of iterations from the run-time settingsc run indefinitelynumber of iterations to show:sidooasimulateit era tion 1iter

15、ation 2it era tion 3userl sid001sid002sid003user 2sid004sid005sid006user 3sid007sidoosunique + each occurrence(山于loadrunner无法识别参数在脚木中岀现的次数,因此无法模拟)unique + onceparaaeter siaulati on - siduse the simulator to simulate parameter behavior in a load scenario.vusers! number of vusers:scenario run modea ru

16、nuntil completion:number of iterations to run:take number of iterations from the run-time settingsrun indefinitelynumber of iterations to show: |1simulateiteration 1iteration 2iteration 3user 1 sid001sid001sid001user 2sid002sid002sid002user 3 sid003sid003sid0034 试验详述以卜为试验环境测试脚本和参数列表,分别使用3个vu迭代3次,测试参

17、数取值悄况e vuser_nt0 actionc vuser.end j gtobals.hactionolr.error.bessagecvu号为s,養数取值依次为naae£%s,. lr_eval.string c uidk),lr_eval.stringc sidk), lr.eval.stringsid*), lr_eval_stringc name);return 0;eimaig<d> name<b><» uidsidparameter type |ffe£dt with notepad | dataw"d |a

18、dd column add row.e11« |sid d.qemulate parameter i|sequenbai3select next row:update vaie on |each<ecabon4.1 sequentialsequential + each iteratoroutput (total messages: 9# errors: 9)active filter: error_code: -17999 viewed by: messagemessageaction.c(2): error: vu編号为02,参数取值依次为sidool zsidoo1 na

19、me©值为nameool action.c(2): error:为01,参数取值依次为sidootsidool nam諏值为nameoolaction.c(2): error: vu編号为01,参数取值依次为sid002,sid002 name®值为name002 action.c(2): error: vu編号为02,参数取值依次为sid002zsid002 name®值为name002 action.c(2): error: vu編号为01» 参数取值依次为sid003zsid003 nam諏值为name003 action.c(2): error:

20、 vu編号为02,参数取值依次为sid003zsid003 name©值为name003 action.c(2): error: vu編号为 1cb 参数取值依次为sidool zsid001 nam諏值为nameool action.c(2): error: vu編号为10,参数取值依次为sidoo25idoo2 name®值为name002 action.c(2): error: vu編号为 10,参数取值依次为sid003,sid003 name®值为name003可以看出编号为01的vu在3次迭代过程中std取值依次为sidook sid002、sid00

21、3mame 取值依次为 nameool s name002> name003o编号为02的vu在3次迭代过程中sid取值依次为sidool、sid002、sid003name 取值依次为 nameool、name002 name003o编号为10的vu在3次迭代过程中sid取值依次为sidook sid002、sid003name 取值依次为 nameool > mame002、nameoo3说明:所有vu从第一个参数开始顺序取值,在迭代的过程小也是从第一个参数开始顺序取 值。注意:在同一次迭代中,sid有两次取值,但是两次取值都一样。sequential + each occur

22、renceoutput (total aiess&ges: 9, errors: 9)l>j3 active filter: error_code: -17999 viewed by: messageaction.c2): error: vu編号为01 ,参数取值依次为sid001,sid002 name®值为nameoolaction.c(2): error: vu編号为d2,参数取值依次为sid001zsid002 name®值为name001 aclion.c(2): error: vu編号为01,参数取值依次为sid003,sid004 name

23、74;值为阳诳002 action.c(2): error: vu編号为02,参数取值依次为sid003zsid004 name值为name002 action.c(2): error: vu編号为01,参数取值依次为sid005,sid006 name®值为nameocg action.c(2): error: vu編号为02,参数取值依次为sid005,sid006 name值为name003 action.c(2): error: vu編号为 10,参数取值依次为sid001zsid002 name®值为nameool aclion.c(2): error: vu編号

24、为 10,参数取值依次为sid003,sid004 name®值为name002 action.c(2): error: vu編号为10,参数取值依次为sid005zsid006 name值为name003可以看出编号为01的vu在第1次迭代过程中sid两次取值依次为sidook sid002 , name取值为nameoolo第2次迭代过程中sid两次取值依次为sid003、sid004 , name取值为name002o第3次迭代过程中sid两次取值依次为sid005、sid006 , name取值为name003o编号为02的vu在笫1次迭代过程中std两次収值依次为sidoo

25、k sid002 , name取值为nameool o第2次迭代过程中s1d两次取值依次为sid003、sid004 , name取值为name002o 第3次迭代过程中sid两次取值依次为sid005、sid006 , name取值为name003o编号为10的vu,在第1次迭代过程中sid两次取值依次为sidook sid002 , name取值为nameool。第2次迭代过程中,sid两次取值依次为sid003、sid004 , name取值为name002o 第3次迭代过程中,sid两次取值依次为sid005、sid006 , name取值为name003o 说明:所有vu从第一个参数

26、开始顺序収值,在迭代的过程中从第一个值开始顺序取值,遇 到卜一次取值,就从卜一行取值(如果一个参数在脚木屮只使用一次,sequential + each occurrence 和 sequential + each iterator 取值效果是一,样的)。sequential + onceoutput (total nessages: 9, errors: 9)active filter: error_code: -17999 viewed by: messagemessage (9)action.c(2): error: vu編号为02» 参数取值依次为sid001 zsidoo1

27、 nam諏值为nameool aclion.c(2): error: vu編号为01 ,参数取值依次为sidoo1zsidoo1 n&m諏值为nameool action.c(2): error: vu編号为02» 参数取值依次为sidool zsidoo1 nam諏值为nameool aclion.c(2): error: vu編号为02,参数取值依次为sidool zsidoo1 n&m諏值为nameool action.c(2): error: vu編号为01 » 参数取值依次为sidool zsidoo1 nam諏值为nameool aclion.c

28、(2): error: vu編号为01 ,参数取值依次为sidool zsidoo1 n&m諏值为nameool action.c(2): error: vu編号为 10,参数取值依次为sidoolzsidoo1 nam諏值为nameool aclion.c(2): error: vu編号为10,参数取值依次为sidool zsidoo1 n&m諏值为nameool action.c(2): error: vu編号为 10,参数取值依次为sidoolzsidoo1 nam諏值为nameool可以看出编号为01的vu在第1次迭代过程中sid两次取值依次为sidook sidool

29、 ,name取值为nameool,第2次和第3次取值与第1次取值一致。可以看出编号为02的vu在第1次迭代过程中sid两次取值依次为sidool. sidool , 収值为nameool,笫2次和笫3次取值与笫1次取值一致。name可以看出编号为02的vu在第1次迭代过程中sid两次取值依次为sidool、sidool ,取值为nameool,第2次和第3次収值与第1次取值一致。说明:所有vu从第一个参数顺序取值,在迭代的过程屮取惟一值。name4.2 randomrandom + each iteratoroutput (total messages: 9» errors: 9)a

30、ctive filter: error_code: -17999 viewed by: messagemessage (9laction.c:编号为01,参数取值依次为sico34,siclcici4 name®值为n&me021action.c(2): error: vu編号为02,参数取值依次为sid009,sid009 name®值为name008action.c(2): error: vu編号为02,参数取值依次为sid001,sid001 nam諏值为name021action.c(2): error: vu編号为01,参数取值依次为sido13,sido

31、13 name®值为name021action.c(2): error: vu編号为01 > 参数取值依次为sido17,sido17 name®值为name019action.c(2): error: vu編号为02° 参数取值依次为sid003,sid003 name®值为name004action.c(2): error: vu編号为 10,参数取值依次为sido18,sido18 name®值为name009action.c(2): error: vu編号为10,参数取值依次为sido16,sido16 name®值为n

32、ame004action.c(2): error: vu編号为 10,参数取值依次为sid001,sid001 nam諏值为name010可以看出编号为01的vu在第1次迭代过程中sid两次取值依次为sid004、sid004 , name 取值为name021。第2次迭代过程屮sid两次取值依次为sid013、sid013 , name取值为 name021,第3次迭代过程中sid两次取值依次为sid017、sid017 , name取值为name019o编号为02的vu在第1次迭代过程中sid两次取值依次为sid009、sid009 , name取值为nameooso第2次迭代过程中sid

33、两次取值依次为sidook sidool , name取值为name021o 第3次迭代过程中sid两次取值依次为sid003、sid003 , name取值为name004o编号为10的vu在笫1次迭代过程中std两次収值依次为sid018、sid018 , name取值为name009o第2次迭代过程中sid两次取值依次为sid016、sid016 , name取值为name004o 第3次迭代过程中sid两次取值依次为sidool. sidool , name取值为nameoloo 说明:sid虽然是随即取值,但是在同一次迭代过程屮取值时一样的,随机取值可能取值重 复。random +

34、each occurrenceoutput (total messages: 9, errors: 9)achve filter: error_code: -17999 viewed by: messageaction.c(2): error: vu編号为01 > 参数取值依次为sid017zsid008 name®值为nameow action.c(2): error: vu編号为02,参数取值依次为sid013zsid005 name®值为name018 action.c(2): error: vu編号为01 > 参数取值依次为sid008,sid002 n

35、ame®值为name015 action.c(2): error: vu編号为02,参数取值依次为sid006,sid003 name®值为name017 action.c(2): error: vu編号为02,参数取值依次为sido14,sido15 name®值为nameoog action.c(2): error: vu編号为01 > 参数取值依次为sid017zsid010 name®值为n&me012 action.c(2): error: vu編号为10,参数取值依次为sid009,sid013 name®值为name

36、020 action.c(2): error: vu編号为10,参数取值依次为sid009,sid003 name®值为name011 action.c(2): error: vu編号为10,参数取值依次为sid020,sid007 name®值为nameow可以看出编号为01的vu在第1次迭代过程中sid两次取值依次为sid017、sidoos , name取值为namo016o第2次迭代过程中sid两次取值依次为sid08、sid002 ,name取值为name015o第3次迭代过程中sid两次取值依次为sidl7、sidolo , name取值为name012o编号为

37、02的vu在笫1次迭代过程中std两次取值依次为sid013、sid005 , name収值为name018c第2次迭代过程中sid两次取值依次为sid06、sid003 , name取值为name017o 第3次迭代过程中sid两次取值依次为sid014、sid015 , name取值为name006o编号为10的vu在第1次迭代过程中s1d两次取值依次为sid009、sid013 , name取值为 name020o第2次迭代过程中sid两次取值依次为sid09、sid003 , name取值为nameollo 第3次迭代过程中sid两次取值依次为sid20、sid007 , name取值

38、为name016。说明:虽然是随即取值,但是在同一次迭代过程中,同一个参数多次取值是不一样的。random + onceaction.c(2): error vu«为01 > 參數取值依次为sid0105id010name$ffi为namecn9action.c(2): error: vu編号为卫,李釣恥佰依次为skjoasidoog name取值为而诳003action.c(2): error: vutfh为01,参数取値依次为sidoiosidoionarheffi为name019action.c(2): eg: vu编号为02,歩数取值依次为sidoo9sidoo9nar

39、ne取(3为name003action.c(2): error: vu編号为01,参数敢值依次为sid0105id010name$值为namech9action.c(2): error: vu编号为02,参数取值依次为skjoolsidooanam諏值为name003 action.c(2): error: vu編号为 1(b 参数取值依csidoi3,sdo13 name值为n8me018 action.c(2): error: vu編号为 1cb 参数取值依次为sdo13,srio13 nam諏值为name018 action.c(2): error: vu编号为10,参数取值依9<

40、asido13xsido13 name®值为name018可以看出编号为01的vu在3次迭代过程中sid収值依次为sidolo、sidolo , name取值为name019o编号为02的vu在3次迭代过程中s1d取值依次为sid009、sid009 ,name取值为namc003o编号为10的vu在3次迭代过程中sid取值依次为sid013、sid013 , name取值为018。说明:每个vu在迭代的过程中取值都是i样的。4.3 uniqueunique + each iteratorovtpvt (tetal aessages: 9. errors: 9)active filt

41、er: errorcode: -17999 viewed by: messagemessage (9)acdoac(2): error:01数取值依初藏looimidodtn晁取值为n«ne00tactionc(2): error: vu編号为02,参数取值依次为sid004,sid004 name职值为n抑e004 actioac(2): error: vus号为01,參数取值笊次为sid0025id002值为name002actiomc:error: vu为02,参数取值依次为sid005,sidci05 name取值为name005 actionc(2): error: vu編

42、号为02,琴数取值依sid006,sid006 narfte®finame006 actionc(2): error: vu編号为01,参数取值依次为sid003,sid003 name取值为nwie003 aclioac(2): error: vu編号为 10,琴数取值依次为sidoo7sidclcl7 name取值为namedd7 action c(2): error: vu編号为 10,参数取值依次为sid0085id008 name取值为name008 |action.c(2): error: vu編号为 10,参数职值依次为sko39sici009nan»e

43、74;§name009可以看出编号为01的vu在第1次迭代过程中sid两次取值依次为sidook sidool , name取值为001。第2次迭代过程中sid两次取值依次为sid002、s1c1002 , name取值为002。第3次迭代过程中std两次取值依次为sid003、sid003 , name取值为003。编号为02的vu在第1次迭代过程中s1d两次取值依次为sid004、sid004 , name取值为 004o第2次迭代过程中s1d两次収值依次为sid005、sid05 , name取值为005。第3次迭 代过程中sid两次取值依次为sid006、sid006 , n

44、ame取值为006。编号为10的vu在第1次迭代过程中std两次取值依次为sid007、sid007 , name取值为 007。第2次迭代过程中sid两次収值依次为sid008、sid08 , name 值为008。第3次迭 代过程中s1d两次取值依次为sid009、sid009 , name取值为009。说明:不同的用户在迭代的过程中取值不同,但是在同一次迭代中,同一个参数取值相同。注意:选择该选项后,需要对应设置when out of values和allocate vuser values in the control ler 选项unique + each occurrenceout

45、put (total nessages: 9. errors: 9)active filter: error_code: -17999 viewed by: messagemessage (9)action.c(2): e9匚vi煽号为01参数取值依次为sidoctlsidix2 name取值环uneoot action.c(2): error: vu編号为02,参数取值依次为sid007,sid008 name®值为name007 action.c(2): error: vu号为01参数取值依次为sid003,sid004 namem值为name002 action.c(2): e

46、rror: vu编号为02,参数取值依次为sid009,sid010 name®值为nameoob action.c(2): error: vu編号为01 > 参数取值依次为sid005,sid006 name®值为name003 action.c(2): error: vu編号为02,参数取值依次为sido11,sido12 name值为name009 action.c(2): error: vu編号为10参数取值依次为sido13,sido14 name®值为name013 action.c(2): error: vu编号为10,参数取值依次为sido1

47、5,sido16 name®值为name014 action.c(2): error: vu编号为10,参数取值依次为sido17,sido18 name®值为named 5可以看出编号为01的vu在第1次迭代过程中sid取值为sidool、sid002, name取值为nameoolo第2次迭代过程中sid取值为sid003> sid004, name取值为name004o第3次迭代过程中sid取值为sid005、sid006, name取值为name003o编号为02的vu在第1次迭代过程中sid取值为sid007、sid008, name取值为name007o

48、第2次迭代过程中sid取值为sid009、sidolo, name jr值为name008o第3次迭代过程中sid 取值为 sidolk sid012, name 取值为 name009o编号为10的vu在第1次迭代过程中sid取值为sidoll、sid012, name取值为name0013<> 第2次迭代过程中s1d取值为sid015、sid016, name取值为name014o第3次迭代过程中 sid 取值为 sid017、sid018, name 取值为 named5<,说明:不同的用户在迭代的过程中取值不同,在同一次迭代中,同一个参数多次取值是不一 样的。注意:选择该选项后,需要对应设置when out of values和allocate vuser values in the controller 选项unique + once| output 1(t<>tal aessages: 9, errors: 9)"1j国 active filter: error_code: -17999 viewed by: messagemessageaction.c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论