51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

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

[原创] 不能识别之前录制过程中动态产生的交易编号,该怎么对脚本进行修改?(具体见内容!)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-9-3 18:14:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
某系统的流程为:提交申请--申请审批通过(此时会自动生成1个合同编号)---提交合同---审批合同

在录制这个脚本时,假设生成的合同编号为001.当合同提交审批后(该数据在查询页面不可见)
运行该脚本时,运行脚本生成的合同编号变为了007(假设其他人也在做业务,交易编号不是简单的+1),此时当脚本执行到查询页面里面找不到之前的001,故不会执行我们期望中的操作(对007这条数据进行提交操作),此时,我们该如何修改脚本,能让脚本在执行时,不受合同编号的限制,而自动运行.sdlkfj9

还请大家指点1.2 .感激不尽啊~~~`sdlkfj9

[ 本帖最后由 Sunny瞳瞳 于 2007-9-3 18:17 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-9-3 20:21:38 | 只看该作者
用DataBase Output Value输出数据库中的相关信息,将其输出到一个自定义环境变量或者Datatable中,就可以动态获得所需信息。具体操作可查阅帮助文档,楼主尝试下吧~
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-9-3 22:16:55 | 只看该作者
关注
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2007-9-3 22:41:04 | 只看该作者
原帖由 hsjzfling 于 2007-9-3 20:21 发表
用DataBase Output Value输出数据库中的相关信息,将其输出到一个自定义环境变量或者Datatable中,就可以动态获得所需信息。具体操作可查阅帮助文档,楼主尝试下吧~



谢谢啦。。现在在家没测试站点。。。明天到公司了在研究下。。。十分感谢。。。sdlkfj3
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-9-3 22:45:56 | 只看该作者
不明白你的意思,qtp无非是利用一个数据源连接到数据表,在数据表中作查询操作,查询怎么写?select 刚才提交的那个 from table?

我觉得不可能是001或者007作为唯一识别属性,名称,生成时间之类的很多东西都可以作为操作对象的识别属性,换个属性就行了。

原帖由 hsjzfling 于 2007-9-3 20:21 发表
用DataBase Output Value输出数据库中的相关信息,将其输出到一个自定义环境变量或者Datatable中,就可以动态获得所需信息。具体操作可查阅帮助文档,楼主尝试下吧~
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-9-3 23:09:17 | 只看该作者

回复 #5 jackymail 的帖子

在提交合同前肯定要输入一些合同的信息,比如姓名,内容等,而且这些都是要存入数据库的,这些信息应该足够写查询语句了吧~
偶觉得楼主可能是需要得到合同的编号,因此还是得访问数据库~否则就如5楼所说换其它属性识别方便点

不管怎样还是先等楼主明天得到结果吧~
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2007-9-4 15:37:43 | 只看该作者
问题已经解决了..在北京的同事和大家的帮助下:

例:
先建一个工程1 建一个action1,录申请的脚本,并且设置action1的传出参数 contractNO,在脚本里要有得到这个参数的脚本。然后再建一个工程,建一个action2,录合同部分的脚本,该action设置一个传入参数 contractNO,脚本中对合同号操作的地方都写成parameter("contrctNO"),比如link  ,就写成 Link("text:="&Parameter("contractNO"))

然后把工程1和工程2中的action的actionpropery中勾选  reusable action,然后再建一个工程,新建一个action,引用前两个工程的action,方法:点击菜单 insert--call to existing action ,成功后系统会生成如下脚本
RunAction "Action1", oneIteration, contractNO
RunAction "Action2", oneIteration, contractNO
这2句话里面的contractNO是需要你自己加的.

谢谢大家了哈....

[ 本帖最后由 Sunny瞳瞳 于 2007-9-4 15:42 编辑 ]
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-5-3 21:00 , Processed in 0.073483 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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