可不可以设置所有VUser公用的变量?
情况是这样的,服务器接受的请求中,必须有一个变量是一个序列号,第一个请求时是1,第二个是2....可不可以设一个公用的变量,当虚拟用户用完它时,就把它的值加一,以便下一个用户用它? 如果所有的vuser用的数据可以是相同的用简单的参数化就能办到.
如果所有的用户要求的东西不一样的话可以通过字符串的拼接...更改下面的pSSOID_raw[],然后把pSSOID用到你想用的ITEM应该就可以了,希望对你有帮助
char pSSOID_raw[]="test01";
lr_vuser_status_message(lr_eval_string("Iter:{ITER} ,vUserId : {UserId}"));
strcat(pSSOID_raw, "_");
strcat(pSSOID_raw,lr_eval_string("{UserId}"));
strcat(pSSOID_raw,"_");
strcat(pSSOID_raw,lr_eval_string("{ITER}"));
lr_save_string(pSSOID_raw, "pSSOID");
lr_output_message("SSO Id is %s", lr_eval_string("{pSSOID}")); 同意二楼的看法 谢谢,不过,不是这样。
这样每一个虚拟用户得到的都是从1开始的。
我是想,如果有3个并发用户,
第一个循环,
用户1 拿到1
用户2 拿到2
用户3 拿到3
第二个循环,
用户1 拿到4
用户2 拿到5
用户3 拿到6
或者,如果用户2在第一个循环里执行的比较快的话,情况就会是
第二个循环,
用户2 拿到4
用户1 拿到5
用户3 拿到6 额...:L
等待其他大大解决当中... 直接参数化就可以,每个用户取不同的值,然后给他们分配数据块。比如:
用户1取:1-10
用户2取:11-20
………………
这样应该可以。
参数化完成后,不会出现像你说的某个用户快,就不按照设置而随机取值(取随机值也是要设置的)。
回复 6# 的帖子
不知道参数化设置的时候具体怎么设置?好象LZ是要所有的取值功能在一个脚本里完成... 就是在一个脚本里,详细看一下帮助中的参数化部分。就明白了。 原帖由 Zee 于 2007-12-7 13:45 发表 http://bbs.51testing.com/images/common/back.gif
直接参数化就可以,每个用户取不同的值,然后给他们分配数据块。比如:
用户1取:1-10
用户2取:11-20
………………
这样应该可以。
参数化完成后,不会出现像你说的某个用户快,就不按照设置而随机取值(取随 ...
直接分块不行。要求是无论是谁要请求服务,在服务器端一定要见到发过来的请求,是带有一个序列号,而且是要按顺序的。服务器端有个计数器,它被请求过一次就加1,下一个请求必须要提供正确的序列号,如果不对,就会失败。是MQ中的应用。 今天看回来,这个问题又解决了。用VTS. Wilsonmar那里有。 可以用参数,也可以直接设置公共变量,在action外设置
页:
[1]