单元案例_Flight航空订票系统测试.

合集下载

飞机订票系统测试报告

飞机订票系统测试报告

飞机订票系统测试报告1. 引言本文档旨在介绍飞机订票系统的测试过程和结果。

飞机订票系统是一款用于用户预订航班机票的在线平台。

通过测试,我们旨在确保系统的功能正常、性能稳定,并且用户能够顺利完成预订流程。

2. 测试环境为了对系统进行全面的测试,我们搭建了以下测试环境:•操作系统:Windows 10•浏览器:Google Chrome,Mozilla Firefox•设备:台式电脑,笔记本电脑,手机(Android,iOS)•网络环境:LAN,WLAN,4G网络3. 测试目标我们的测试目标主要包括以下几个方面:•功能测试:确保系统的各项功能正常运作,包括用户注册、登录、查询航班信息、预订机票等。

•兼容性测试:在不同的操作系统、浏览器和设备上测试系统的兼容性,确保用户可以在不同的环境中正常使用系统。

•性能测试:通过模拟多用户同时访问、查询航班和预订机票,测试系统的性能稳定性和响应速度。

•安全性测试:检查系统的安全性,防止潜在的数据泄露和非法访问。

4. 测试步骤为了对系统进行全面的测试,我们按照以下步骤进行测试:4.1 用户注册和登录功能测试1.打开系统主页,点击注册按钮进入注册页面。

2.输入有效的用户名、密码和邮箱地址,点击注册按钮完成注册。

3.使用注册的用户名和密码,尝试登录系统。

4.验证登录是否成功,检查是否能够正常浏览个人信息页面。

4.2 航班查询功能测试1.登录系统后,点击航班查询按钮进入查询页面。

2.输入有效的出发地、目的地和日期,点击查询按钮进行航班搜索。

3.检查系统是否能够正确地显示符合条件的航班信息。

4.选择一条航班信息,尝试获取详细信息。

4.3 机票预订功能测试1.在航班查询结果页面,选择一条符合条件的航班信息。

2.输入乘客信息和联系方式,点击预订按钮进行机票预订。

3.检查系统是否成功生成订单,并显示预订成功的提示信息。

4.登录用户的邮箱,确认是否收到预订成功的邮件通知。

4.4 兼容性测试在不同的操作系统、浏览器和设备上测试系统的兼容性,包括:•操作系统:Windows,macOS,Linux•浏览器:Google Chrome,Mozilla Firefox,Safari•设备:台式电脑,笔记本电脑,手机(Android,iOS)4.5 性能测试1.使用性能测试工具,模拟多用户同时访问系统。

机票预订系统(测试计划)[精品文档]

机票预订系统(测试计划)[精品文档]

测试计划1引言1.1编写目的作为软件工程过称的一个阶段,编码是对设计的进一步具体化,因此,程序的质量主要取决于软件设计的质量,但所选用的程序设计语言的特点和编码风格也将对程序的可靠性、可读性、可测试性和可维护性产生深远的影响。

但在开发如此复杂的航空订票系统软件的过程中,面对着极其错综复杂的问题,人的主观认识不可能完全符合客观现实,与工程密切相关的各类人员之间的通信和配合也不可能完美无缺,因此,系统一定会存在差错。

测试的目的就是在软件投入生产运行之前,尽可能多的发现并改正软件中的错误。

编码阶段可参考概要设计和详细设计说明书,软件测试以及软件维护阶段也可参考编码和详细设计说明书,以便于了解在概要设计及详细设计的过程中所完成的各模块设计结构,或在测试阶段找出各模块的设计思路和流程。

该文档的读者为用户代表、软件分析人员、开发管理人员和测试人员。

1.2背景1.本项目(机票预定系统)时由XX航空公司委托,由XXX软件开发小组负责开发;2.本系统与其他系统的关系如下:1.3定义Microsoft Access: 系统服务器所使用的数据库管理系统(DBMS)。

SQL: 一种用于访问查询数据库的语言事务流:数据进入模块后可能有多种路径进行处理。

主键:数据库表中的关键域。

值互不相同。

外部主键:数据库表中与其他表主键关联的域。

ROLLBACK: 数据库的错误恢复机制。

1.4参考资料a.张海藩《软件工程导论》(第五版)北京:清华大学出版社;b.《机票预订系统需求分析说明书》XXX软件开发小组c.《机票预订系统可行性分析说明书》XXX软件开发小组d.《机票预订系统概要和详细设计说明书》XXX软件开发小组2计划2.1软件说明主界面模块:● 航班管理模块:测试用例:● 用户管理模块:否测试用例:N。

飞机订票系统_登录测试用例

