1、飞机票订票系统功能测试项目项目3飞机票订票系统功能测试项目项目简介飞机票订票软件项目组完成了系统的集成工作,根据开发计划将要将程序交给测试组进行功能测试。测试小组该如何对该软件进行功能测试呢? 项目目标与要求(1)能制订飞机票订票系统功能测试的测试计划(2)能根系统需求分析报告编制飞机票订票软件的功能测试的测试用例(3)能根据测试用例,熟练地对系统的订票功能进行手工测试(4)能根据测试用例,熟练使用QTP工具,完成系统的打开订票功能的测试(5)能熟练使用Excel工具管理测试中发现的缺陷(BUG)(6)能写功能测试报告项目工作任务(1)阅读飞机票订票系统的需求分析报告,完成测试小组内容的内容分
2、工,制订单元测试计划(2)根据飞机票订票系统的需求分析报告,编写订票、查询、修改、删除、打印报表功能的测试用例(3)根据订票功能的测试用例,用手工的方式进行测试,记录测试结果(4)根据查询功能的测试用例,使用QTP工具,完成测试工作(5)用Excel软件完成测试工作日志,用Excel软件管理测试中发现的软件缺陷,并完成功能测试的测试报告功能测试基本过程图3-1 功能测试基本过程模块一 制订功能测试计划学习目标 1、理解订票系统的需求分析报告 2、理解功能测试的一般过程、主要方法和策略工作任务1、阅读订票系统的需求分析报告2、选择功能测试的策略3、编写订票系统功能测试的计划任务1:阅读订票系统需
3、求规格说明书读一读: 订票系统需求规格说明书一、系统登录功能系统启动后先显示登录窗体,必须通过输入正确的帐户和对应的密码才能进入系统,如果不正确则给出相应的提示信息。二、订票功能1、登录成功后系统自动进入新增订票窗体,同时可以通过“新订票”按钮,或菜单进入新增订票窗框体。2、在新增订票窗体中,依次输入订票日期、出发地、到达地、航班、订票顾客姓名、订票张数、座位类型,系统能够自动根据用户选择的航班显示航班号、航空公司、志飞时间到达时间和单价,系统能够根据订票的票数、类型和单价自动计算出订单的总计金额。对用户输入的订票日期要进行验证,对于不满足条件的给出明确的提示信息。出发地、到达地、航班系统自动
4、显示,用户只要选择就可以。3、单击“insert order”按钮,系统保存相关信息并生成并显示此订单的订单号,并给出保存是否成功的信息。4、当按了“insert order”按钮后,update order和delete order按钮可用(没有保存前这二个按钮是不可用的),通过这二个按钮可以对新增加的订单进行修改或删除操作,具体操作同修改订单和删除订单功能。三、查询订单功能1、登录成功后在新增订票窗体,可以通过单击“打开订单”按钮,或者菜单,进入查询订单条件对话框。2、在查询对话框中提供按“顾客姓名”、“订票日期”和订单号三种查询模式。3、按姓名查询:输入顾客姓名(能够模糊查询,只要输入姓
5、名的一部分),系统以列表方式结出查询的结果纪录,用鼠标在列表双击(或者选取后,单击OK按钮)所要的订单,系统将在订票主窗口中显示具体的订单信息。根据需要可以进行修改、删除等操作。如果没有找到则显示“没有发现订单,请再试一次”。4、按订票日期查询:输入具体的订票日期(只能输入数字,日期不完整,“OK”按钮无效),能够对日期的合法性进行检查,如果查到对应的订票则显示一个“查询结果”的列表,用鼠标在列表双击(或者选取后,单击OK按钮)所要的订单,系统将在订票主窗口中显示具体的订单信息。根据需要可以进行修改、删除等操作。如果没有找到则显示“没有发现订单,请再试一次”。5、姓名和日期组合查询:选择取姓名
6、和日期,在姓名栏输入查询的姓名,在日期栏输入查询的日期,操作同4和5。6、按订单号查询:输入指定的订单号(只能输入数字),单击“OK”进行查询,如果查到对应的订票则系统将在订票界面上显示具体的订单信息,根据需要可以进行修改、删除等操作。如果没有找到则显示“不存在这个数字”。四、修改订单1、打开指定的订单(open order操作, 新增订单单击”insert order”按钮后也可以)。2、在订单主窗口中,修改订票日期、出发机场、到达机场、航班信息、顾客姓名和订票张数等(要求与新增订票中相似)3、单击“update order”按钮保存修改结果(不单击“update order”按钮系统不会保
7、存修改结果)。4、如果对订单信息进行了修改,没有单击“update order”按钮,进行“新建订单”或“打开订单”按钮时系统会提示“信息已修改,是否要保存”。 确认后保存,取消则返回订单主窗口中,不保存则进入“新建订单”界面或“打开订单”界面。五、删除订单1、打开指定的订单(open order操作, 新增订单单击”insert order”按钮后也可以)。2、在订单主窗口中,单击“delete order”按钮或者“删除工具”删除当前订单。3、系统给出提示“是否要删除此订单?”,确认后删除,取消则不删除六、报表统计功能1、登录成功后在新增订票窗体,单击“报表”的按钮或在“Analysis”
8、菜单中选择”Report”项2、用纯文本的方式以行的方式(二行一条订单信息,和一行为主要信息,第二为到达时间和到达机场)显示登录代理帐户所有订单的报表,并给出汇总数据。七、图表统计功能1、登录成功后在新增订票窗体,单击“图表”按钮或在“Analysis”菜单中选择”Graph”项2、通过Graph窗体以订单日期为单位显示订单数量。用户可以选择图表的形式(三维柱形图表、二维柱形图表和三维饼图)显示按订单日期的订票数量统计。八、系统帮助功能1、登录成功后在新增订票窗体,单击“帮助”按钮或在“Help”菜单中选择”contents”项2、系统自动打开”Flight Reservation Help
9、Version 1.0”帮助窗框体,为用户提供有关系统的操作说明。九、系统版权说明功能1、登录成功后在新增订票窗体,在“Help”菜单中选择”About”项2、系统显示一个窗体,用以显示本系统的版本说明信息。任务2:制订订票系统的功能测试计划做一做: 功能测试也叫黑盒子测试或数据驱动测试, 根据产品特征、操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。软件的功能测试,用于验证应用程序或网站对目标用户能正确工作,使用适当的平台、浏览器和测试脚本,以保证目标用户的体验将足够好,就像应用程序是专门为该市场开发的一样。功能测试只需考虑各个功能,不需要考虑整个软件的内部结构及代
10、码.一般从软件产品的界面、架构出发,按照用户需求编写出来的测试用例,输入数据在预期结果和实际结果之间进行评测,进而提出更加使产品达到用户使用的要求。根据系统的需求规格说明书,可以看出这是一个规模比较小的系统,可以采用手工测试和自动化测试相结合的方式进行测试。可以采用场景法、成效价类划分法、边界类法和常见错误法来编写测试用例。本系统有8个功能点要测试,比较复杂的功能点是新增订票、查询订票和修改订票三个功能点,每个功能点大约需求10个测试用例,其它均为2-5个测试用例,初步估计有50个测试用例,约有3人天的工作量,执行测试则有8人天的工作量(包括编写测试脚本)。所需求人员和工作计划如下(回归测试不
11、包括在内):订票系统功能测试项目小组成员:甲:测试小组组长乙:测试工程师丙:测试员丁:测试员订票系统功能测试计划:序号安排日期工作内容负责人备注1星期一上午编写测试计划测试项目会议分配工作任务确定测试策略甲全体参与项目培训软件开发项目经理2星期一下午至星期二下午阅读需求分析编写测试数据编写测试用例乙3星期一下午至星期二下午搭建测试环境输入部分测试数据丙、丁4周三上午测试用例评审会测试环境验收甲全体参加软件开发项目经理5周四、周五、第二周周一、第二周周二全天执行测试记录测试缺陷丙、丁乙进行指导6第二周三测试分析撰写功能测试报告乙7第二周周四上午提交测试报告甲交软件开发项目经理8第二周周四下午项目
12、小结甲全体人员参与模块二 编写功能测试的测试用例学习目标 1、掌握等价类划分、边界值、场景等编写功能测试测试用例的方法 2、掌握测试用例的主要内容、编写格式工作任务1、根据需求报告编写登录功能的测试用例2、根据需求报告编写订票功能的测试用例3、根据需求报告编写查询功能的测试用例任务1:编写登录功能的测试用例做一做:根据系统需求规格说明书的要求,采用场景法设计测试用例,在订票系统中可以设置登录、新增订票、查询、修改订票、删除订票、打印报表、显示统计图表和帮助等8个大的应用场景。同时考虑不同的运行环境,如win98/win2000/winXP/win vastar/win7等不同的操作系统,对于不
13、同的操作系统,可以使用相同的测试用例(操作系统地栏不同)。对于登录场景可以采用有效等价类法编写测试用例,将测试用例分成错误和正确二大类,在正确类中设立用户名和密码小写和大写都正确的2个测试用例。在错误类中采用边界值法设立用户名和密码为空、用户名小于4个字符、密码小于4个字符、用户名不正确、密码不正确等6个测试用例。通过采用等价类法和边界值法可以保证测试用例能够覆盖到所有的测试项,测试用例汇总表如下:测试用例编号主要测试内容预期结果测试结果F_L_1用户名、密码为空显示帐户或者密码不对F_L_2用户名少于4个字符,密码正确显示姓名字符不少于4个字符F_L_3用户名正确,密码少于4个字符显示密码字
14、符不少于4个字符F_L_4用户名不正确,密码正确显示帐户或者密码不对F_L_5用户名正确,密码不正确显示帐户或者密码不对F_L_6用户名正确、密码不对显示帐户或者密码不对F_L_7用户名、密码正确(小写)成功,显示订票窗体F_L_7用户名、密码正确(大写)成功,显示订票窗体注:这是一个测试用例的汇总表,在Excel中放在第一个工作表中,表的名称为“登录功能测试用例汇总表”,最后一栏是测试完成后填写,用于总后的统计。根据测试用例汇总表,编写测试数据,具体如下:输入项目测试数据正确的用户名和密码test和mercury错误的用户名和密码admin和admin不足4个字符的用户名和密码te和mer根
15、据测试用例汇总表、CMMI3对测试用例的格式要求和测试数据表,在Excel中逐个编写测试用例(以用例编号作为工作表的表名)。下面是F_L_2测试用例的具体内容:测试用例编号F_L_2编写人赵航涛编写日期2011-1-20测试内容用户名少于4个字符,密码正确项目名称登录功能操作系统winXP操作过程:1、双击C:Program FilesMercury InteractiveQuickTest Professionalsamples flightapp目录下的Flight4a.exe2、在代理帐户栏中输入“te”,在密码栏中输入”Mercury”3、单击OK按钮预期结果显示错误对话框“Agent
16、 name must be at least 4 characters long”实际运行结果测试人测试时间是否有缺陷缺陷描述下面是F_L_7测试用例的具体内容:测试用例编号F_L_7编写人赵航涛编写日期2011-1-20测试内容用户名密码正确项目名称登录功能操作系统winXP操作过程:1、双击C:Program FilesMercury InteractiveQuickTest Professionalsamples flightapp目录下的Flight4a.exe2、在代理帐户栏中输入“test”,在密码栏中输入”Mercury”3、单击OK按钮预期结果自动进入系统订票窗体实际运行结果测
17、试人测试时间是否有缺陷缺陷描述测试用例的重点是操作过程和预期运行结果,操作过程根据需求规格说明书、常规应用程序的操作过程和编写的测试数据来编写,要求操作过程明确,先操作什么后操作什么,在哪儿输入,输入什么都要十分明确,测试人员可以根据这个操作步骤完成登录工作。在F_L_2中操作过程的三个步骤是一般有软件登录的操作过程,操作过程中输入的te,mercury则来自测试数据表。预期结果是根据规格说明书和常用软件开发中惯例和系统界面设计而确定的(提示信息的具体内容是根据系统界面设计来确定的)。实际运行结果、测试人、测试时间、是否是缺陷和缺陷描述是由执行测试的人填写的。练一练:参考上述的二个例子,根据测
18、试用例汇总表和测试数据表自己完成F_L_1、F_L_4、F_L_7。读一读:1、等价类划分等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法。划分等价类等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有
19、效等价类和无效等价类。有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合.利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。无效等价类:与有效等价类的定义恰巧相反。设计测试用例时,要同时考虑这两种等价类.因为,软件不仅要能接收合理的数据,也要能经受意外的考验.这样的测试才能确保软件具有更高的可靠性。设计测试用例在确立了等价类后,可建立等价类表,列出所有划分出的等价类:输入条件有效等价类、无效等价类,然后从划分出的等价类中按以下三个原则设计测试用例: 为每一个等价类规定一个唯一的编号。 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一
20、步.直到所有的有效等价类都被覆盖为止。 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步.直到所有的无效等价类都被覆盖为止。2、边界值分析法边界值分析方法是对等价类划分方法的补充。(1)边界值分析方法的考虑:长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误.使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据.(
21、2)基于边界值分析方法选择测试用例的原则: 1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。 2)如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少1,比最大个数多1的数作为测试数据。 3)根据规格说明的每个输出条件,使用前面的原则1)。 4)根据规格说明的每个输出条件,应用前面的原则2)。 5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。 6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。 7)分析规格说明,找出其它可能
22、的边界条件。任务2:编写订票功能的测试用例 根据需求规格说明书,可以看出订票功能界面和内部逻辑都比较复杂,为了提高测试的覆盖度,可以采用法设计测试用例,主要包括正确类和不正确类,对于日期栏应采用边界值法来设计测试用例,对于出发地、到达地和航班采用场景法来设计测试用例。测试用例的汇总表如下:测试用例编号主要测试内容预期结果测试结果F_N_1输入非法日期(日超过31)显示“Invalid day Entered .The day be valid for the given month.”对话框F_N_2输入非法月份(月超过12)显示“Invalid month Entered .The mont
23、h be greater than 01 and less than 12.”对话框F_N_3输入今天以前的日期显示“Valid flight dates are after 02/10/11”对话框F_N_4输入正确日期,保存没有选择出发地F_N_5输入正确日期和出发地,保存没有选择到达地F_N_6输入正确日期、出发地和到达地,保存没有选择航班F_N_7输入正确日期、出发地、到达地和航班,保存没有输入姓名F_N_8输入正确日期、出发地、到达地、航班和顾客姓名,保存成功保存F_N_9修改顾客姓名、票数,保存总价变化,成功保存F_N_10修改座位类别,保存单价、总价变化,成功保存F_N_11修改
24、航班,保存单价、总价变化,成功保存F_N_12修改到达地,保存航班信息清空,没有选择航班F_N_13修改出发地,保存航班信息清空,没有选择到达地F_N_14修改日期,保存航班信息清空,没有选择到达地F_N_15修改日期、出发地、到达地、航班、票数、顾客姓名和座位类别,保存成功保存根据订票测试用例汇总表,编写测试数据,具体如下:输入项目输入数据修改数据1(没保存)修改数据2(保存)用户名test密码mercury日期03/02/1103/03/1103/03/11日期(日错误)03/32/11日期(月错误)13/02/11日期(在今天之前)02/02/11出发地DenverParisParis到
25、达地LondonLosAngelesDenver航班号(自动显示)202622025317077起发时间(自动显示)10:21AM8:12AM10:24AM降落时间(自动显示)05:23PM03:23PM12:54AM航空公司名称(自动显示)AAAAAF顾客姓名Mark JonMark Li票数12座位类别EconomyBusiness单价(自动显示)$112.20$224.40$222.94总金额(自动显示)$112.20$448.80$445.88订单号(自动显示,保存后才显示)11注:由于系统日期不同,在具体测试时要根据实际情况对日期进行调整,或者将系统日期改为02/05/11,这样才能
26、保证测试数据是有效的。根据测试用例汇总表、CMMI3对测试用例的格式要求和测试数据表,在Excel中逐个编写测试用例(以用例编号作为工作表的表名)。下面是F_N_1测试用例的具体内容:测试用例编号F_N_1编写人赵航涛编写日期2011-1-20测试内容日期输入错误(日超过31)项目名称登录功能操作系统winXP操作过程:1、启动Flight4a.exe程序,帐户名输入test,密码输入mercury,进入订票系统窗体2、在date of flight中输入:03/32/103、在Fly From中选择“Denver”预期结果显示“Invalid day Entered .The day be
27、valid for the given month.”对话框实际运行结果测试人测试时间是否有缺陷缺陷描述下面是F_N_8测试用例的具体内容:测试用例编号F_N_8编写人赵航涛编写日期2011-1-20测试内容成功订票项目名称登录功能操作系统winXP操作过程:1、启动Flight4a.exe程序,帐户名输入test,密码输入mercury,进入订票系统窗体2、在date of Flight中输入:03/02/113、在Fly From中选择“Denver”4、在Fly To:中选择”London”5、单击Flights按钮,选择“20262”航班6、在name栏中输入:Mark Jon7、在T
28、ickets栏中输入:18、在Class栏中选择:Economy9、单击“insert order”按钮预期结果单价和总价显示:$112.20,状态栏显示:Insert Done,Order N0显示:11显示“inserting order.”对话框(此对话框大约5秒钟后自动消失) 数据库中增加相应的订单记录实际运行结果测试人测试时间是否有缺陷缺陷描述下面是F_N_12测试用例的具体内容:测试用例编号F_N_12编写人赵航涛编写日期2011-1-20测试内容保存后修改到达地项目名称登录功能操作系统winXP操作过程:1、接着F_N_11的界面2、在Fly To:中选择”LosAngeles”
29、3、单击“Update order”按钮预期结果到达地、航班信息、座位类别、单价和合计清空弹出“请选择到达城市”实际运行结果测试人测试时间是否有缺陷缺陷描述练一练:参照上面二个测试用例,自己课后完成F_N_3、F_N_7、F_N_15测试用例。读一读:场景法:通过运用场景来对系统的功能点或业务流程的描述,从而提高测试效果。场景法一般包含基本流和备用流,从一个流程开始,通过描述经过的路径来确定的过程,经过遍历所有的基本流和备用流来完成整个场景。下面是场景法的基本设计步骤 1. 根据说明,描述出程序的基本流及各项备选流 2. 根据基本流和各项备选流生成不同的场景 3. 对每一个场景生成相应的测试用例 4. 对生成的所有测试用例重新复审,去掉多余的测试用例,测试
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1