51Testing软件测试论坛

标题: 如何实现这样的一个检查点 [打印本页]

作者: fy_dodo    时间: 2006-9-2 16:41
标题: 如何实现这样的一个检查点
我希望在Action1中设置一个检查点,该期检查点的值为Action2中的DataTable中的值。其中Action2为Action1外部调用的一个子Action.
作者: fy_dodo    时间: 2006-9-2 17:18
Action2是一个后台添加商品的脚本,Action1是一个检查前台商品信息的脚本。大家都说说自己的看法吧。
作者: scanli100    时间: 2006-9-2 20:26
1. 可以将数据放到GlobalSheet中。
2. 采用DataTable.Value(ParameterID [, SheetID]) 调用。
作者: walker1020    时间: 2006-9-4 13:08
标题: 也可以这样做
把 Action2中的DataTable中的值 作为一个输出参数输出到Action1的某个变量,然后在 Action1中 自己写代码 来实现你说的 检查点的功能。
作者: fy_dodo    时间: 2006-9-7 15:05
原帖由 walker1020 于 2006-9-4 13:08 发表
把 Action2中的DataTable中的值 作为一个输出参数输出到Action1的某个变量,然后在 Action1中 自己写代码 来实现你说的 检查点的功能。


alker1020版主,传出参数是不是只有通过RunAction才能进行触发的吗?
你说的输出参数的方法,我也想过,但是Action2本来就是被Action1通过RunAction调用的子Action,并且Action1参递数给了Action2的。那要实现Action2再传递参数给Action1,是不是需要再次使用RunAction才能实现呢?这样相互的调用会不会造成结构上很混乱呢?

我是这样解决的:
将Action2用到的数据,保存在Test外部的Excel文档中,在Action2中通过DataTable.ImportSheet到Run-Time DataTable中,这样,Action2,Action1均可以去取得Value值。
作者: walker1020    时间: 2006-9-7 20:03
你说的“Action2本来就是被Action1通过RunAction调用的子Action,并且Action1参递数给了Action2的” 太绕口了,我看了半天才感到好像明白了你的意思。其实你要表达的意思就是: Action1 调用 Action2, 并且在调用时 把 某些参数传递给了 Action2。 对不对? 楼主,以后表述要简明扼要,好不好?

我的意思是说: 设置 Action2 的参数时,除了你已经设置的输入参数(也就是Action1 需要传递给 Action2 的参数),你还要设置一个 输出参数( 把  Action2中的DataTable中的值 赋给这个参数,然后让 Action1 得到这个值)。这样 在Action1 通过 RunAction 调用 Action2 时, 根据输出参数 你就得到了 Action2中的DataTable中的值 ;然后 自己写 判断语句 来实现你说的检查点的效果吧。  注意,这样 Action1 通过 RunAction 调用 Action2 时, RunAction  的后面必须要有输出参数。

从楼主的描述中,我感觉楼主好像不知道 输出参数呀。如果你想用我说的这种方法,那你就认真仔细去看 QTP Manual 里 关于 输出参数的用法和作用的说明吧。

如果楼主实在是不知道怎么实现我说的这个思路,那么 你就不要想了,反正你这个问题已经解决了。

[ 本帖最后由 walker1020 于 2006-9-7 20:08 编辑 ]
作者: walker1020    时间: 2006-9-7 20:06
强烈建议你 按照  scanli100  说的思路去试试看,因为 他说的方法简单、容易操作。 他是通过对 DataTable 进行操作后 得到这个值的。DataTable.Value 的具体用法在帮助里面有详细的说明。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2