51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3259|回复: 9
打印 上一主题 下一主题

[原创] 脚本参数化在Generator中迭代运行正确,但Controller中加载Vuser后却没有结果?求助

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-9-16 17:24:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近开始学习LoadRunner,用公司的一个B/S系统做练习。
脚本是这样录制的:
登录系统(Init)。点击进入“要素”分发模块,输入某个“要素”单号,将该“要素”查询出来,双击该要素,子窗口弹出,输入必要信息,确定关闭子窗口。确定分发要素(Action)。退出系统(End)。

采用的协议是Winsocket(因为系统用到delphi控件,所以没有用web)

脚本运行没有错误,参数化“要素”单号后(包含10个左右的参数,并设置为sequential-each iteration),并设置脚本迭代3次,脚本仍然运行正确,即要素正确的分发出去了。
之后我将脚本放入场景中,加载3个虚拟用户,在场景中没有设置脚本迭代(默认迭代一次),运行场景,3个虚拟用户均pass,
但是查询分发的要素时,只有第一个要素分发成功,其余的要素没有被分发。。。。这是怎么一回事呢?

每个虚拟用户是如何执行脚本的呢?虚拟用户运行Action事务和迭代运行事务部分有什么不同呢?
请大家指教,谢谢拉
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-9-16 17:28:34 | 只看该作者
是不是运行设置出了问题了,我也在学习中。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-9-16 23:25:20 | 只看该作者
要索单号用vuserid做参数试一下,或者设置成sequential-each occurence
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-9-17 00:09:52 | 只看该作者
可用sqlserver的事件探查器监视一下sql语句看看到底是怎么回事。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2007-9-17 13:14:10 | 只看该作者
似乎是Select next row & Update value on 这两个地方没有设置正确,继续试验当中
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-9-17 16:43:49 | 只看该作者
study
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2015-6-25 18:04
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    7#
    发表于 2007-9-17 17:46:16 | 只看该作者
    是更新值的问题~!

    every iteration 和 every occurence 在调试回放脚本时可以成功取到3个值,但是在场景中却取不到,为什么呢?

    我们可以做个实验:
    1、设置runtime-setting里的action的迭代次数为3,然后在场景中运行一个vuser,这样你应该是3个参数值都取到了,
    那么如果你运行3个vuser,而runtime-setting里设置迭代为1呢?
    那么每一个vuser都会取第一个值,然后就不再取新值,最后的结果也就是3个vuser都是用的一个值,你的结果中当然也只有一个了,:)

    occurence也是一样的,:)

    如果你想在场景中运行3个vuser,还后每个vuser都取到不同的值去提交,那么你选择下一行(select next row)选择随机或者唯一即可,后面的是不是迭代都没有关系了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2017-1-11 15:48
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    8#
    发表于 2007-9-17 18:03:14 | 只看该作者
    qiguojie 说的很有道理,强烈支持!!!

    楼主的参数的设置方式为:sequential-each iteration。
    按照楼主的设置:在controller中有3个虚拟用户,循环次数为1次的话,那第一次循环的时候,三个用户都去同样的参数(即:第一个参数)。 这样就会导致:只有第一个要素分发成功!

    正确的设置方法应该是:unique--each iteration.
    按照这样的设置:在controller中有3个虚拟用户,循环次数为1次的话,那第一次循环的时候,三个用户将会有各自的参数值(即第一个用户取第一个参数,第二个用户取第二个参数.....)

    关于参数的取值可以参照我的blog:http://www.51testing.com/?120561 ... e_itemid_17704.html
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2007-9-17 23:06:40 | 只看该作者

    回复 #8 spartan 的帖子

    我也是这么认为的,所以我认为要索单号用vuserid做参数,或者设置成sequential-each occurence也是可以的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
     楼主| 发表于 2007-9-18 15:55:30 | 只看该作者
    楼上的说得很对,正确的设置方法应该是:unique--each iteration.
    谢谢各位。。。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-15 14:46 , Processed in 0.084078 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表