参数化的方法:
方法1:右键---【Replace with a new parameter】
方法2:菜单【insert】----【new Parameter…】
参数分配和参数更新:
select next row(数据分配): Sequential(顺序读取)、Random(随机读取)、Unique (唯一)
update the value(数据更新): Each Occurrence(每次遇到使用新值 )、 Each iteration(每次迭代使用新值 )、 Once(一直 )
设置10个用户并发持续加载的场景(参数文件中有10个数据),用默认设置均可。即每15秒加载两个用户,持续时间为5分钟,每30秒停止5个用户,然后并发跑脚本。
以下为9种组合的测试结果:
数据分配 | 数据更新 | 实际结果 | 举例 |
Sequential | Each iteration | 每个用户每次迭代(顺序)取一个新值,所有用户每次从头 | VUser1-VUser m:迭代1取A,迭代2取B |
Sequential | Each Occurrence | 每个用户每次遇到(顺序)均取一个值,所有用户每次从头(一个迭代可能遇到多次,如遇到3次) | VUser1-VUser m:迭代1取ABC(即:第一次出现A,第二次出现B…),迭代2取DEF |
Sequential | Once | 每个用户取值均一样,每个用户的所有迭代中的取值均一样,所有用户每次从头 | VUser1-VUser m:所有迭代取顺序A |
Random | Each iteration | 每个用户每次迭代均随机去一个值 | VUser1:迭代1取E,迭代2取S,迭代3取A VUser m: 迭代1取K,迭代2取J,迭代3取Z |
Random | Each Occurrence | 每个用户每次遇到随机取一个值(一个迭代可能遇到多次,如遇到3次) | VUser1:迭代1取ERF,迭代2取BNB VUser m: 迭代1取PLK,迭代2取NBV |
Random | Once | 每个用户为随机取值,每个用户的所有迭代中的取值均一样。 | VUser1:所有迭代取随机K VUser n:所有迭代取随机M |
Unique | Each iteration | 每个用户每次迭代(顺序)取一个不同的值,所有用户每次继续,需注意参数不足报错问题,如10个用户, 5次迭代,但仅有10个参数(A-J): VUser1:迭代1取A,迭代2…迭代5报错; VUser10:迭代1取J,迭代2…迭代5报错; | VUser1:迭代1取A,迭代2取B …迭代n取C; VUser2:迭代1取D,迭代2取E …迭代n取F; VUser3:迭代1取G,迭代2取H …迭代n取I; … |
Unique | Each Occurrence | 每个用户每次遇到(顺序)均取一个不同的值,参数列表中要有足够的参数,所有用户每次继续(一个迭代可能遇到多次,如遇到3次) | VUser1:迭代1取ABC(即:第一次出现A,第二次出现B…),…,迭代n取DEF VUser m:迭代1取GHI,迭代n取JKL |
Unique | Once | 每个用户取值都唯一,每个用户的所有迭代中的取值均一样,所有用户每次继续 | VUser1:所有迭代取A… VUser2:所有迭代取B… |
sequential 、Unique、Random 的区别。
sequential为顺序取,每个用户均从第一个参数开始取值。
Random 为随机,每个用户均随机取值。
Unique为唯一,每个用户取值均不同。
Each iteration(每次迭代):当使用同一个参数的几个语句相关时,使用该选项。
Each Occurrence(每次遇到):当使用同一个参数的几个语句不相关时,使用该选项;如对于随机数据,在该参数每次出现时都使用新值。
Once(一直):VUser为该参数的所有出现和所有迭代都使用同一参数;如使用日期和时间。
2015年1月1日 17:16