题目一:测试MercuryTours网站使用QuickTestProfessional对MercuryTours网站进行功能测试。要求录制预订机票的完整过程,然后执行测试脚本并分析结果。1.在开始使用MercuryTours示范网站)之前,首先要在MercuryTours网站上注册一个使用者账号。2.MercuryTours示范网站使用要登录并使用MercuryTours示范网站必须使用注册账号。在使用网站时,从[FlightFinder]网页开始,按照画面上的指示预订机票。在BookaFlight网页,无需填写真实的旅客信息,信用卡卡号等标示为红色的字段中添加虚拟数据就可以了。3.结束订票动作完成订票动作后,在[FlightConfirmation]网页上点选[LOGOUT]按钮或是选择[SIGN-OFF]按钮。4.关闭浏览器现在知道如何使用MercuryTours示范网站,就可以开始使用QuickTest录制测试脚本了。第二章录制/执行测试脚本当浏览网站或使用应用程序时,QuickTest会纪录你的操作步骤,并产生测试脚本。当停止录制后,会看到QuickTest在KeywordView中以表格的方式显示测试脚本的操作步骤。2.1录制前的准备在录制脚本前,首先要确认以下几项:„已经在MercuryTours示范网站上注册了一个新的使用者账号。„在正式开始录制一个测试之前,关闭所有已经打开的IE窗口。这是为了能够正常的进行录制,这一点要特别注意。„关闭所有与测试不相关的程序窗口。2.2录制测试脚本2.2.1录制测试脚本在这一节中我们使用QuickTest录制一个测试脚本,在MercuryTours范例网站上预定一张从纽约(NewYork)到旧金山(SanFrancisco)的机票。1.执行QuickTest并开启一个全新的测试脚本„开启QuickTest,在“Add-inManager”窗口中选择“Web”选项,点击“OK”关闭“Add-inManager”窗口,进入QuickTestProfessional主窗口。„如果QuickTestProfessional已经启动,检查“HelpAboutQuickTestProfessional”查看目前加载了那些add-ins。如果没有加载“Web”,那么必须关闭并重新启动QuickTestProfessional,然后在“Add-inManager”窗口中选择“Web”。„如果在执行QuickTestProfessional时没有开启“Add-inManager”则点击“ToolOptions”,在“General”标签页勾选“DisplayAdd-inManageronStartup”,在下次执行QuickTestProfessional时就会看到“Add-inManager”窗口了2.开始录制测试脚本选中“TestRecord”或者点选工具栏上的“Record”按钮。打开“RecordandRunSettings”对话窗口在“Web”标签页选择“Openthefollowingbrowserwhenarecordorrunsessionbegins”在“Type”下拉列表中选择“MicrosoftInternetExplorer”为浏览器的类型;在“Address”中添加“(网站地址)”这样,在录制的时候,QuickTest会自动打开IE浏览器并连接到MercuryTours范例网站上。现在我们在切换到“WindowsApplication”标签页,如下图所示:如果选择“RecordandruntestonanyopenWindows-basedapplication”单选按钮,则在录制过程中,QuickTest会记录你对所有的Windows程序所做的操作。如果选择“Recordandrunontheseapplication(openedwhenasessionbegins)”单选按钮,则在录制过程中,QuickTest只会记录对那些添加到下面“Applicationdetails”列表框中的应用程序的操作(你可以通过“Add”、“Edit”、“Delete”按钮来编辑这个列表)。我们选择第二个单选按钮。因为我们只是对MercuryTours范例网站进行操作,不涉及到Windows程序,所以保持列表为空。点击“确定”按钮,开始录制了,将自动打开IE浏览器并连接到MercuryTours范例网站上。3.登录MercuryTours网站在用户名和密码输入注册时使用的账号和密码,点击“Sign-in”,进入“FlightFinder”网页。4.输入订票数据输入以下订票数据:其他字段保留默认值,点击“CONTINUE”按钮打开“SelectFlight”页面。5.选择飞机航班可以保存默认值,点击“CONTINUE”按钮打开“BookaFlight”页面。6.输入必填字段(红色字段)输入用户名和信用卡号码(信用卡可以输入虚构的号码,如8888-6666)。点击网页下方的“SECUREPURCHASE”按钮,打开“FlightConfirmation”网页。7.完成定制流程查看订票数据,并选择“BACKTOHOME”回到MercuryTours网站首页。8.停止录制在QuickTest工具列上点击“Stop”按钮,停止录制。到这里已经完成了预定从“纽约-旧金山”机票的动作,并且QuickTest已经录制了从按下“Record”按钮后到“Stop”按钮之间的所有操作。9.保存脚本选择“FileSave”或者电机工具栏上的“Save”按钮,开启“Save”对话窗口。选择的路径,填写文件名,我们取名为Flight。点击“保存”按钮进行保存。通过以上九个步骤,我们录制了一个完整的测试脚本—预定从纽约到旧金山的机票。2.2.2分析录制的测试脚本在录制过程中,QuickTest会在测试脚本管理窗口(也叫TreeView窗口)中产生对每一个操作的相应记录。并在KeywordView中以类似Excel工作表的方式显示所录制的测试脚本。当录制结束后,QuickTest也就记录下了测试过程中的所有操作。测试脚本管理窗口显示的内容如下图所示:在KeywordView中的每一个字段都有其意义:„Item:以阶层式的图标表示这个操作步骤所作用的组件(测试对象、工具对象、函数呼叫或脚本)。„Operation:要在这个作用到的组件上执行的动作,如点击、选择等。„Value:执行动作的参数,例如当鼠标点击一张图片时是用左键还是右键。„Assignment:使用到的变量。„Comment:你在测试脚本中加入的批注。„Documentation:自动产生用来描述此操作步骤的英文说明。脚本中的每一个步骤在KeywordView中都会以一列来显示,其中用来表示此组件类别的图标以及步骤的详细数据。下面我们针对一些常见的操作步骤作详细说明:步骤说明Action1是一个动作的名称Welcome:Mercury是被浏览器开启的网站的名称Welcome:MercuryTours是网页的名称userName是editbox的名称Set是在这个editbox上执行的动作jojo是被输入得值password是editbox的名称SetSecure是在这个editbox上执行的动作,此动作有加密的功能446845bf84444adc…是被加密过的密码Sign-In是图像对象的名称Chick是在这个图像上执行的动作41,4则是这个图像被点击的X,Y坐标2.3执行测试脚本当运行录制好的测试脚本时,QuickTest会打开被测试程序,执行你在测试中录制的每一个操作。测试运行结束后,QuickTest显示本次运行的结果。接下来,我们执行在上一节中录制的Flight测试脚本。1.打开录制的Flight测试脚本。2.设置运行选项。点击“ToolOptions”打开设置选项对话框,选择“Run”标签页,如下图:如果要将所有画面储存在测试结果中,在“Savestepscreencapturetoresults”选项中选择“Always”选项。一般情况下我们选择“Onerror”或“Onerrorandwarning”表示在回放测试过程中出现问题时,才保存图象信息。在这里我们为了更多的展示QuickTest的功能,所以选择使用“Always”选项。3.在工具条上点击“Run”按钮,打开“Run”对话框:询问要将本次的测试运行结果保存到何处。选择“NewRunresultsfolder”单选按钮,设定好存放路径(在这使用预设的测试结果名称)。4.点击“OK”按钮开始执行测试。可以看到QuickTest按照你在脚本中录制的操作,一步一步的运行测试,操作过程与你手工操作时完全一样。同时可以在QuickTest的KeywordView中会出现一个黄色的箭头,指示目前正在执行的测试步骤。2.3.2执行脚本出现错误如果在执行测试的时候出现错误,会显示一个错误信息对话框?2.4分析测试结果在测试执行完成后,QuickTest会自动显示测试结果窗口,如下图所示:在这个测试结果窗口中分二个部分显示测试执行的结果„左边显示Testresultstree,以阶层图标的方式显示测试脚本所执行的步骤。可以选择“+”检查每一个步骤,所有的执行步骤都会以图示的方式显示。可以设定QuickTest以不同的资料执行每个测试或某个动作,每执行一次反复称为一个迭代,每一次迭代都会被编号(在上面的例子中只执行了一次迭代)。„右边则是显示测试结果的详细信息。在第一个表格中显示哪些迭代是已经通过的,哪些是失败的。第二个表格是显示测试脚本的检查点,哪些是通过的,哪些是失败的,以及有几个警告信息在上面的测试中,所有的测试都是通过的,在脚本中也没有添加检查点(有关检查点的内容我们将在以后的课程中学习)。接下来我们查看QuickTest执行测试脚本的详细结果,以及选择某个测试步骤时出现的详细信息。在树视图中展开“FlightIteration1(Row1)Action1SummaryWelcomeMercuryToursFindaFlight:Mercury”,选择“"fromPost":Select"NewYork"”。在这个测试结果窗口中显示三个部分,分别是:„左边是Testresultstree:展开树视图后,显示了测试执行过程中的每一个操作步骤。选择某一个测试步骤,会在右边区域显示相应的信息。„右上方是Testresultsdetail:对应当前选中的测试步骤,显示被选取测试步骤执行时的详细信息。„右下方是ActiveScreen:对应当前选中的测试步骤,显示该操作执行时应用程序的屏幕截图。当选中testresultstree上的网页图示,会在“ActiveScreen”中看到执行时的画面。当选中testresultstree上的测试步骤(在某个对象上执行某个动作),除了显示当前时的画面外,对象还会被粉色的框框框住。在上面的例子中,在“ActiveScreen”中点击被框住的“DepartingFrom”下拉菜单,会显示其他的选项。