参数化

本文详细介绍了一个自动化测试案例,包括脚本自动调起应用程序、脚本录制、对象库管理、参数化及文本输出、检查点设置等关键步骤。通过具体示例展示了如何实现登录、新建订单、打开订单和登出等操作的自动化测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1)脚本自动调起应用程序练习

(1)     使用Systemutil.Run打开订票程序(exe)。

2)脚本录制练习(分模块)

(2)     将Login/New Order/Open Order/Logout四个操作分为4个Action, 分别命名为01_Login/02_New Order/03_Open Order/04_Logout

3)对象库练习

(3)     保存Action: 01_Login的本地对象库为NewLogin.tsr

(4)     删除Action: 01_Login的本地对象库。

(5)     关联Action与对象库:01_Login使用共享对象库(用已保存的NewLogin.tsr),并设置共享对象库的路径为相对路径。

4)参数化和增加文本输出练习

(6)     将Action: 02_New Order操作中需要的数据Fly From/FlyTo/Name/Tickets进行参数化,并为每个变量设置3个数据值。

(7)     将Action: 02_New Order操作中得到的Order No.作为输出参数输出到数据表(同步点、标准输出)。

(8)     在Action: 03_Open Order中将数据表里的Order No.作为输入参数;

5)检查点练习

(9)     在Open Order操作中,设置检查点,检查该Order No.中生成的Date of Flight/Fly From/Fly To/Name的信息是否和02_NewOrder中的输入值一致(自定义检查点), 并将检查结果打印在Report中。

(10)   关闭程序。

(11)   定义变量

login界面

 '使用Systemutil.Run打开程序
SystemUtil.Run "C:\Program Files (x86)\HP\Unified Functional Testing\samples\flight\app\flight4a.exe"
'登录正确的用户名密码
Dialog("Login").WinEdit("Agent Name:").Set "mercury"
Dialog("Login").WinEdit("Password:").SetSecure "mercury"
Dialog("Login").WinButton("OK").Click

new order界面

'声明变量 totalCounts,randRow,datestr,flyFrom,flyTo,name
Dim  totalCounts,randRow,datestr,flyFrom,flyTo,name
Window("Flight Reservation").ActiveX("MaskEdBox").Type "121215"
'Fly From,Fly To参数化
Window("Flight Reservation").WinComboBox("Fly From:").Select DataTable("FlyFrom", dtGlobalSheet)
Window("Flight Reservation").WinComboBox("Fly To:").Select DataTable("FlyTo", dtGlobalSheet)
Window("Flight Reservation").WinButton("FLIGHT").Click
'随机数参数化
totalCounts=Window("Flight Reservation").Dialog("Flights Table").WinList("From").GetItemsCount
randRow=RandomNumber(0,totalCounts-1)
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select randRow

Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
'Name,Tickets参数化
Window("Flight Reservation").WinEdit("Name:").Set DataTable("Name", dtGlobalSheet)
Window("Flight Reservation").WinEdit("Tickets:").Set DataTable("Tickets", dtGlobalSheet)
Window("Flight Reservation").WinRadioButton("First").Set

datestr=Window("Flight Reservation").ActiveX("MaskEdBox").GetROProperty("cliptext")
flyFrom=Window("Flight Reservation").WinComboBox("Fly From:").GetROProperty("text")
flyTo=Window("Flight Reservation").WinComboBox("Fly TO:").GetROProperty("text")
name=Window("Flight Reservation").WinEdit("Name:").GetROProperty("text")
Window("Flight Reservation").WinButton("Insert Order").Click
'同步点,检查点
wait 6
Window("Flight Reservation").WinEdit("Order No:").Output CheckPoint("Order No:")
'输入到03_Open Order中datestr, flyFrom, flyTo, name,一次迭代
RunAction "03_Open Order", oneIteration, datestr, flyFrom, flyTo, name

 

open order界面


'嵌套,输入参数
Dim input
Window("Flight Reservation").WinButton("Button").Click

Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Order No.").Set "ON"
'Order_No参数化
Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").Set DataTable("Order_No", dtGlobalSheet)
Window("Flight Reservation").Dialog("Open Order").WinButton("OK").Click

'输入从NewOrder中传入的参数
input=Parameter("datestr","flyFrom","flyTo","name")
'设置标准检查点
Window("Flight Reservation").ActiveX("MaskEdBox").Check CheckPoint("MaskEdBox")
Window("Flight Reservation").WinComboBox("Fly From:").Check CheckPoint("Fly From:_2")
Window("Flight Reservation").WinComboBox("Fly To:").Check CheckPoint("Fly To:_2")
Window("Flight Reservation").WinEdit("Name:").Check CheckPoint("Name:_3")

logout界面

Window("Flight Reservation").Close

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值