飞机订票系统_登录测试用例
用户名、验证码都空,密码正确,点登录
都空,点登录
结果:必填项不能为空
空格
用户名正确但后面有1至多个空格,其它正确
密码正确但后面有1至多个空格,其它正确
验证码正确但后面有1至多个空格,其它正确
结果:正常登录
结果:提示密码错误,并清空
结果:提示验证码不正确
验证码功能
点击验证码图片
结果:图片显示新的字符串
用户名密码正确,验证码错误,点登录
结果:提交用户名不存在
结果:提示验证码不正确
为空
用户名为空,验证码正确,点登录
用户名和验证码正确,密码为空,点登录
用户名密码正确,验证码为空,点登录
结果:提示输入用户名
结果:提示密码不能为空
结果:提示验证码不正确
组合空
用户名、密码都空,验证码正确,点登录
密码、验证码都空,用户名正确,点登录
验证码时间性
输入用户名,切换到其它程序,过一段时间切换回来
结果:光标停留在原处
功能键
Tab键光标在用户名框内,被Tab键两次
BackSpace键用户名框输入testmethod,光标在字符串末尾,按6次
左右键头用户名框中使用左右键头
Delete键用户名文本框中使用该键
单击鼠标在用户名输入框内单击鼠标
错误用户名或未注册用户名
密码次数
用户名和验证码正确,密码首次输入错误,点登录
用户名和验,密码六次输入错误,点登录
结果:提示密码错误,并清空
结果:提示密码错误,并清空
结果:提示错误次数太多,不能再登录了
输入组合错误
错误的用户名和错误密码,验证码正确,点登录
正确显示登陆页面(包括美观性、验证需求字段)

机票预订系统压力测试报告

机票预订系统压力测试报告

机票预订系统压力测试报告1. 简介机票预订系统是一种用于在线预订航班机票的软件系统。

为了确保系统能够在高流量情况下正常运行,我们进行了一系列的压力测试,以评估其性能和稳定性,并提供本报告以记录和分析测试结果。

2. 测试环境我们搭建了一个模拟真实用户访问的测试环境,包括使用真实数据的航班信息和用户信息,并通过自动化工具模拟了多种类型的用户请求。

测试环境的配置如下:- 操作系统:Windows Server 2016- 虚拟机:VMware Workstation 15- 内存:8GB- 处理器:***********************3. 测试内容和方法我们针对机票预订系统的主要功能和模块进行了压力测试,包括以下方面:- 用户登录和注册- 航班查询和订购- 订单支付和确认- 退票和改签功能在每个功能测试中,我们模拟了多个并发用户同时访问系统,并通过增加并发请求的数量来逐渐增加系统的负载,直到达到系统资源的极限。

同时,我们还进行了长时间持续压力测试,以评估系统在高负载状态下的稳定性和性能表现。

4. 测试结果根据我们的压力测试,机票预订系统在正常使用负载下能够快速响应用户请求,系统性能表现良好,能够满足用户的需求。

然而,在极端高负载条件下,系统响应时间会有所增加,并存在一些瓶颈和性能问题。

具体的测试结果如下:- 在低负载条件下,系统平均响应时间为500毫秒。

- 随着并发用户数量的增加,系统响应时间逐渐增加。

当并发用户数量达到100时,系统平均响应时间增加到2秒。

- 当并发用户数量达到200时,系统响应时间进一步增加,平均响应时间达到5秒。

- 在持续高负载情况下,系统偶尔出现请求超时和响应错误的情况,但整体稳定性较好。

5. 性能优化建议根据测试结果,我们提出以下性能优化建议,以改善机票预订系统的性能和稳定性:- 针对数据库查询进行性能优化,包括索引的优化和查询语句的优化,以提高系统的查询和订购速度。

qtp测试飞机订票系统测试脚本录制、回放、调试(实验1)

qtp测试飞机订票系统测试脚本录制、回放、调试(实验1)

飞机订票系统测试脚本录制、回放、调试
原理:在正确安装QuickTe st的基础上,熟悉样例程序“飞机票系统(Flight)”的基本功能和使用,以用户名(mercury)、密码(mercury)登录Flight系统,插入一张订票记录。

体验QuickTest Professional录制过程与回放过程,录制飞机订票系统的登录功能并插入一张订票记录,录制运行场景,查看测试的结果。

一:实现步骤
1.1:点击安装并QuickTest安装步骤完成后,运行QuickTest Professional,出现如下界面,点击modify Add-in License
1.2 安装完原程序后,将GetLicense.exe注册机放到安装目录(默认C:\Program Files\Mercury Interactive\QuickTest Professional)并运行它,注册机将生成一个注册文件,该文件在C:\Program Files\Common Files\Mercury Interactive\License Manager。

用自已电脑所带的记事本打开名字为lservrc的文件,复制“第一行中含#之前的所有字符”。

1.3选择automation菜单,将要测试的示例程序载入。

点击OK确认按钮。

1.4点击record,开始录制程序
1.5进入飞机销售系统,并生成相应的记录。

1.6生成相关的记录
1.7生成相关的图数据表格
1.8运行Run按钮回放,开始程序的运行。

1.9调试并生成结果数据
至此,一个简单的飞机订票系统测试脚本录制、回放、调试制作完毕。

软件开发与项目管理-KC0210000017_Flight航空订票系统测试

软件开发与项目管理-KC0210000017_Flight航空订票系统测试

模块五软件测试案例--Flight 航空定票系统一、案例描述HP公司,QTP测试软件自带Flight 航空定票系统软件登录模块、定票模块的用例设计和QTP测试脚本的开发。

二、案例要求1、通过实验掌握”用例设计”2、掌握QTP测试脚本各种处理方法的开发3、保存测试结果4、分析测试结果三、案例实现步骤(一)测试需求Flight 航空定票系统测试需求如下:1、登录模块:用户名和口令4~10 位2、定票模块不同用户登录,定购不同的机票;根据日期、定单号、姓名查询定单。

