QTP自动化测试实践

5星(超过95%的资源)
所需积分/C币:10 2011-11-14 15:48:19 3.66MB PDF
5
收藏 收藏
举报

数据驱动测试 测试脚本的开发和维护是自动化测试的重要环节,适当地调整和增强测试脚本,能提高测试脚本的灵活性,增加测试覆盖面,以及提高应对测试对象变更的能力。数据驱动方式的测试脚本开发是解决这类问题的重要手段。 本章介绍如何在自动化测试过程中使用数据驱动的测试脚本开发方式,对测试脚本进行参数化,包括如何使用QTP的Data Table参数化、Action参数化、环境变量参数化等脚本参数化的方法。
Yalue Configuration Options C Constant Frankfurt c Parameter D ataT able Name:P_Item in Data Table o Global sheet C Current action sheet(local) Cancel H 图选择参数从 读取 提示:在这个界面中,选择“ Parameter”,在旁边的下拉框中选择 Data Table”,在Name"中输入参数名,也可接受 默认名,在" ocation in data table"中可以选择“ Global sheet",也可以选择" Current action sheet()",它们的区别 是参数存储的位置不同 ()单击°K"按钮,在关键字视图中可看到,“Vae"值已经被参数化,替换成了如图所示。 eparameterizingTest1* Cpealion value Comment Documentation Flight R Make te"下 igt Reservatio f Date of Flight 121212 输航班日期 iType 121212 in de D ate of Flight: oec. 翻 Fly from 输入起始地点 cl he Devel tem from the" Fly Fl aa Fly te Db〔ped,输入终点 D≡ a Table coumn a FLIGHT i 查看航班 Click ie flight button 司 Flight table 输入订票人名字 插入订票记录 Click fe nse t order button a Illini 4 打开订需记录窗口 Cl k IFh i 2 Iwill 彐 Upen Urder 上圖 Fly To:CHeck CheckFoinit'Fly To!查订票记录中的航悲点是否正确 Check whethe ths下 y To. " list ha%2tex d ie 图参数化后的值 ()这时,选择菜单Vew| Data table",则可看到如图所示的界面。 Data Table _Item B C D E H 'an kurt -99bE乙L i GalalA I←□ ctive s 用 Data Tabl Missing 中的参数数据 可看到,在ptem”列中有一个默认数据“ Frankfurt,这是参数化之前录制的脚本中的常量,可以在“ptem”列中继 续添加吏多的测试数据。 提示:可以双击修改"p_tem”列名,计其可读性更强,例如,改成" FlyTo” ()把其他几个数据也参数化后,如图所示。 ParameterizingTest1* a Flight Reservation Activate Mase Ihe Licht Reservatio? window E Date ol Fligh DataT ablE[" Data c Flight∵ diGlcba5heel输入航班日期 Type<the alue cf the tIata ol Licht Jat BE Fl FroI Datatable FlightFrem, dtGlobalshee6输起始点 Select the s the value of he FlightFr5m'Da 目FTa DataT abler FluTo". dtGbbalsreet Select the the value of he Data T. F凵GH 查看新班 Click the Flight button 旺 Flights table F Fron 近择航班 select the 1 item from the From" ist 选择所 Click the o bu to RBE Name 输订票人名宰 Er the A w Insert Order 插入订票记录 Click the inset order butt sa Button 4 打开订票记录窗 Click the Butt n 4 BE Fly Crack CheckPoint[ Fly To] 检查订票记录中的航班终点是否正狗 Check whether th3"Fya"'liha数epr 44川 eyrurd vie詈〈 EayerIVi出 图参数化后的测试步骤 运行时,就会从如图所示的数据表格中提取数据来对测试过程中的各项输入进行参数化 Data tab D3 FlyTo Data_of_ Flight FlightFrom D F G A frankfurt 21212De 2 London 121212 Denver 3 Paris 121212 Denver 5 fActive Screen E Data T able? Missing Resources 图 存储的参数值 使用随札数来进行参数化 对于选择航班这测试步骤的参数化来说会有所不同,因为航班会跟随所选择的起点和终点而变化,因此,需要做 特殊的处理。如下代码所示: 取得航班列表的行数 随札选取其中项 选择航班 先通过访问 属性,获取航班列表的行数,然后使用 随机选取其中一项,最后,再 通过 方法选择航班。参数化后的测试步骤如图所示。 Parameterizing Test1量 二 ht reservation actiate Make the Flght Reservation window E Date of Flight Da tAbler data of fligb", dtGbabalshee输入航豇日期 Type the value of the Data of Flight aa ly From Da: tabler flightFto" d globalise:输入起始地点 ect the < the value of the Flight=ron 〓FT elect Da: atablel'FlTo, dt ilobalsheetl 愉A终点 select the the walue of the Fly To da FLIGHT Click 查看航班 ck the" FL GHT bu故an 到+ghs E From Getltes Count 职得航班列表的行数 Retrieve the umber of iten s in the Fr ③ Randomilun O. Count 随机选取其中一项 选择航班 elecdtem item from the Fi Click 确认选择航班 ck the ok buttar set J 输入订票人名字 Enteral 插入订票记录 Clck the Insert Order" buton Button 4 开订票记录窗 Ick. the button 4 button Check CheckPoint[ Fly To 噬查订票记录中的航终点是古 Check whether the"rTo" ist has H+H工 error野er人正 pert vier/ 图参数化后的测试步骤 提示:使用随机数也是测试脚本参数化的一种重要方法,在的测试代码中,可用 来实现 在关键宇视图编辑的界面如图所示,其效果与在脚本中直接编辑是一样的 alue Configuration Options C onstant arameter c For each action iteration C For each test iteration enture te OK Cancel Hel 图选择参数化方式为 Random Number 参数化检查点 测试脚本的最后一个测试步骤是检查订票记录中的航班终点是否正确,同样需要进行适当的参数化,方法如下 ()单击检查点所在测试步骤的"vaue列中的单元格,如图所示 Parameterizinglest1* Ivalue SunlIt L DocUmenta: ion v●tin1 a Dete of light DatAble" Deta of flight! dGlobalghset}入班日 Type the value of the Deta of rligl-t 圈 From select DataTable FlightFicn: dtGlobaSheel)输入起始地点 Select the <the value cf the flichtfrot 印bTa Daal abler flO",d GlobalShe= 输入点 elect the <the value cf the FlyTo Da E FL GH lick 查晋航班 Click, the FLGH: bilton 彐 日Fn6erec 取得舫班列表的行数 Retrieve the number of i ems in ihe fr E9 RandomNun O. IcmCount 随机选积其中一项 i-E Fruin 挥新 认选择骯 RBd Name 输入订票人名字 Enter CMu in the Nan 折入订票记录 Click the " rsert Order ton. 打开订要记录窗口 噩目FT check chack Font"Fk Ta "t √查订票记录斗航班婆点是否。Che9Whe中T"kRha H卜M| Keyord vier〈ertⅥ1e 图设置检查点参数 ()单击旁边的按钮,则出现如图所示的界面。 heclpoint Properties Name:Fly Clas WinLomboBox e Property AEc : height BC 1t品m雪 9 明 selection <Fly To selection> ABC: text Fr ankfurt 1+1 :1n5 Configure value Const ant Frankfurt 4 parameter DataT abel Fly_To_ selection", dtGlobalsheet) Checkpoint tir OK Help 图检查点属性编辑界面 ()在“℃ onfigure value"中选择" Parameter"后,可单击“oK"按钮接收默认的设置,也可单击旁边的编辑按钮,在如图 所示的界面中,进行参数化的详细设置 Paraneter Opti x Parameter types Datatable To selection ocation in data table a Global sheet Current action sheet [local Advanced configuration 厂 Use Data Table formula OK Help 图 参数化的详细设置 在" Parameter types"中,选择 ata Table”;可在“Name"修改参数名,或接受默认的命名,产生如图所示的数 据列,也可以选择"FⅣyTo",因为检査点所指的航班终点得到的预期值应该与测试步骤中选择航班终点时的输入数据一致 否则认为错误 Data tab 一早x D3 Fly To Data_ of_ Flight FlightFrom Fly_ To selection E F Frankfurt 121212 Denver Frankfurt ondon 121212 Denver London 3 Paris 121212Dm 下Gl〈An reen Data Table-3 Missing R 中存储的参数值 设置数据表格迭代方式 把测试步骤和检查点的参数化工作都完成后,可得到如图所示的测试步骤 a Parameterizing Test1* alu I F light reservatio Make the"F igt Reser:/=tion"window 诉订票记录 9 Date o Flight Datatable( Dsta of flight, daGoba1hee验A航班日期 Type<. he vah e of the dsta叫「ligh Bi Fly Fom Datatable(" FlghlFrom!dG| bashee输入起始地点 elect the <He value o: the FlightFro Data T able[fto, d Globals 输入终点 ect the <re value o the FlyTo'DE T FL GHT 查看航班 Click the FLigHt buton 彐Fgh: 取得航班列表的行经 Retrieve the nur ber o items in the F E Randon 0. ItemCount 随选取其中 选择航班 Select the Se eclltem ten from the "F iller: 谢认航址 Click thoU butt 菜Nan e 订票人名字 Enter c in dre"Nare t 插入订票记录 Click the" naet order"btan Futon call 待记录插入过程的完成 取得订票记录号 开订票记录窗口 Click the Butto 4 btt on r彐0en01 E Order No 选择以订票号为依据查询 et the state o the Orde No, ched RE Est Type fecordNo 设置订票号7 be RecordNc n the" dit 'edit box 认询 巾Tc Che=k CheckPointr'F,"" 专查订票记录中的航班終点是、 Check whethe. the"TTo" list has HpH、【 sword ie人ExP rt 1 图参数化后的测试步骤 切换到专家视图,可看到如图所示的测试脚本 pArameterizing ir dow Flight re 2wdW(" Flight Reservatio1) Win Buton("Euan5Cck'新建订解录 Fir dow( Flight REser/ati1) WinOEject( Da e of F ight" Type Data Table"Lata0 f_ Fligh, rtclobasreet。八航發剪 rdw(" Flight REservatio ]Win ComboBox"FFm") Select Data T ablerFlightFmm:cGab8hE'入起始点 rdw( Flight reservat0) Win Combo0FyTa". Select data t able("FT口.the入界点 dM(" Flight iSer1). Inbucon" FLCHT)Cck'看新班 7. demount= Window(Figh: Reservation" Dialog(" lights Table") Winlist("Frm") Getlemscourt)取得致形的数 8: Selectmen= Randommur ber(0. Iter Count'机数真宁一项 9. ndir llum( Flight R= servaliu'I).DialuLd"FT出 y).WITList Furr) Sulu Swett WeIL:燃破 10.wrdw( Flight Reservation].Dialog" Flights Table).wineT. on“K"k'认爸班 WrdW(" Flight reservatio1WnEc(am:).SCNJ'翘入汀界A名字 2 rdw(" Flight rcccratic1 win Dupont" nsct Order"). Clid.入打界记 13 件记平颠入过程的完 14FecN= Wind=w( Flight Reser.ior")wnEd门 Order rlo: ).GetRuPrope ty te)变得景记录号 15:Mrdw(" -light REser0 win BuTon(un4Cick’算形订记录 dow! Flight REseration).Dialog oper Order t 薄计变 色50 Window "Flight REservatio07 inCombo Bo:a" Fly To: ").Che= Check Point(甲章订票记景中的孙点是否正骑 参数化后的测试脚本 运行这个测试脚本之前,还要做一些必要的设置,选择菜单“Fie| Settings",出现如图所示的测试设置界面,切 换到“Run”页,在“ Data table iterations”中,可设置数据表格的迭代方式 Test Settings perties FiurResaurces Parameters Environment Recovery Data table iter ation h下 nc tration t RULILUILLIUW lu When error occurs during run session pop up message box Object synchronization timeout: 20 Disable Smart Identification during the lun session Save image of desktop hen [if test is run by Mercury Bl ss PrOcess Moni 匚确定取消」」应用凶」帮助 图设置运行迭代方式 提示:“ Run one iteration only是指仅运行一次迭代,也就是说,即使 中有多条测试数据,也仅执行一 次;“ Run on all rows’则是指按数据袤格中的所有数据都运行一次;选择“ Run from row. to row.则可进一步设置运行 的测试数据范围 选择“ Run on all rows”,得到如图所示的测试结果。 d Pur aeLer iningTesLl [TeayBesul LsI TesL Resulls 四Q囊的负←中? .afceT Summ ary e., Parame"prizing asti Iteration.(Row 1) Standard Checkpoint"Fly To: :Passed ↓ Ac-ion1s1mar3 Date and time: 200833 11: 37 Details 目M⊥y上ym;seLe ly Ta: Results 彐F1 I=hts Tab roperty Name perty value E From.Ge-ItemsCount 回Em.S-c lert on 卫es1 t Detal1s人s For help, pess F1 图测试结果 测试输入的参数化 对于重复使用的测试用例,可以转换成公共用例,适当参数化后,可被其他测试用例调用。在QTP中,可以把 的输入适当参数化,转换成可重用的测试步骤。 编辑 的属性 的" Flight程序中的登录模块的测试步骤是在执行其他测试步骤之前都要经过的测试步骤,因此有“潜力”成为 个可重用的对于如图所示的测试步骤,可以进一步参数化后,成为可重用的测试步骤,被其他 调用。 EsParameterizingTest2* ⊥二 ommen Documentation vo Actiont 国 LognAcivate Make the "Login dialog box active MERCURI 输入代里机构名Er" MErCUr rI lhe" Auer Nalle" euL Luy. Pas9 d: SetSecure"47671403124输入登录密码 Enter the encrypted string47b7712124.1 Click Cil the ok button Keyword Vier 图可重用的测试步骤 选择“ Action1"所在的行,然后单击鼠标右键,选择菜单 Action Properties”,则出现如图所示的界面 Location D: \QTP\C8\ Par ametelizing Test2\Actio Description Reusable acti 确定 取消 帮助 图 属性编辑窗口 在“Name"中输入新的 名称,例如“ Login Action”,在“ Description"中输入对 的描述信息,如图 所示

...展开详情
试读 59P QTP自动化测试实践
立即下载 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
leos_123 比较详细,实用
2012-12-03
回复
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
关注 私信
上传资源赚钱or赚积分
最新推荐
QTP自动化测试实践 10积分/C币 立即下载
1/59
QTP自动化测试实践第1页
QTP自动化测试实践第2页
QTP自动化测试实践第3页
QTP自动化测试实践第4页
QTP自动化测试实践第5页
QTP自动化测试实践第6页
QTP自动化测试实践第7页
QTP自动化测试实践第8页
QTP自动化测试实践第9页
QTP自动化测试实践第10页
QTP自动化测试实践第11页
QTP自动化测试实践第12页

试读结束, 可继续读6页

10积分/C币 立即下载