加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Action 参数传递的三种方式

发布时间:2020-12-16 22:30:24 所属栏目:大数据 来源:网络整理
导读:QTP提供三种参数传递方式: Parameter Environment DataTable Parameter 函数传递参数 如:分别创建两个同级别 Action OutPutAct:将参数传递出来 InPutAct :获取 OuputAct 传递出来的参数 在两个 Action 中设置输出与输入参数。 在关键字试图中,选择鼠标

QTP提供三种参数传递方式:

  1. Parameter
  2. Environment
  3. DataTable

Parameter 函数传递参数

如:分别创建两个同级别 Action

OutPutAct:将参数传递出来

InPutAct :获取 OuputAct 传递出来的参数

在两个 Action 中设置输出与输入参数。

在关键字试图中,选择鼠标右键,[操作属性] 如下图:

在 OutPutAct 的 Action 中设置输出参数,设置参数名为 str

在 InPutAct 的 Action 中设置输入参数,设置参数名为 str

在 OutPutAct 的 Action 中需要对参数赋值:

[plain] view plain copy
  1. Parameter("str")="tester"

在 InPutAct 的 Action 中获取参数的值:

[plain] view plain copy
  1. temp=Parameter("str")
  2. msgboxtemp

参数中转
虽然在 OutPutAct 与 InPutAct 中设置了输出与输入参数的过程,但运行起来仍然无法进行参数传递,需要一个中间过程进行保存参数。创建一个变量进行参数传递, 在QTP中创建一个新的 Action ,然后调度进行参数传递, RunAction 用途是执行一个 Action

[vb] view plain copy
  1. Dimvars
  2. '运行OutPutActAction,然后把参数输出的值保存到vars变量中
  3. RunAction"Action1",oneIteration,vars
  4. '运行InPutActAction,然后将vars中的值传递给InPutAct
  5. RunAction"Action2",vars

注意:在测试该小段脚本时,将测试流程中原先创建的OutPutAct 和InPutAct 删掉,要不会等于执行每个Action执行2次,其中一次是获取不到值的。

Environment 函数传递参数
采取 Environment 进行 Action 的参数传递更加简洁
在 OutPutAct 的 Action 中进行参数赋值

[vb] view plain copy
  1. Environment("str")="tester"

这语句完成两个过程
在环境变量中创建一个新的变量,名字叫 str
对这个新的变量进行赋值操作

在 InPutAct 的Action 中获取环境变量

[vb] view plain copy
  1. temp=Environment("str")
  2. MsgBoxtemp

DataTable 传递参数在
DataTable 中的 Global sheet 中创建一个新的字段,命名为 str
在涉及到不同的 Action 的参数传递,最好将参数设置到 Global Sheet 中。
设置与获取参数
在 OutPutAct 中进行参数的赋值操作

[vb] view plain copy
  1. DataTable("str",dtGlobalSheet).value="tester"

在 InPutAct 中进行取值操作

[vb] view plain copy
  1. temp=DataTable("str",dtGlobalSheet).value
  2. msgboxtemp


总结

三种模式进行参数传递的相同点:

  1. 都提供了一个参数保存的策略。

  2. 都提供了相对应的公共接口来进行参数传递的过程。

三种模式进行参数传递的差异:

参数有效性范围

Parameter:只能适用与参数定义的 Aciton 使用,不能在其他的 Action 中进行调用,参数命名也只要在本 Action 中不重复即可。

Environment:定义的变量适用于整个脚本,即任何一个 Action 都可以调用,所以在脚本内变量不能够重复。

DataTable:适用于整个脚本,而且通过 Sheet 的类型(Global、Local)作为一个变量的逻辑范围约定,在同一个Sheet中参数命名不能够重复。

参数的类型

Parameter 和 Environment :无法进行数组参数的传递。

DataTable:可通过多行数据的模式来替代数据的模式进行参数传递。

参数来源

Parameter 和 DataTable:参数来源仅只能在脚本中通过程序或者手工设置。

Environment :可以由其他脚本进行修改或者调用,可以在不同的 Run session 进行设置或者调用。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读