(二)实现步骤1.编写测试用例表2 Flight 航空定票系统定票模块测试用例2.编写自动化测试程序步骤:(1)运行QTP软件,待打开后新建一个Test,点击工具栏上的“Record”按钮,打开飞机订票系统进行脚本的录制,然后点击“stop”按钮,结束录制;(2)将要进行验证的地方设置参数化:图1 测试用例(1)图2 测试用例(2)(3)点击“run”按钮,回放程序,通过程序回放过程中的正确与否,进行修改程序;测试脚本部分程序:Starter'应用程序的路径Sub StarterSystemUtil.Run Environment("Flyurl")End Sub'用函数来验证状态Public Function testRegExp(ByVal patrn, ByRef sour)' TODO: add function body hereDim regEx ' Create variable.Set regEx = New RegExp ' Create regular expression.regEx.Pattern = patrn ' Set pattern.regEx.IgnoreCase = true ' Set case sensitivity.regEx.Global=trueif regEx.Test(sour)=true Thenreporter.ReportEvent micPass,"登录失败!",cstr(sour) Elsereporter.ReportEvent micFail,"出现异常","提示信息不正确!"End IfEnd Function'定义变量Dim insertNum,insertbegin, istest,istatus,iselectorder,orderid'从DataTable中取值insertNum=DataTable("iCount",dtGlobalSheet)insertbegin=DataTable("begin",dtGlobalSheet)iselectorder=DataTable("SelectOpen",dtGlobalSheet)print iselectorderistest=datatable.Value("status")'登录界面Dialog("Login").WinEdit("Agent Name:").Set DataTable("name", dtGlobalSheet) Dialog("Login").WinEdit("Password:").SetSecure DataTable("password", dtGlobalSheet) Dialog("Login").WinButton("OK").Click'判断是否有子提示框出现If Dialog("Login").Dialog("Flight Reservations").Exist Then'取子提示框上的提示信息istatus=Dialog("Login").Dialog("Flight Reservations").Static("Please enter agentname").GetROProperty("text")testRegExp istest,istatusDialog("Login").Dialog("Flight Reservations").WinButton("确定").ClickDialog("Login").CloseElsereporter.ReportEvent micPass,"登录成功","登录成功!"DataTable.GetSheet("Action1").SetCurrentRow(insertbegin)For i=1 to insertNumsearchorderDataTable.GetSheet("Action1").SetNextRowNextopenorder(iselectorder)Window("Flight Reservation").WinMenu("Menu").Select "File;Exit"End If'打开新订单,并填写信息Sub searchWindow("Flight Reservation").WinMenu("Menu").Select "File;New Order"Window("Flight Reservation").ActiveX("MaskEdBox").Type DataTable("FlyDate", dtLocalSheet) Window("Flight Reservation").WinComboBox("Fly From:").Select DataTable("FlyFrom", dtLocalSheet)'若时间不完整,弹出对话框时的处理If Window("Flight Reservation").Dialog("Flight Reservations").Exist Thensstatus=Window("Flight Reservation").Dialog("Flight Reservations").Static("Please enter a flight").GetROProperty("text")Window("Flight Reservation").Dialog("Flight Reservations").WinButton("确定").ClickWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type "051212"End IfWindow("Flight Reservation").WinComboBox("Fly To:").Select DataTable("FlyTo", dtLocalSheet)Window("Flight Reservation").WinButton("FLIGHT").Click'随机取航班iCount = Window("Flight Reservation").Dialog("Flights Table").WinList("From").GetItemsCount Window("Flight Reservation").Dialog("Flights Table").WinList("From").SelectRandomNumber(0,iCount-1)Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").ClickEnd Sub'选择座位,获取定单号Sub orderWindow("Flight Reservation").WinEdit("Name:").Set DataTable("passageName", dtLocalSheet)Window("Flight Reservation").WinRadioButton(DataTable("seat",dtLocalSheet)).ClickWindow("Flight Reservation").WinButton("Insert Order").ClickWindow("Flight Reservation").ActiveX("Threed Panel Control").WaitProperty "text","Insert Done...",10000orderid = Window("Flight Reservation").WinEdit("Order No:").GetROProperty("text")DataTable("OrderNum",dtLocalSheet)=orderidEnd Sub'选择查询方式Sub openorder(iselectorder)DataTable.GetSheet("Action1").SetCurrentRow(insertbegin)For i=1 to insertNumIf iselectorder=1 Then'按姓名查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Customer Name").Set "ON"Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").SetDataTable("passageName", dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickWindow("Flight Reservation").Dialog("Open Order").Dialog("SearchResults").WinButton("OK").ClickElse if iselectorder=2Then'按时间查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Flight Date").Set "ON"Window("Flight Reservation").Dialog("Open Order").ActiveX("MaskEdBox").Type DataTable("FlyDate", dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickWindow("Flight Reservation").Dialog("Open Order").Dialog("SearchResults").WinButton("OK").ClickElse if iselectorder=3 then'按时间和姓名查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Customer Name").Set "ON"Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").SetDataTable("passageName", dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Flight Date").Set "ON"Window("Flight Reservation").Dialog("Open Order").ActiveX("MaskEdBox").Type DataTable("FlyDate", dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickWindow("Flight Reservation").Dialog("Open Order").Dialog("SearchResults").WinButton("OK").ClickElse if iselectorder=4 then' 按编号查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Order No.").Set "ON"print DataTable("OrderNum",dtLocalSheet)print orderidWindow("Flight Reservation").Dialog("Open Order").WinEdit("Edit_2").SetDataTable("OrderNum",dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickEnd ifEnd ifEnd ifEnd IfDataTable.GetSheet("Action1").SetNextRowNextEnd Sub(4)测试执行报告图3 运行结果(1)图4 运行结果(2)图5 运行结果(3)。

QTP测试实验报告-飞机票订票系统(word文档良心出品)

QTP 自动化功能测试实践一、实验目的1、熟悉QTP自动化功能测试流程2、能够利用QTP进行B/S或者C/S架构程序的自动化功能测试二、实验内容功能测试是针对应用系统进行测试,是基于产品功能说明书,是在已知产品所应具有的功能,从用户角度来进行功能验证,以确认每个功能是否都能正常使用。

本项目主要使用QuickTest 对其自带的MercuryTours 网站/ 飞机票订票系统进行功能测试,要求录制预订机票的完整过程,然后执行测试脚本并分析结果。

三、实验要求1 、独立完成;2、提交测试脚本3、提交测试用例说明书及缺陷报告。

四实验内容1 脚本的录制与回放测试及检查点的设置验证脚本代码:Dialog("Login").WinEdit("Agent Name:").Check CheckPoint("Agent Name:") ' 验证乘客名字文本框中的值标准检查点Dialog("Login").WinEdit("Agent Name:").Set "123456" '输入用户名Dialog("Login").WinEdit("Password:").Set "mercury" ' 输入密码Dialog("Login").WinButton("OK").Click ' 单击OK 按钮登陆Window("Flight Reservation").Static("Static").Check CheckPoint("Static") ' 检查页面中的图片元素是否加载Window("Flight Reservation").ActiveX("MaskEdBox").Type "011218"Window("Flight Reservation").WinComboBox("Fly From:").Select "London" Window("Flight Reservation").WinComboBox("Fly To:").Select "Paris"Window("Flight Reservation").WinButton("FLIGHT").ClickWindow("Flight Reservation").Dialog("Flights Table").WinList("From").Select "12534 LON 08:00 AM PAR 10:00 AM AF $165.50" Window("FlightReservation").Dialog("Flights Table").WinButton("OK").Click Window("Flight Reservation").WinEdit("Name:").Set "gcc"Window("Flight Reservation").WinEdit("Tickets:").SetSelection 0,1Win dow("Flight Reservatio n").Wi nEdit("Tickets:").Set "5"Win dow("Flight Reservatio n").Wi nRadioButto n( "Busi ness").Set Window("Flight Reservation").WinButton("Insert Order").Click Win dow("Flight Reservatio n").CIose ' 关闭订票系统 结果- 曲 Run^TinriR D?it3i TableS-- Cbackpoint 1 (Row 1}IS 讨 Actonl Summary 申#自login 白 * ■ AgentNdme:…Checkpoint 'Aceinft I ! [ ■ ■- H K Agent N^mec-SetText |KPassw&rdLSetTe )rt| L M oKcikkilFlight ReservationI5ic Agent N@-me:.Set~ert pir Pa s £ wo rdi . ext二I OKTlick3- Fl gbt Resen r ation2参数化脚本测试本案例中将Flight From 的选项内容设置为参数化类型 脚本代码 With Dialog("Logi n").Win Edit("Age nt Name:").Set "aaaa" .Win Edit("Password:").Set "mercury" .Win Butt on ("OK").CIick曰lest Cha^kp-Qint Sunnmary勃 Run-Time Data latleB Ch&ckpoirrt Iteraticn 11 (Row1)-■』伦 Actiorl SLmiria^y自LogirElDmailsEnd WithWith Win dow("Flight Reservatio n") .ActiveX("MaskEdBox").Type "011218".Win ComboBox("Fly From:").Select DataTable("from", dtGlobalSheet) 参数化 ‘.Win ComboBox("Fly To:").Select "Syd ney" .Win Butto n( "FLIGHT").CIick With .Dialog("Flights Table").Win List("From").Select "12463 LON 03:07 PM SYD 04:48 PM NW $160.40".Win Butto n( "OK").Click End With.Win Edit("Name:").Set "gcc" .Win Edit("Tickets:").Set "3".Win RadioButt on ("Busi ness").Set .Win Butto n("In sert Order").Click .Close End Withwait(1)必须有wait 函数回调给第二次循环预留准备时间 结果脚本录制关键字视图♦namD€DErGH IJLMN1Lo-ijcm 2 iFarra3脚本回放结果4t ft JVWH前¥前"^LHTIW"磚b/l 师工kH inse^ U"2ET " aJtisr"""I Fii^l Fesw-slc-■Q IN■Z™E Fi 丁1 MTrfc*wafu.WaR ( 1 «btfg ihwst華.HI TKtes.自T I E 'ges'lfi 'aTfii IN NP ”" ■adtbac.*T f 1l-t *T»<jfft■严.Stf5KIII >4H '■TWOL W 曾jibtiiiMTt 仲練 fDaAaToDh5KEhi. ' BM > ' E 叶Civile 1 1 vS. tXhOctT 砂'0112145心jiBeF'iW 1Hhpn- Miishiina- ihf Frer-.'K対R1IW "却 1 即-h* II ・丹 T Q * 111 *缺 TL1GHT araStfMTCkfc :)KJ 呵严itiM本案例中对Flight 系统的用户登陆界面进行参数化的黑盒测试 用到6组测试数据测试脚本Dialog("Logi n").Wi nEdit("Age nt Name:").Set DataTable("username", dtGlobalSheet)'输入用户名Dialog("Logi n").Wi nEdit("Password:").Set DataTable("password", dtGlobalSheet)'输入密码Dialog("Logi n").Wi nButto n("OK").CIick '点击登陆 If Dialog("Login").Dialog("Flight Reservations").Exist ThenDialog("Logi n").Dialog("Flight Reservatio ns").Wi nButto n(" 确定").Click ' 弹出 提示框点击确认按钮 Dialog("Log in ").Close else '登陆成功进入订票Win dow("Flight Reservatio n").ActiveX("MaskEdBox").Type "011218"Win dow("Flight Reservatio n").Wi nComboBox("Fly From:").Select "Lo ndon" Win dow("Flight Reservatio n").Wi nComboBox("Fly To:").Select "Paris" Win dow("Flight Reservatio n").Wi nButto n("FLIGHT").CIickWin dow("Flight Reservatio n").Dialog("Flights Table").Wi nList("From").Select耳專 Test Parameter Summary "… 曲 Rur-Timc Ddt? Tablu□ |j^ Porometer Iteration 1 (RevH 电 Actionl SjirnnfiiyEl-- X 由)Parimrter Iteration 2 fRov 刁 X 唱Action] S immsiry(41 Ji login0 X Hight ReservationMa^ktdSox fypt-回fl F ¥ From:占elect 密 Fly TcjLSd&a■ FLIGHT, Click Para meter Results Summary宦 X 曰 Fights T ・bb5— J*◎ P.un Errorffl • Flight ReservationTest Parameter Results name. Resl I Time 厶>n 匕中国転薜时旧Run HtartQd:2D1SHP^135340Ftun ended: 201S/1/7-"12274 LON 01:27 PM PAR 03:07 PM NW $155.00"Win dow("Flight Reservatio n").Dialog("Flights Table").Wi nButton ("OK").CIickWin dow("Flight Reservatio n").Wi nEdit("Name:").Set "gcc"Win dow("Flight Reservatio n").Wi nEdit("Tickets:").Type "5"Window("Flight Reservation").WinEdit("Tickets:").SetSelection 0,1Win dow("Flight Reservatio n").Wi nEdit("Tickets:").Set "5"Win dow("Flight Reservatio n").Wi nRadioButto n( "Busi ness").SetWindow("Flight Reservation").WinButton("Insert Order").ClickWin dow("Flight Reservatio n").CIose ' 退出订票界面End Ifwait(3)脚本录制结果|曾小川L OTH Cwortrfo-Qcfc EizkEne "OK-□Lit”v Q ridlt匚he亡庸wheEher the ' F?gnt fesertiBt =TH ' base sasts . H 931口*□色ttie bLtonChiE CleaE IhrE 占兰四日龙*二「帕用Re时皿如Cbw Cw lhr 'F^h ' wrdsw 誉Funriiinr Gal Wfit 3 }務匕*耳岂护FI M14 4 it Hi ■, d q BMpRl:肌,L-atJi T施I E脚本回放结果鼻Test ^arameterLog nTest S j—匪Run-Time Data Table 由• “ Pa meterLog inTect tte 3 Po ro mctortoginTcrt Ito 3 D| ParometcrtoginTest Ite 自• ParameterLoginTest Ite 用• ParameterLoginTest Ite r« • ® Pa ra meterlog inTe^t IteTest ParameterLoflinTestResults name: R G$5Time Zone: 4=国听;隹对司Run started: 2018/1/7 ・ 14:2059 Run ended 2018/1/7-14 2151。

预订机票测试用例

测试用例1.引言1.1编写目的机票预订系统在概要设计和详细设计的基础上,根据软件工程开发各阶段的规格说明书和程序内部结构而精心设计一批测试用例,并利用这些测试用例去运行程序,以发现程序的错误,并改正尽可能多的错误,提高软件的质量和可靠性。

1.2项目背景本项目的名称:机票预订管理系统。

本项目的任务提出者及开发者是机票预订管理系统软件开发者,用户是中国民航及中国国际旅游开发公司。

1.3定义软件测试:为了发现错误而执行程序的过程。

静态测试:通过对需求文件、设计文件及源程序的阅读和分析,找出其中的错误和可以之处。

动态测试:直接在计算机上运行所要测试的程序模块,以实际运行的结果发现并纠正错误。

2.计划1.1方法与原则1.静态测试:主要对需求分析、概要设计、详细设计进行阅读和分析,找出其中的错误和可疑之处。

2.动态测试的黑盒测试和白盒测试白盒测试利用尽可能覆盖多的语句和对选择语句侧重测试的原则来选择测试用例;黑盒测试利用划分等价类的原则来完成测试。

2.2测试内容2.2.1模块功能测试订票平台的测试:内容:a.能否正确输入旅客信息;b.能否成功订票并把订票信息写入旅客信息数据库;c.能否成功打印帐单和取票通知单;d.能否利用旅客身份证号查询旅客的订票信息;目的:测试订票平台的各项功能是否能顺利完成,即订票流程是否完全正确。

取票平台测试:内容:a.能否利用身份证查询旅客订票信息和付费情况;b.能否利用帐单来完成付费;c.能否在付费后打印机票取机票。

目的:测试取票能否顺利完成,即取票流程是否完全正确。

2.2.2数据文卷存取的测试a.订票信息能否正确存入数据库;b.能否对数据库中的各种信息进行查询,修改;c.付费取票记录能否正确存入数据库。

2.3测试准备2.3.1测试机构及人员本软件的测试由王佳,徐俊共同完成。

2.3.2条件a.预定时间:一个星期;b.支持软件:VCc.测试人员技术水平:会操作本软件,懂得一定的软件工程知识。

航空订票系统测试

航空机票预订系统软件编码和测试说明书1引言1.1编写目的作为软件工程过称的一个阶段,编码是对设计的进一步具体化,因此,程序的质量主要取决于软件设计的质量,但所选用的程序设计语言的特点和编码风格也将对程序的可靠性、可读性、可测试性和可维护性产生深远的影响。

但在开发如此复杂的航空订票系统软件的过程中,面对着极其错综复杂的问题,人的主观认识不可能完全符合客观现实,与工程密切相关的各类人员之间的通信和配合也不可能完美无缺,因此,系统一定会存在差错。

测试的目的就是在软件投入生产运行之前,尽可能多的发现并改正软件中的错误。

编码阶段可参考概要设计和详细设计说明书,软件测试以及软件维护阶段也可参考编码和详细设计说明书,以便于了解在概要设计及详细设计的过程中所完成的各模块设计结构,或在测试阶段找出各模块的设计思路和流程。

该文档的读者为用户代表、软件分析人员、开发管理人员和测试人员。

1.2背景①名称:机票预订系统②委托方:某某航空公司③开发方:某某团队④组成:编码模块分组,服务器,编码人员,测试人员⑤本系统与其他系统的关系如下:1.3定义黑盒测试:黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。

在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。

黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。

很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

白盒测试:白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。

单元案例_Flight航空订票系统测试.

单元案例_Flight航空订票系统测试.单元五软件测试案例--Flight 航空定票系统⼀、案例描述HP公司,QTP测试软件⾃带Flight 航空定票系统软件登录模块、定票模块的⽤例设计和QTP测试脚本的开发。

⼆、案例要求1、通过实验掌握“⽤例设计”;2、掌握QTP测试脚本各种处理⽅法的开发;3、保存测试结果;4、分析测试结果。

三、案例实现步骤(⼀)测试需求Flight 航空定票系统测试需求如下:1、登录模块:⽤户名和⼝令4~10 位2、定票模块不同⽤户登录,定购不同的机票;根据⽇期、定单号、姓名查询定单。

(⼆)实现步骤1.编写测试⽤例表2 Flight 航空定票系统定票模块测试⽤例2.编写⾃动化测试程序步骤:(1)运⾏QTP软件,待打开后新建⼀个Test,点击⼯具栏上的“Record”按钮,打开飞机订票系统进⾏脚本的录制,然后点击“stop”按钮,结束录制;(2)将要进⾏验证的地⽅设置参数化:图1 测试⽤例(1)图2 测试⽤例(2)(3)点击“run”按钮,回放程序,通过程序回放过程中的正确与否,进⾏修改程序;测试脚本部分程序:Starter'应⽤程序的路径Sub StarterSystemUtil.Run Environment("Flyurl")End Sub'⽤函数来验证状态Public Function testRegExp(ByVal patrn, ByRef sour)' TODO: add function body hereDim regEx ' Create variable.Set regEx = New RegExp ' Create regular expression.regEx.Pattern = patrn ' Set pattern.regEx.IgnoreCase = true ' Set case sensitivity.regEx.Global=trueif regEx.Test(sour)=true Thenreporter.ReportEvent micPass,"登录失败!",cstr(sour) Elsereporter.ReportEvent micFail,"出现异常","提⽰信息不正确!"End IfEnd Function'定义变量Dim insertNum,insertbegin, istest,istatus,iselectorder,orderid'从DataTable中取值insertNum=DataTable("iCount",dtGlobalSheet)insertbegin=DataTable("begin",dtGlobalSheet)iselectorder=DataTable("SelectOpen",dtGlobalSheet)print iselectorderistest=datatable.Value("status")'登录界⾯Dialog("Login").WinEdit("Agent Name:").Set DataTable("name", dtGlobalSheet) Dialog("Login").WinEdit("Password:").SetSecure DataTable("password", dtGlobalSheet) Dialog("Login").WinButton("OK").Click'判断是否有⼦提⽰框出现If Dialog("Login").Dialog("Flight Reservations").Exist Then'取⼦提⽰框上的提⽰信息istatus=Dialog("Login").Dialog("Flight Reservations").Static("Please enter agent name").GetROProperty("text")testRegExp istest,istatusDialog("Login").Dialog("Flight Reservations").WinButton("确定").ClickDialog("Login").CloseElsereporter.ReportEvent micPass,"登录成功","登录成功!"DataTable.GetSheet("Action1").SetCurrentRow(insertbegin)For i=1 to insertNumsearchorderDataTable.GetSheet("Action1").SetNextRowNextopenorder(iselectorder)Window("Flight Reservation").WinMenu("Menu").Select "File;Exit"End If'打开新订单,并填写信息Sub searchWindow("Flight Reservation").WinMenu("Menu").Select "File;New Order"Window("Flight Reservation").ActiveX("MaskEdBox").Type DataTable("FlyDate", dtLocalSheet) Window("Flight Reservation").WinComboBox("Fly From:").Select DataTable("FlyFrom", dtLocalSheet)'若时间不完整,弹出对话框时的处理If Window("Flight Reservation").Dialog("Flight Reservations").Exist Thensstatus=Window("Flight Reservation").Dialog("Flight Reservations").Static("Please enter a flight").GetROProperty("text") Window("Flight Reservation").Dialog("Flight Reservations").WinButton("确定").ClickWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type "051212"End IfWindow("Flight Reservation").WinComboBox("Fly To:").Select DataTable("FlyTo", dtLocalSheet)Window("Flight Reservation").WinButton("FLIGHT").Click'随机取航班iCount = Window("Flight Reservation").Dialog("Flights Table").WinList("From").GetItemsCount Window("Flight Reservation").Dialog("Flights Table").WinList("From").SelectRandomNumber(0,iCount-1)Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").ClickEnd Sub'选择座位,获取定单号Sub orderWindow("Flight Reservation").WinEdit("Name:").Set DataTable("passageName", dtLocalSheet)Window("Flight Reservation").WinRadioButton(DataTable("seat",dtLocalSheet)).ClickWindow("Flight Reservation").WinButton("Insert Order").ClickWindow("Flight Reservation").ActiveX("Threed Panel Control").WaitProperty "text","Insert Done...",10000orderid = Window("Flight Reservation").WinEdit("Order No:").GetROProperty("text")DataTable("OrderNum",dtLocalSheet)=orderidEnd Sub'选择查询⽅式Sub openorder(iselectorder)DataTable.GetSheet("Action1").SetCurrentRow(insertbegin)For i=1 to insertNumIf iselectorder=1 Then'按姓名查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Customer Name").Set "ON"Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").SetDataTable("passageName", dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickWindow("Flight Reservation").Dialog("Open Order").Dialog("SearchResults").WinButton("OK").ClickElse if iselectorder=2Then'按时间查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Flight Date").Set "ON"Window("Flight Reservation").Dialog("Open Order").ActiveX("MaskEdBox").Type DataTable("FlyDate", dtLocalSheet) Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickWindow("Flight Reservation").Dialog("Open Order").Dialog("SearchResults").WinButton("OK").ClickElse if iselectorder=3 then'按时间和姓名查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Customer Name").Set "ON"Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").SetDataTable("passageName", dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Flight Date").Set "ON"Window("Flight Reservation").Dialog("Open Order").ActiveX("MaskEdBox").Type DataTable("FlyDate", dtLocalSheet) Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickWindow("Flight Reservation").Dialog("Open Order").Dialog("SearchResults").WinButton("OK").ClickElse if iselectorder=4 then' 按编号查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Order No.").Set "ON"print DataTable("OrderNum",dtLocalSheet)print orderidWindow("Flight Reservation").Dialog("Open Order").WinEdit("Edit_2").SetDataTable("OrderNum",dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickEnd ifEnd ifEnd ifEnd IfDataTable.GetSheet("Action1").SetNextRowNextEnd Sub(4)测试执⾏报告图3 运⾏结果(1)图4 运⾏结果(2)图5 运⾏结果(3)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单元五软件测试案例--Flight 航空定票系统一、案例描述HP公司,QTP测试软件自带Flight 航空定票系统软件登录模块、定票模块的用例设计和QTP测试脚本的开发。

二、案例要求1、通过实验掌握“用例设计”;2、掌握QTP测试脚本各种处理方法的开发;3、保存测试结果;4、分析测试结果。

三、案例实现步骤(一)测试需求Flight 航空定票系统测试需求如下:1、登录模块:用户名和口令4~10 位2、定票模块不同用户登录,定购不同的机票;根据日期、定单号、姓名查询定单。

(二)实现步骤1.编写测试用例表2 Flight 航空定票系统定票模块测试用例2.编写自动化测试程序步骤:(1)运行QTP软件,待打开后新建一个Test,点击工具栏上的“Record”按钮,打开飞机订票系统进行脚本的录制,然后点击“stop”按钮,结束录制;(2)将要进行验证的地方设置参数化:图1 测试用例(1)图2 测试用例(2)(3)点击“run”按钮,回放程序,通过程序回放过程中的正确与否,进行修改程序;测试脚本部分程序:Starter'应用程序的路径Sub StarterSystemUtil.Run Environment("Flyurl")End Sub'用函数来验证状态Public Function testRegExp(ByVal patrn, ByRef sour)' TODO: add function body hereDim regEx ' Create variable.Set regEx = New RegExp ' Create regular expression.regEx.Pattern = patrn ' Set pattern.regEx.IgnoreCase = true ' Set case sensitivity.regEx.Global=trueif regEx.Test(sour)=true Thenreporter.ReportEvent micPass,"登录失败!",cstr(sour) Elsereporter.ReportEvent micFail,"出现异常","提示信息不正确!"End IfEnd Function'定义变量Dim insertNum,insertbegin, istest,istatus,iselectorder,orderid'从DataTable中取值insertNum=DataTable("iCount",dtGlobalSheet)insertbegin=DataTable("begin",dtGlobalSheet)iselectorder=DataTable("SelectOpen",dtGlobalSheet)print iselectorderistest=datatable.Value("status")'登录界面Dialog("Login").WinEdit("Agent Name:").Set DataTable("name", dtGlobalSheet) Dialog("Login").WinEdit("Password:").SetSecure DataTable("password", dtGlobalSheet) Dialog("Login").WinButton("OK").Click'判断是否有子提示框出现If Dialog("Login").Dialog("Flight Reservations").Exist Then'取子提示框上的提示信息istatus=Dialog("Login").Dialog("Flight Reservations").Static("Please enter agentname").GetROProperty("text")testRegExp istest,istatusDialog("Login").Dialog("Flight Reservations").WinButton("确定").ClickDialog("Login").CloseElsereporter.ReportEvent micPass,"登录成功","登录成功!"DataTable.GetSheet("Action1").SetCurrentRow(insertbegin)For i=1 to insertNumsearchorderDataTable.GetSheet("Action1").SetNextRowNextopenorder(iselectorder)Window("Flight Reservation").WinMenu("Menu").Select "File;Exit"End If'打开新订单,并填写信息Sub searchWindow("Flight Reservation").WinMenu("Menu").Select "File;New Order"Window("Flight Reservation").ActiveX("MaskEdBox").Type DataTable("FlyDate", dtLocalSheet) Window("Flight Reservation").WinComboBox("Fly From:").Select DataTable("FlyFrom", dtLocalSheet)'若时间不完整,弹出对话框时的处理If Window("Flight Reservation").Dialog("Flight Reservations").Exist Thensstatus=Window("Flight Reservation").Dialog("Flight Reservations").Static("Please enter a flight").GetROProperty("text")Window("Flight Reservation").Dialog("Flight Reservations").WinButton("确定").ClickWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type micBackWindow("Flight Reservation").ActiveX("MaskEdBox").Type "051212"End IfWindow("Flight Reservation").WinComboBox("Fly To:").Select DataTable("FlyTo", dtLocalSheet)Window("Flight Reservation").WinButton("FLIGHT").Click'随机取航班iCount = Window("Flight Reservation").Dialog("Flights Table").WinList("From").GetItemsCount Window("Flight Reservation").Dialog("Flights Table").WinList("From").SelectRandomNumber(0,iCount-1)Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").ClickEnd Sub'选择座位,获取定单号Sub orderWindow("Flight Reservation").WinEdit("Name:").Set DataTable("passageName", dtLocalSheet)Window("Flight Reservation").WinRadioButton(DataTable("seat",dtLocalSheet)).ClickWindow("Flight Reservation").WinButton("Insert Order").ClickWindow("Flight Reservation").ActiveX("Threed Panel Control").WaitProperty "text","Insert Done...",10000orderid = Window("Flight Reservation").WinEdit("Order No:").GetROProperty("text")DataTable("OrderNum",dtLocalSheet)=orderidEnd Sub'选择查询方式Sub openorder(iselectorder)DataTable.GetSheet("Action1").SetCurrentRow(insertbegin)For i=1 to insertNumIf iselectorder=1 Then'按姓名查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Customer Name").Set "ON"Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").SetDataTable("passageName", dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickWindow("Flight Reservation").Dialog("Open Order").Dialog("SearchResults").WinButton("OK").ClickElse if iselectorder=2Then'按时间查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Flight Date").Set "ON"Window("Flight Reservation").Dialog("Open Order").ActiveX("MaskEdBox").Type DataTable("FlyDate", dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickWindow("Flight Reservation").Dialog("Open Order").Dialog("SearchResults").WinButton("OK").ClickElse if iselectorder=3 then'按时间和姓名查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Customer Name").Set "ON"Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").SetDataTable("passageName", dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Flight Date").Set "ON"Window("Flight Reservation").Dialog("Open Order").ActiveX("MaskEdBox").Type DataTable("FlyDate", dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickWindow("Flight Reservation").Dialog("Open Order").Dialog("SearchResults").WinButton("OK").ClickElse if iselectorder=4 then' 按编号查Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Order No.").Set "ON"print DataTable("OrderNum",dtLocalSheet)print orderidWindow("Flight Reservation").Dialog("Open Order").WinEdit("Edit_2").SetDataTable("OrderNum",dtLocalSheet)Window("Flight Reservation").Dialog("Open Order").WinButton("OK").ClickEnd ifEnd ifEnd ifEnd IfDataTable.GetSheet("Action1").SetNextRowNextEnd Sub(4)测试执行报告图3 运行结果(1)图4 运行结果(2)图5 运行结果(3)。

相关文档
最新文档