QTP.2完全使用手册_第1页
QTP.2完全使用手册_第2页
QTP.2完全使用手册_第3页
QTP.2完全使用手册_第4页
QTP.2完全使用手册_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

功能自动化测试工具(QTP_9.2)完全使用手册8月QTP工具简介自动化测试的好处 但凡有过手工测试经历的读者,对于手工测试的缺陷一定是深有体会的。手工测试既单调又耗时,需要投入大量的人力,并且更糟糕的是,假如项目时间有限制,那么会常常导致无法彻底地手工测试所有功能,从而导致某些潜在的软件缺陷没有发现,进而使得软件产品的质量存在较大的隐患。鉴于上述手工测试的缺陷,市面上出现了一大批功能自动化测试工具,QTP就是其中的翘楚。作为MI企业推出的拳头产品之一,QTP可以测试Windows原则应用测试、各类Web对象,ActiveX控件,VisualBasic应用程序等,并且还可以根据实际状况加载不一样的插件,从而测试例如Oracle,SAP应用等服务。QTP通过记录并模拟实际顾客的操作,例如点击鼠标、单击图形顾客界面(GUI)等,并通过一系列的强化功能,如设置检查点,进行参数化操作等,实现了对功能测试的自动化过程,从而将测试工程师从大量繁琐的手工测试中解放出来。迅速(Fast)QTP运行测试比实际顾客快得多可靠(Reliable)测试每次运行时都会精确执行相似的操作,因此消除了人为的错误可反复(Repeatable)您可以通过反复执行相似的操作来测试网站或应用程序的反应可程序化(Programmable)您可以编写复杂的测试来找出隐藏的信息广泛(Comprehensive)您可以建立一套测试来测试网站或应用程序的所有功能可复用性(Reusable)您可以在不一样版本的网站或应用程序上反复使用测试,甚至在顾客界面更改的状况下也不例外QTP测试流程 QTP的测试流程可以分为7个阶段,准备录制——>录制脚本——>增强脚本——>调试脚本——>运行测试——>成果分析——>汇报缺陷。准备录制:在进行脚本录制前,需要确认待录制的程序和QTP的有关参数与否设置好,同步要对测试脚本中的环节事先运行一遍或多遍,首先熟悉脚本环节,另首先也看待录制程序进行事前检查。录制脚本:按照脚本设计中的环节,逐渐进行脚本录制。假如不慎操作了不在计划中的环节,不要慌乱,我们可以在后续的环节中对脚本进行调整。增强脚本:对前期录制的脚本进行对应的增长脚本操作,如设置检查点,以自动判断程序的输出与否与预期一致;设置参数化,以满足程序用多组数据来执行相似的操作;编写逻辑判断语句、循环语句等,从而实现脚本的多次执行等等。调试脚本:在完毕脚本的增强操作后,我们需要对脚本进行调试工作,从而保证在后续的执行测试过程中能顺利的运行。运行测试:通过运行程序,来检查程序的行为。在执行该环节时,QTP将按照脚本中的设置,自动打开运行程序或者浏览器,执行脚本中的每个环节。成果分析:将运行测试的成果记录下来,以便确定应用程序中的缺陷汇报缺陷:假如安装了QC,则能将测试成果中发现的缺陷汇报给QC中,从而实现了与测试管理工具的无缝连接。QTP的安装阐明 QTP运行在Windows平台上,下表为QTP配置的基本规定安装环境配置规定CPU256MHZ以上操作系统Windows98SE以上内存规定128MB以上磁盘空间规定200MB以上浏览器规定IE5.0以上Netscape4.0以上 在安装QTP之前,需要阐明的一种问题是,务必把QTP的安装文献放在一种全英文途径下,例如:D:\QTP9.2;假如安装文献的途径中具有中文字符,则有也许导致安装过程中出现错误。 QTP安装环节如下(阐明,在这里我们以QTP9.2作为简介对象):以管理员的身份登录系统,点击QTP安装文献中的“setup.exe”图标,自动弹出安装页面,如下图所示: 其中:“QuickTestProfessional安装”为安装主程序;“产品信息”为一种链接,链接到QTP的产品信息页面;“自述文献”为QTP的Readme文献;“QualityCenter加载项”为安装QualityCenter客户端,从而和QTP协同使用;“QuickTestPlus”为安装QuickTest的工具包; 我们点击其中的“QuickTestProfessional”选项,进入下一步。点击“QuickTestProfessional”后,系统会首先判断系统与否安装了.NetFramework2.0(该程序为Microsoft开发的,目的在于容许使用不一样编程语言和库进行协同工作以创立基于Windows的应用程序)。假如系统中没有安装,则会弹出一种提醒界面,如下图所示: 我们点击图中的“确定”按钮,从而安装.NetFramework2.0程序。我们按照引导程序安装.NetFramework2.0程序后,系统将进入QTP安装中的许可协议面中,如下图所示:点击其中的“我接受该许可协议中的条款(A)”,然后点击其中的“是(Y)”按钮,进入下一种安装界面。(3)在弹出注册信息界面,填写顾客名、企业名称、维护号,点击“下一步”(4)在弹出的“许可证类型”界面中,如下图所示: 我们选择其中的“演示版”(假如有正版授权,我们可以选择对应的“单机版”或“并发版”),QTP的演示版提供了14天的试用期限。需要阐明的是,假如计算机本来安装了Winrunner或者是QTP的网络版,那么就不能再安装演示版。(5)在弹出的配置选项中,如下图所示: 设置该界面的目的在于严禁浏览器的脚本调试功能,系统提供了自动配置和手动设置两种类型。这里我们选择自动配置选项。当然,我们也可以选择手工设置,详细环节如下:打开IE浏览器,选择“工具/Internet选项”;选择“高级”标签,选择“严禁调试脚本”复选框,并点击“确定”按钮。(6)在弹出的调试支持界面中,如下图所示: 该界面问询与否安装Microsoft的脚本调试工具——ScriptDebugger。假如下载了该脚本调试工具,那么我们运用QTP录制脚本时,在设置断点等功能时,就能启用脚本调试功能。因此提议假如能上网,则按照该界面中的默认选项设置,下载并安装MicrosoftScriptDebugger工具。(7)在弹出的“安装类型”界面中,如下图所示: 在该面中,顾客可以根据实际状况,选择完全安装或者自定义安装。假如选择自定义安装,则顾客可以根据自身状况,酌情选择需要安装加载的插件。在这里,我们选择完全安装。(8)在弹出“选择目的位置”界面中,点击“开始”(9)安装完毕后,需要重新启动计算机,这样QTP就可以使用了。(10)破解安装QTP9.2原程序安装完原程序后,将GetLicense.exe注册机放到安装目录(默认C:\ProgramFiles\MercuryInteractive\QuickTestProfessional)并运行它,注册机将生成一种注册文献,该文献在C:\ProgramFiles\CommonFiles\MercuryInteractive\LicenseManager。用记事本打开名字为lservrc的文献,复制“第一行中含#之前的所有字符”。第一次运行时,选择seatlicence,将前面复制的字符粘贴。确认后,就可以无限期免费使用QTP9.2。QTP构成 打开QTP的启动程序后,系统将展示如下的界面: 其中:“Tutorial”为联机协助;“StartRecording”为开始录制测试脚本;“OpenExisting”为打开一种原有的测试脚本;“BlankTest”为新建一种空的测试脚本。我们选择其中的“BlankTest”进入QTP的主界面,如下图所示:下面让我们来认识一下QTP的构成:标题栏:显示目前打开测试脚本的名称;菜单栏:包括QTP所有功能的菜单项选择项;文献工具栏:包括一系列的按钮,用于协助管理测试;测试工具栏:包括一系列的按钮,用于协助完毕测试流程;测试面板:显示测试成果的主体部分,包括两大部分,关键字视图(KeywordView)和专家视图(ExpertView);数据表格:用于对测试进行参数化,可以存储和管理某个测试对象的多种不一样的数值,它包括两个标签,Global和Action1;顾名思义,Global中的数据合用于所有的Action中,而Action1中的数据仅合用于某个Action中;活动屏幕:在运行脚本时,活动屏幕中能实时地显示出目前正在运行的不一样界面;状态栏:显示QTP的状态。使用MercuryTours范例网站为了以便顾客更好的理解、学习、掌握QTP的操作,QTP自身带了范例,这就是非常经典的“飞机订票”案例。点击“开始”——>“所有程序”——>“QuickTestProfessional”——>“SampleApplications”,我们就能看到这两个案例。其中“Flight”是单机版的,用于管理名行系统的订票记录,具有新建、查询订单的功能,而“MercuryToursWebsite”是QTP提供的一种基于B/S构造的小型网站系统。在前面的章节中,我们已经提到QTP与Winrunner最大的区别之一,就是QTP更合用于B/S架构的测试,同步鉴于目前基于B/S架构的系统越来越多,因此在背面的章节中,我们将重点简介QTP录制“MercuryToursWebsite”时的基本操作,对于“Flight”这种C/S架构的操作将不做简介,但愿读者能谅解,有爱好的读者在学习完本章后可以自己去尝试。下面,我们进入案例中来先熟悉一下有关内容。打开浏览器,在地址栏中输入:,将打开MercuryTours主页;要登录并使用MercuryTours应用程序,我们需要进行注册顾客操作。在打开的主页上,点击“REGISTER”按钮,在打开的注册页面中,输入顾客名、密码,并确认密码(注册页面中的红色标出部分为必填项,其他为选填项,可以不填写,其他的页面中也同样)。填写完毕后,点击“SUBMIT”按钮,MercuryTours将完毕注册操作,在弹出确实认页面上,选中并点击“SIGN-IN”按钮进入应用程序,在跳转的页面中,输入刚刚注册成功的顾客名和密码,点击“SUBMIT”按钮进可进入“FlightFinder”页面。从“FlightFinder”页开始,我们就可以按照屏幕上的阐明,完毕从航班信息展示到预定航班等一系列的操作。需要阐明的是,在“BookaFlight”页面中,红色部分标出的“Passenger”和“CreditCard”输入的信息可以是虚构的信息。在完毕订票的操作后,我们点击页面上方的“SIGN-OFF”按钮,退出系统,这样一种完整的订票流程就完毕了。这个流程但愿大家多操作几遍,到达纯熟操作的程度,从而为我们下面简介QTP的基础合用打下一种良好的基础。QTP基础使用 在上一节中,我们提到QTP的测试流程分为七个关键环节,其中有关第一种环节“准备录制”在商一节中我们已经简介过了,因此不再赘述。对于最终一种环节“汇报缺陷”,有关的内容将在测试管理篇中进行简介。因此本节和下一节将重点简介剩余的五个环节。下面我们按照环节一步步来展开论述QTP的使用。录制脚本 在本部分中,我们将录制在MercuryTours网站上预定从Frankfurt到London航班的进程。打开QTP:启动QTP程序,保证在“加载项管理器”中,勾选上了“Web”选项。然后在探出的导航页面中选择“BlankTest”选项,或者在文献工具栏中选择“New”——>“Test”选项,从而打开一种新的录制程序界面。启动录制:在打开新的录制程序后,点击测试工具栏中的“Record”按钮,系统将打开“录制和运行设置”对话框,如下图所示: 在“Web”选项卡中,我们可以选择浏览器类型、输入待测试网站的地址、选择“当测试关闭时与否关闭浏览器”和“不在已打开的浏览器上录制和运行”等状态。其中,浏览器类型我们选择IE,待测试网站地址输入:http://。至于背面两个选项,我们启用默认状态(当然大家可以根据实际状况进行对应的选择)。在“Windows应用程序”选项卡中,确认“在如下应用程序(会话开始时打开的)上录制并运行”处在选定状态,且未列出任何应用程序。该设置可防止在录制脚本期间无意中录制在多种Windows应用程序(如Office)上执行的操作。上述环节都执行完毕后,点击“确定”按钮,就能开始QTP的录制了。需要阐明的是,QTP是可以用来录制C/S程序的,当录制C/S程序时,我们需要在“Windows应用程序”选项卡中指定应用程序即可。开始录制:在弹出的IE界面中,输入我们此前注册过的顾客名和密码,点击“Sign-In”按钮;进入到“FlightFinder”页面;在“FlightFinder”页面中,我们在“DepartingFrom”选择“Frankfurt”,“ArrivingIn”选择“London”,其他的都采用默认值,然后点击“Continue”按钮,进入“SelectFlight”页面;需要阐明的是,在执行这一环节时,请不要点击“ViewCalendar”按钮,由于该按钮会打开一种基于Java的日历,而本次测试未加载Java加载项(Java加载项是需要单独购置的外部加载项)。在“SelectFlight”页面中,我们还是采用默认值,点击“Continue”按钮,进入“BookAFlight”页面;在“BookAFlight”页面中,我们需要在红色标出的部分填写信息,这些信息可以输入任意虚构的信息,同步在“BillingAddress”部分,勾选“TicketlessTravel”选项。上述信息填写完毕后,点击“SecurePurchase”按钮,进入“FlightConfirmation”页面;在“FlightConfirmation”页面中,我们确认一下信息后,点击“BackToHome”页面;停止录制:在上述环节都执行完毕后,一种完整的测试流程已经完毕了,这个时候我们需要停止QTP的录制程序,只需要点击测试工具栏中的“停止”按钮即可。保留测试:录制完毕的脚本,我们可以将其进行保留操作。执行并分析脚本 在开始执行脚本之前,让我们先回忆一下我们上一阶段的成果,如下图所示:下面我们对其中的一部分内容进行阐明。Item:以基于图标的层次树形是现实每个环节(测试对象、使用程序对象、函数调用或语句)的项。Operation:要在项上执行的操作,如Select、Set等。Value:选定操作的参数值,如,单击图像时要使用的鼠标按钮。Documentat:描述环节所执行操作的自动文档,用易于理解的句子编写。左下角的DataTable重要寄存的是某些参数,我们会在背面的学习过程对这部分进行深入学习;右下角的ActiveScreen展示的是每个环节所执行的动作,其中用粉色框部分突出显示的是目前环节所点击的按钮,如上图所示,目前环节点击的是“BACKTOHOME”按钮,我们还可以选择不一样的环节,看看ActiveScreen显示的图片;下面开始回放一遍刚刚录制的脚本,点击测试工具栏中的“执行”按钮,系统将自动进入脚本回放阶段,弹出如图XX所示的界面。这个界面重要是提醒回放的成果保留在什么位置。我们采用默认位置,点击“确定”按钮,系统将开始进行脚本回放。脚本回放的目的在于:通过脚本回放我们可以看看我们录制的脚本与否是按照当时设计的环节执行的,同步通过脚本回放我们能判断脚本录制与否成功。QTP在进行脚本回放的同步,会自动弹出IE窗口,在IE中会按照录制脚本的环节逐一进行操作,我们可以通过IE窗口中的动作来观测脚本的录制与否和当时设计的一致。脚本回放完毕后,QTP将自动启动测试成果窗口,如图XX所示:测试成果窗口分为两个部分显示测试执行成果:TestResultTree:以树状图的方式在窗体的左侧显示出测试脚本所执行的额环节,我们可以将树展开检查每一种环节,所有的执行环节都会以图示的方式表达。假如最终的测试成果为失败,我们可以通过TestResultTree展开后迅速查找到究竟是哪个环节导致的失败。测试成果的详细信息:窗体的右侧显示的是测试成果的详细信息,其中在第一种表格中会显示哪些反复(iteration)是通过的,哪些反复是失败的;第二个表格显示的是脚本的检查点,哪些是通过的,哪些是失败的,以及有几种警告信息。 阐明:所谓反复,我们可以这样理解,QTP是以不一样的资料执行整个测试或者某个动作的,每一次执行可以成为一种反复,并且每个反复都会被编号。QTP操作技巧检查点 在学习QTP的检查点之前,我们首先要理解什么是检查点,以及检查点的作用是什么?其实在QTP、Winrunner、Loadrunner中均有检查点的概念,其含义和作用都是相似的。所谓检查点,就是与目前录制脚本中的某个元素(也许是图片,也许是网页,也也许是文字等)之前插入一种验证点,看其与否与预期成果一致。插入检查点的好处不言而喻,它能自动跟踪某个关键窗口元素的显示状况,而不用手工去检查。 检查点的设置,我们可以在录制脚本的过程中设置,也可以在脚本录制完毕后再设置。 QTP提供了如下检查点:检查点类型阐明范例原则检查点检查对象的属性检查某个radiobutton与否被选用图片检查点检查图片的属性检查图片的来源文献与否对的表格检查点检查表格的属性检查表格内的字段内容与否对的网页检查点检查网页的属性检查网页加载的时间或者网页与否具有不对的的链接文字/文字区域检查点检查网页上或者窗口上出现文字与否对的检查订票后的与否出现订票成功的文字图像检查点截取网页或窗口的画面检查画面与否对的检查网页与否如预期展现数据库检查点检查数据库的内容与否对的检查数据库查询的值与否对的Accessiblity检查点Identifiesareasofawebsitetocheckforsection508comliancyXML检查点检查XML文献的内容XML档案检查点是用来检查特定的XML档案;XML应用程序检查点则是用来检查网页内所有使用的XML文献 下面,我们重点学习一下其中的原则检查点、图片检查点、文字检查点和表格检查点。原则检查点:原则检查点是用来检查窗口中的控件对象(如文本框、按钮等)的,但凡存储到对象仓库(ObjectRepository)中的对象它都能检查。其操作措施如下:首先,在关键字视图中选择要检查的对象,然后选择菜单栏中的Insert—>CheckPoint—>StandardCheckPoint,如图XX所示;或者直接在ActiveScreen上选择要检查的对象,右击鼠标,选择其中的InsertStanardCheckPoint,如图所示。选择完毕后,QTP会弹出原则检查点属性对话框,如图XX所示。在该对话框中,我们可以根据实际状况选择需要检查的属性,例如选择name属性,其值为login。那么在程序运行期间,QTP会根据这个属性来检查该按钮的实际值和预期一致。 在该页面中,尚有其他某些属性设置,其含义如下ConfigureValue:属性值,它有两个选项Constant:属性为一种常量;Parameter:属性为一种可变的参数,可以自己设置Checkpointimeout:QTP在该检查点停留的最大时间,假如超过该事件,属性还和预期不符,则系统会报错;Insertstatement:插入检查点的位置,一般系统的默认值为插入目前环节之前;原则点插入完毕后,我们可以在关键字视图和专家视图中进行查看,如图XX和图XX所示。文字检查点:原则检查点可以检查窗口中的控件对象,那么对于没有存储到对象仓库中的文字和图片,原则检查点是无法进行验证的。因此针对这一问题,QTP引入了图片检查点和文字检查点。 文字检查点的作用就是检查应用程序窗体上或者Web网页上的文字信息与否和预期相符,其操作措施和原则检查点的措施类似;对于文字检查点的操作我们不做赘述(我们以selectaflight页面中的depart标题信息中的frankfurt作为我们联络文字检查点的示例),我们重点学习一下文字检查点的某些属性。当我们在插入一种文字检查点后,系统将弹出如图XX所示的文字检查点对话框。在上图所示的界面中,展示出文字检查点的属性CheckedText:检查被选择的文本。TextBefore:检查被选择文本之前的文本;TextAfter:检查被选择文本之后的文本;Constant:设置文字内容为一种详细的常量;Parameter:设置文本内容为一种可变的参数;MatchCase:与否辨别大小写;Ignorespaces:与否忽视空格;Exactmatch:精确匹配,假如不选中该项,那实际成果中假如完全包括预期成果或者包括预期成果的一部分也能通过;Textnotdisplayed:不显示的文字与否要检查;Checkpointtimeout:QTP在该检查点停留的最大时间,假如超过该事件,属性还和预期不符,则系统会报错;Insertstatement:插入检查点的位置,一般系统的默认值为插入目前环节之前;图片检查点:图片检查点的作用是检查程序运行时的某幅图片与否和预期相符。需要阐明的是,假如由于显卡、操作系统、辨别率的不一样,有也许导致图像检查点的误差,这是就需要顾客根据实际状况灵活应用。图片检查点的应用和文字检查点是相似的,在此我们不做详细简介。表格检查点:表格检查点的作用是检查程序运行时某个表格与否和预期相符。和文字检查略不一样的是,文字检查点只能检查一种词语,而表格检查点可以检查一种表格(一种表格有多少元素,表格检查点就会设置几种检查元素)。我们以Bookaflight中机票价格为例来学习表格检查点的设置:进入关键字视图,选择bookaflight,然后在ActiveScreen中选择第一种航班价格(270),点击鼠标右键,选择InsertStandardCheckpoint,系统将一种对话框,这是系统默认选择的是WebElement:270,这是我们选择上一层的WebTable对象,如图XX所示。(当我们选择WebTable时,在ActiveScreen中,对应的表格也将突出显示)点击上图中的OK按钮,系统将弹出如图XX所示的表格检查点 系统默认是每个字段都会被勾选,表达所有字段都会做检查。我们可以根据实际状况,勾选要做检查的字段。我们在此勾选第一种270,如图XX所示点击ok按钮,系统将完毕表格检查点的设置。在关键字视图中也将出现对应的检查点,如图XX所示参数化 参数化是QTP中一种十分重要的功能。我们在平常测试过程中,常常碰到这样的状况,例如在订票时,我们也许要输入100组不一样的订票数据,最直接的处理措施就是根据这些不一样的数据录制100组脚本,不过这样的工作量可想而知。在QTP中,通过引入参数化措施,将我们从这些庞大的工作中解放出来,我们可以录制一种脚本,通过参数化,建立这100组不一样的数据,QTP在执行测试脚本时,就会分别使用这100组数据,执行100次新增订单的测试。 下面,我们此前面录制的订票脚本为例,来学习怎样在QTP中使用参数化功能。在最初的脚本中,我们录制的是从Frankfurt到London这组数据,并没有测试其他地点,因此我们在此选择将出发地点作为我们练习参数化的“战场”。打开前面录制好的订票脚本,进入关键字视图中,将其所有展开,进入Findaflight—>fromport,选择其中的Value列,点击其中的参数化图标,如图XX所示:系统将弹出参数设置的对话框,如图XX所示: 在该对话框中,其各属性阐明如下:Constant:输入为一种常量;Parameter:输入参数化;我们选择parameter选项,会看到如图XX所示的选项Datatable:在数据表中设置参数Environment:从系统环境变量中获取参数,如主机名称等;Randomnumber:系统产生一种随机数作为参数,随机数的范围可以进行设定Name:参数名称Locationindatatable:选择参数的使用范围;其中Globalsheet是指该参数合用于全局。Currentactionsheet(local)是指该参数仅合用目前的Action。 这里我们选择Parameter选项,选择其中的Datatable,参数名设置为departure,其他都选用默认选项,点击ok按钮后,我们会发目前关键字视图左下角中的Datatable中出现一列名为depature的参数,其第一种值就是我们最开始录制脚本是的frankfurt,如图XX所示;下面,我们开始在数据表中输入参数。我们点击Datatable中的departure列,在其第二行中输入portland,第三行输入seattle;这个时候,我们的参数化工作与否已经结束呢?不,我们与否还记得在前面讲检查点的时候,我们曾经对frankfurt设置过文字检查点。假如我们对findaflight页面中的frankfurt进行了参数化,那么必将对背面的文字检查点产生影响。因此在此我们还要修正受到参数化影响的测试环节。我们进入frankfurt这个文字检查点,进入该检查点的对话框,选择其中parmeter选项,并点击其parameteroptions选项,如图XX所示 系统将启动一种对话窗口,我们在name属性中的下拉列表中选用我们设置的参数名departure,指定这个文字检查点使用departure字段中的值,当成是检查点的预期值,如图XX所示。 这样一种完整的参数化过程就结束了,我们可以运行一下参数化后的脚本,看与否能成功。其运行成果如图XX所示。输出值 在前面学习参数化的过程中,我们是通过datatable来设置不一样的参数。其实我们还可以从应用程序输出数据到datatable,并且该数据还可以在后续阶段被使用。 我们还是以我们前面录制的飞机订票脚本作为我们学习输出值的范例。我们在学习参数化时,曾经将出发地进行了参数化操作,细心的读者会发现对出发地进行参数化操作后,会出现如下一种问题,那就是不一样的出发地,会导致在BookaFlight界面中的机票价格不一样。假如我们对机票价格设置了文字检查点,那么由于出发地不一样导致的机票价格不一样,将会直接导致机票价格文字检查点不能通过验证,那么怎样来处理这个问题呢?这个时候,就需要引入QTP中的输入值。其详细操作措施如下:此前面我们学习参数化的脚本为基础,在其基础之上按照表格检查点设置环节,在Bookaflight界面中为第一种机票价格设置表格检查点; 针对这个脚本,我们尝试着运行一遍,看当作果怎样?其最终止果如图XX所示产生错误的原因我们在前面已经分析过了,下面我们开始来分析怎样处理这个错误。在Bookaflight页面中的机票是从Selectaflight页面中读取过来的,因此我们的测试脚本应当从Selectaflight页面中获取机票价格,从而去验证Bookaflight页面上显示的机票价格。因此在关键字视图中,我们选择Selectaflight,在ActiveScreen中选

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论