51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2062|回复: 6
打印 上一主题 下一主题

[求助] 使用关联处理一次性数据的用法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-7-17 17:10:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这里所指的一次性数据,是指数据只能处理一次,如进销存的单据审核,只能审核一次,再次审核就会报错了。
现有个业务是这样的:查询到未审核的单据,然后对该单据进行审核;脚本的处理主要用到关联,即关联单据的单号;脚本调试通过,但是在CONTROLLER里执行时有很多事务出错了,初步分析可能是因为使用关联时,没有使用ORD指定关联的数据,使得很多VUSER审核的是同一条数据,所以出错了。于是修改一下关联函数
        web_reg_save_param("SheetCode",
                "LB=SheetCode\":\"",
                "RB=\"",
                "NotFound=ERROR",
                "Ord={userid}",
                "Search=Body",
                LAST);
思路是使用集合点,将查询的结果,按VUSER的顺序分别赋值,避免取值冲突。经过这样改动后还是会有报错,只是成功率会高一点。问题仍未解决。

在这里请教各位,这种一次性需要处理的数据不可以使用关联的方法来处理么,只能使用参数化的方式来取值么?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2012-7-17 23:20:05 | 只看该作者
可以用关联,本来这个做的没啥问题,如果你换成参数化给我的感觉是这个东西不是真实系统的负载,因为真实情况下不可能每个用户都不互相操作数据的。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2012-7-18 10:01:49 | 只看该作者
现在使用参数化单号的方式,这样就应该不存在可能重复审核的问题了,但是现象仍是单跑没问题,上CONTROLLER就报错,我怀疑它的程序在后台处理有问题。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2012-7-18 10:12:29 | 只看该作者
场景报错的提示是什么呢?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2012-7-19 23:20:24 | 只看该作者
我遇到和你一样的问题了,也在郁闷中啊。。。求大侠指教
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2012-7-19 23:26:06 | 只看该作者
CONTROLLER 不设置超时事务可以全部成功,但是实际数据还是没有审核通过。 因为实际系统查询操作时,反应很慢,我就调整了下超时时间为999.  这下CONTROLLER 中并发20个用户运行后报错了。500,超时。。坑啊。还是只审核了一条数据。
之前我也和你一样,采用了关联取查询列表的记录,后面又参数化了。关联的时候并发还可以一次审核3条数据成功。参数化后并发就只有一条能成功了。 没思路了。。。。哎  单个运行都没问题啊。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2012-7-20 16:03:59 | 只看该作者
你这个问题是这样的并发后脚本虚拟用户 可能取到相同的值
我的解决方案是  如果有很多这样的数据看假设查询后有10页
你在 GO 翻页的时候关联  当然多少页 去随即
然后再关联取随机值 这样话 概率会小很多的
不知是否有帮助
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-6-18 14:01 , Processed in 0.081963 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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