• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

QTP中action之间的参数传递应用实例详解

发布: 2009-5-09 23:11 | 作者: Cheers.Lee | 来源: 测试时代采编 | 查看: 491次 | 进入软件测试论坛讨论

领测软件测试网

这个问题本来不想写,个人认为:QTP中action之间的参数传递,应该是比较容易的事情.但是今天用的时候,突然没有设置成功,哎! 忘得真是个快啊!所以有感而发,相信这篇文章对很多人都会有用,我自己也拿来备忘.

  好了,废话少说,直接切入正题.

  还是用QTP自带的flight4a.exe为例.

  本例的业务流程:首先登陆系统,然后新建一订单,然后产生订单编号,最后,通过传递这个定的那编号,去查询这条订单.

  用到QTP的知识:QTP中Action split(拆分);Action中参数传递.

  首先我们录制完成的一个流程:(1)输入用户名和密码,登录系统;(2)输入订单日期,起始地点,选择航班.(3)输入订购人名称以及数量,选择类别,点击 insert产生订单.系统会自动生成订单编号.(4),通过传递这个定的那编号,去查询这条订单.(5)然后退出系统.

  按照流程录制玩脚本,对这个脚本进行拆分,在Edit-Action-Split Action 中,如图:

  

  注意:Nested为我们要按照嵌套模式划分,因为我们首先要划分一个main Action,这个main Action中去调用其他嵌套的action(如:log_in,new_order,insert_order,open_order,log_out.),所以第一次划分的时候选择的是Nested.在划分时,记住一定是在Expert视图中划分,键鼠标光标放在第一行代码的前面,然后在Edit-Action-Split Action,就出现如上图的界面.

  接下,用上边同样的方法,划分其他Action,这是要选择:Independent of each other.即,划分几个独立的Action.每次能将一个Action划分成2个,重复操作,直到划分完成.

  注意:每次在如图:上.界面中,1st action 的Name是上一次划分时的2nd action的Name.

  我们需要将这个业务流程拆分成一个main Action 和 4个Action分别是:log_in,new_order,insert_order,open_order,log_out.

  划分完成后,在main action 中产生的脚本如下:

main 脚本(这是已经完成修改后的脚本)
*************************************
RunAction "log_in", oneIteration
RunAction "new_order", oneIteration
RunAction "insert_order", oneIteration,orderno
RunAction "open_order", oneIteration,orderno
RunAction "log_out", oneIteration


其他脚本为:

log_in 脚本
**************************************
Dialog("Login").WinEdit("Agent Name:").Set "Cheers.Lee"
Dialog("Login").WinEdit("Password:").SetSecure "49e93b35b292190e081ad0ce13cf2b8519acfc2d"
Dialog("Login").WinButton("OK").Click

new_order 脚本
***************************************
Window("Flight Reservation").ActiveX("MaskEdBox").Type "090418"
Window("Flight Reservation").WinComboBox("Fly From:").Select "Frankfurt"
Window("Flight Reservation").WinComboBox("Fly To:").Select "London"
Window("Flight Reservation").WinButton("FLIGHT").Click

insert_order 脚本(这是已经完成修改后的脚本)
****************************************
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "11427  FRA  09:48 AM  LON  10:31 AM  AA    $170.47"
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
Window("Flight Reservation").WinEdit("Name:").Set "lihuichang"
Window("Flight Reservation").WinEdit("Tickets:").SetSelection 0,1
Window("Flight Reservation").WinRadioButton("First").Set
Window("Flight Reservation").WinRadioButton("Economy").Set
Window("Flight Reservation").WinButton("Insert Order").Click
wait 8
Window("Flight Reservation").WinEdit("Order No:").Output CheckPoint("Order No:")

open_order 脚本(这是已经完成修改后的脚本)
*****************************************
Window("Flight Reservation").Activate
Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."
Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Order No.").Set "ON"
Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").SetParameter("orderno")

log_out 脚本
*****************************************
Window("Flight Reservation").WinMenu("Menu").Select "File;Exit"

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: Action qtp QTP 参数 实例 详解 action

21/212>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网