软件测试实验报告.docx

上传人:b****8 文档编号:9597905 上传时间:2023-02-05 格式:DOCX 页数:20 大小:1.12MB
下载 相关 举报
软件测试实验报告.docx_第1页
第1页 / 共20页
软件测试实验报告.docx_第2页
第2页 / 共20页
软件测试实验报告.docx_第3页
第3页 / 共20页
软件测试实验报告.docx_第4页
第4页 / 共20页
软件测试实验报告.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

软件测试实验报告.docx

《软件测试实验报告.docx》由会员分享,可在线阅读,更多相关《软件测试实验报告.docx(20页珍藏版)》请在冰豆网上搜索。

软件测试实验报告.docx

软件测试实验报告

 

实验报告

(2014/2015学年第1学期)

课程名称

实验室开放项目

实验名称

软件测试技术实验

实验时间

2014年10月31日—2014年12月12日

指导单位

计算机学院实验教学中心

指导教师

潘文婵

 

学生姓名

黄源

班级学号

B13041031

学院(系)

计算机软件

专业

软件工程

 

实验报告

实验名称

软件测试技术实验

指导教师

潘文婵

实验类型

综合设计性

实验学时

32

实验时间

2014.10.31-2014.12.12

一、实验目的和要求

1.了解QuickTest测试工具的操作界面,了解QuickTest测试工具的测试模式和过程,并能使用QuickTest测试工具录制测试脚本、执行并分析测试脚本。

2.熟练使用QuickTestProfessional进行自动化测试。

掌握QuickTestProfessional测试流程

3.应用Web测试工具对Web系统进行功能和性能测试

二、实验环境(实验设备)

主流PC机一套,QuickTestProfessional8.2、OFFICE工具

三、实验原理及内容

实验一:

QTP的初级使用

上面是QTP的软件界面,QTP是QuicktestProfessional的简称,是一种自动测试工具。

使用QTP的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本,因此你在测试前要考虑好如何对应用程序进行测试,例如要测试哪些功能,操作步骤,输入数据和期望的输出数据等。

实验内容如下:

(1)录制脚本

我们使用QTP录制一个测试脚本,在MercuryTours范例网站上预定一张从纽约(NewYork)到旧金山(SanFrancisco)的机票。

1.执行QuickTest并开启一个全新的测试脚本

⏹开启QuickTest,在“Add-inManager”窗口中选择“Web”选项,点击“OK”关闭“Add-inManager”窗口,进入QuickTestProfessional主窗口。

⏹如果QuickTestProfessional已经启动,检查“Help>AboutQuickTestProfessional”查看目前加载了那些add-ins。

如果没有加载“Web”,那么必须关闭并重新启动QuickTestProfessional,然后在“Add-inManager”窗口中选择“Web”。

⏹如果在执行QuickTestProfessional时没有开启“Add-inManager”则点击“Tool>Options”,在“General”标签页勾选“DisplayAdd-inManageronStartup”,在下次执行QuickTestProfessional时就会看到“Add-inManager”窗口了

2.开始录制测试脚本

选中“Test>Record”或者点选工具栏上的“Record”按钮。

打开“RecordandRunSettings”对话窗口:

(2)执行测试脚本

当运行录制好的测试脚本时,QTP会打开被测试程序,执行你在测试中录制的每一个操作。

测试运行结束后,QTP显示本次运行的结果。

接下来,我们执行录制的Flight测试脚本。

1.打开录制的Flight测试脚本。

2.设置运行选项。

点击“Tool>Options”打开设置选项对话框,选择“Run”标签页,如下图:

如果要将所有画面储存在测试结果中,在“Savestepscreencapturetoresults”选项中选择“Always”选项。

一般情况下我们选择“Onerror”或“Onerrorandwarning”表示在回放测试过程中出现问题时,才保存图象信息。

在这里我们为了更多的展示QuickTest的功能,所以选择使用“Always”选项。

3.在工具条上点击“Run”按钮,打开“Run”对话框:

询问要将本次的测试运行结果保存到何处。

选择“NewRunresultsfolder”单选按钮,设定好存放路径(在这使用预设的测试结果名称)。

4.点击“OK”按钮开始执行测试。

可以看到QTP按照你在脚本中录制的操作,一步一步的运行测试,操作过程与你手工操作时完全一样。

同时可以在QTP的KeywordView中会出现一个黄色的箭头,指示目前正在执行的测试步骤。

在“Web”标签页选择“Openthefollowingbrowserwhenarecordorrunsessionbegins”

在“Type”下拉列表中选择“MicrosoftInternetExplorer”为浏览器的类型;在“Address”中添加“这样,在录制的时候,QTP会自动打开IE浏览器并连接到MercuryTours范例网站上。

现在我们在切换到“WindowsApplication”标签页,如下图所示:

如果选择“RecordandruntestonanyopenWindows-basedapplication”单选按钮,则在录制过程中,QTP会记录你对所有的Windows程序所做的操作。

如果选择“Recordandrunontheseapplication(openedwhenasessionbegins)”单选按钮,则在录制过程中,QuickTest只会记录对那些添加到下面“Applicationdetails”列表框中的应用程序的操作(你可以通过“Add”、“Edit”、“Delete”按钮来编辑这个列表)。

我们选择第二个单选按钮。

因为我们只是对MercuryTours范例网站进行操作,不涉及到Windows程序,所以保持列表为空。

点击“确定”按钮,开始录制了,将自动打开IE浏览器并连接到MercuryTours范例网站上。

3.登录MercuryTours网站

在用户名和密码输入注册时使用的账号和密码,点击“Sign-in”,进入“FlightFinder”网页。

4.输入订票数据

输入以下订票数据:

DepartingFrom:

NewYork

On:

May14

ArrivingIn:

SanFrancisco

Returning:

May28

ServiceClass:

Businessclass

其他字段保留默认值,点击“CONTINUE”按钮打开“SelectFlight”页面。

5.选择飞机航班

可以保存默认值,点击“CONTINUE”按钮打开“BookaFlight”页面。

6.输入必填字段(红色字段)

输入用户名和信用卡号码(信用卡可以输入虚构的号码,如8888-8888)。

点击网页下方的“SECUREPURCHASE”按钮,打开“FlightConfirmation”网页。

7.完成定制流程

查看订票数据,并选择“BACKTOHOME”回到MercuryTours网站首页。

8.停止录制

在QuickTest工具列上点击“Stop”按钮,停止录制。

到这里已经完成了预定从“纽约-旧金山”机票的动作,并且QTP已经录制了从按下“Record”按钮后到“Stop”按钮之间的所有操作。

9.保存脚本

选择“File>Save”或者点击工具栏上的“Save”按钮,开启“Save”对话窗口。

选择的路径,填写文件名,我们取名为Flight。

点击“保存”按钮进行保存。

通过以上九个步骤,我们录制了一个完整的测试脚本—预定从纽约到旧金山的机票。

实验二.:

QTP的高级使用

在QTP的初级使用中,我们已经录制好一个脚本,创建并运行了测试,以检查在应用程序上或网站上执行的一系列步骤是否可以顺利执行。

本实验要求对上一个实验做增强测试。

通过在测试中插入检查点可以搜索页面、对象或文本字符串中的特定值,有助于确定应用程序或网站是否正常运行。

通过扩大测试范围(用参数替换固定值),可以检查应用程序如何使用多组数据来执行相同的操作。

本实验需测试步骤如下:

1.检查对象:

选取一个对象,创建标准检查点,检查该对象的属性值;

2.检查文本:

选取文本,创建文本检查点;

3.检查表格:

选取一个表格,检查表中的信息;

4.参数化测试:

选取可参数化的文本或对象,进行参数化测试。

根据脚本的特点,在录制的脚本中建立检查点,并进行参数化。

1.建立标准检查点:

在检查点属性窗口会显示检查点的属性

我们接受预设的设定值,点击“OK”.QTP会在选取的步骤之前建立一个标准检查点。

2.参数化

使用数据表参数,可以通过创建数据参数来为参数提供可能的值列表。

表中的每个列都表示单个数据表参数的值列表。

列标题是参数名。

表中的每一行都是表示QuickTest在测试或组建的单次循环期间为所有参数提交的一组值。

在测试执行完成后,QTP会自动显示测试结果窗口,如下图所示:

在这个测试结果窗口中分二个部分显示测试执行的结果

⏹左边显示Testresultstree,以阶层图标的方式显示测试脚本所执行的步骤。

可以选择“+”检查每一个步骤,所有的执行步骤都会以图示的方式显示。

可以设定QuickTest以不同的资料执行每个测试或某个动作,每执行一次反复称为一个迭代,每一次迭代都会被编号(在上面的例子中只执行了一次迭代)。

⏹右边则是显示测试结果的详细信息。

在第一个表格中显示哪些迭代是已经通过的,哪些是失败的。

第二个表格是显示测试脚本的检查点,哪些是通过的,哪些是失败的,以及有几个警告信息。

在上面的测试中,所有的测试都是通过的,在脚本中也没有添加检查点(有关检查点的内容我们将在以后的课程中学习)。

接下来我们查看QuickTest执行测试脚本的详细结果,以及选择某个测试步骤时出现的详细信息。

在树视图中展开“FlightIteration1(Row1)>Action1Summary>WelcomeMercuryTours>FindaFlight:

Mercury>”,选择“"fromPost":

Select"NewYork"”。

在这个测试结果窗口中显示三个部分,分别是:

⏹左边是Testresultstree:

展开树视图后,显示了测试执行过程中的每一个操作步骤。

选择某一个测试步骤,会在右边区域显示相应的信息。

⏹右上方是Testresultsdetail:

对应当前选中的测试步骤,显示被选取测试步骤执行时的详细信息。

⏹右下方是ActiveScreen:

对应当前选中的测试步骤,显示该操作执行时应用程序的屏幕截图。

当选中testresultstree上的网页图示,会在“ActiveScreen”中看到执行时的画面。

当选中testresultstree上的测试步骤(在某个对象上执行某个动作),除了显示当前时的画面外,对象还会被粉色的框框框住。

在上面的例子中,在“ActiveScreen”中点击被框住的“DepartingFrom”下拉菜单,会显示其他的选项。

实验三:

Web系统测试

本实验需要对Web系统进行功能测试和性能测试,其中,对Web系统进行功能测试包括以下几个方面:

1.链接测试2.表单测试3.Cookies测试4.数据库测试

测试用例设计:

前置条件

存在正确的用户名和密码;登录页面正常装载;(测试账号:

njuptceshi,密码:

1212121)

用例编号

操作

输入数据

预期结果

实际结果

测试状态(P/F)

01

输入正确的帐号、正确的密码,点击“登录”

帐号:

njuptceshi

密码:

1212121

正常登录

正常登录,转入对应的系统页面

P

02

输入正确的帐号、正确的密码,按ENTER键

帐号:

njuptceshi

密码:

1212121

正常登录

正常登录,转入对应的系统页面

P

03

输入错误的帐号或者没有注册的帐号,点击“登录”

帐号:

nju34ceshi

密码:

1212121

不能正常登录,显示“帐号不存在或者错误”的提示

不能正常登录,提示“您输入的帐号或者密码不正确,请重新输入。

F

04

首次输入正确的帐号、错误的密码,点击“登录”

帐号:

njuptceshi

密码:

123456

不能正常登录,显示“密码错误”

不能正常登录,提示“您输入的帐号或者密码不正确,请重新输入。

F

05

第二次输入正确的帐号、错误的密码,点击“登录”

帐号:

njuptceshi

密码:

1235453

不能正常登录,显示“密码错误”

不能正常登录,提示“您输入的帐号或者密码不正确,请重新输入。

F

06

第三次输入正确的帐号、错误的密码,点击“登录”

帐号:

njuptceshi

密码:

1dsds

不能正常登录,显示“密码错误”

不能正常登录,提示“您今天修改过密码,请使用新的密码登录”,并在登录界面上出现验证码

F

07

第四次输入正确的帐号、错误的密码和正确的验证码,点击“登录”

帐号:

njuptceshi

密码:

12765rt

验证码:

图片中的字母

不能正常登录,显示“密码错误”

不能正常登录,提示“您输入的帐号或者密码不正确,请重新输入。

F

08

输入正确的帐号、正确的密码和正确的验证码,点击“登录”

帐号:

njuptceshi

密码:

123456

验证码:

图片中的字母

正常登录

正常登录,转入对应的系统页面

P

163网站的登录界面如图所示:

当输入密码或账号错误时,登录失败,会弹出如下信息界面:

录制的测试脚本如下:

Browser("163网易免费邮--中文邮箱第一品牌").Page("163网易免费邮--中文邮箱第一品牌").WebEdit("username").Set"njuptceshi"

Browser("163网易免费邮--中文邮箱第一品牌").Page("163网易免费邮--中文邮箱第一品牌").WebEdit("password").SetSecure"54816117dd769e266ab4cd326490096fc56f2ff0"

Browser("163网易免费邮--中文邮箱第一品牌").Page("163网易免费邮--中文邮箱第一品牌").WebButton("登录").Click

Browser("163网易免费邮--中文邮箱第一品牌").Page("163网易免费邮--中文邮箱第一品牌").WebButton("登录").Click

SystemUtil.Run"D:

\ProgramFiles\SogouInput\7.4.0.4201\SogouCloud.exe","-daemon","D:

\ProgramFiles\SogouInput\7.4.0.4201","open",0

Browser("163网易免费邮--中文邮箱第一品牌").Page("163网易免费邮--中文邮箱第一品牌").WebEdit("password").SetSecure"5481614244b2da17b4f797896ebffc1ff6383136"

Browser("163网易免费邮--中文邮箱第一品牌").Page("163网易免费邮--中文邮箱第一品牌").WebButton("登录").Click

测试结果分析:

当用户输入密码错误的次数太多时,网站会给出信息,提示用户,以保证用户的信息安全,网站给出的信息如下:

Web性能测试:

压力测试

进行压力测试是指实际破坏一个Web应用系统,测试系统的反映。

压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。

黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。

压力测试的区域包括表单、登陆和其他信息传输页面等。

1、创建测试议程agenda

用WebLoadVisualAAT创建测试议程agenda:

打开VisualAgendaAuthoringTool

选择[Createanewproject],并[确定]创建测试议程agenda

 

设置清除浏览器的cache和cookie:

选择[tools]->[defaultprojectoptions]->[IEplaybacksettings]选择[clearcache]和[clearcookie]点击[ok]

点击[startrecord]按钮,弹出提示,点击ok

自动打开一个IE,手工输入要测试的地址,进入系统

在测试系统里完成一系列操作

点击[stoprecord]停止录制,一个agenda脚本创建完毕;保存脚本

创建压力模板loadtemplates

用WebLOADConsole创建loadtemplates-将一系列压力事件定义到一个压力会话loadsession里:

I.用webloadwizard创建一个简单的压力模板

II.用CruiseControlWizard创建一个预期性能参数的压力测试模板

III.用webloadconsole手工创建压力模板

2、用webloadwizard创建压力模板

进入webloadconsole,选择该种方式创建压力模板:

选择一个agenda或者混合型

lSingleAgendas:

创建只有一个agenda脚本的压力模板

lMixofAgendas:

多个agenda脚本,模拟用户不同活动

选择singleagenda:

选择Mix方式:

可选择一个已有的mix文件,也可新建一个mix。

选择新建一个mix时:

上述三种方式【下一步】后,到达选择主机窗口:

压力会话的进度设置:

有两种设置方式,一个是手工分配每个压力机的压力;另一个是自动均匀分配每个压力机的压力。

手工分配每个压力机的压力:

用webloadwizard创建压力模板自动均匀分配每个压力机的压力:

可手工添加、删除、复制来设置进度;也可通过loadprofiler来设置,具体操作同手工分配压力的方式。

【下一步】点击后,可立即执行测试,也可不立刻执行,点击【完成】;对于创建完的压力模板,可以:

编辑压力模板

通过菜单【reports】-【integratedreport】-【newreport】来查看webload默认生成的报告

通过菜单【sessioncontrol】-【modifyhostselection】来修改主机设置

通过菜单【sessioncontrol】-【modifyschedule】修改压力进度表

3、创建一个预期性能参数的压力测试模板

打开webloadconsole,选择用cruisecontrolwizard创建模板:

进入选择singleagenda或mix方式添加脚本,之后选择压力机和探测客户机,这些操作和前一种方式相同;然后进入测试目标定义窗口:

点击【addgoal】按钮弹出所有可以添加的测量参数:

添加一个或多个测量参数:

为了达到测量参数目标,设置每次增加虚拟用户的速度:

定义当测量目标参数达到时webload状态:

点击【完成并运行】按钮,开始运行压力模板,并得到实时跟踪的测试结果:

手工创建压力模板

打开webloadconsole首页,选择【createanewtemplatemanually】,开始手工创建压力模板;该种方式的工作流如下,具体操作同前,这里不赘述:

4、运行压力模板loadtemplates

每种方式创建的压力模板都可以自动运行,也可以保存起来,或修改之后,通过如下方式运行:

在webloadconsole菜单栏里选择【sessioncontrol】-【startsession】

在webloadconsole工具栏里选择startsession按钮

输出测试报告并分析测试结果

实时查看测试结果:

在chatview页面右键单击任何一个点查看实际值

点击工具栏【dashboard】按钮查看整个测试中的关键参数

点击工具栏【openstatistics】按钮统计整个测试中的详细参数,点击某个参数值可查看更详细信息

点击工具栏【datadrilling】按钮查看每个被测web页面的传输性能参数,点击可查看更详细信息

输出测试报告并分析测试结果

创建集成报告:

选择菜单栏【report】-【integratedreport】-【newreport】

点击【rename】创建新的报告

从参数树里选择本次测试中,想要生成报告的选项

点击【ok】,报告显示出来

输出测试报告并分析测试结果

用webloadreporter分析测试结果

打开webloadreporter

在这里,有整个测试过程中想要的各个分析工具,点击任何一个即动态生成该类型的报告,已做分析

点击菜单栏【publish】,可以从中选择将生成的报告以其他方式导出

关闭webloadreporter

 

四、实验小结(包括问题和解决方法、心得体会、意见与建议等)

UFT与QTP差异有点大,看说明书还是不太懂,后来用了QTP做的,软件测试是软件开发重要的一个环节,经过32个课时的学习,我体会到了测试人员们的工作,虽然只是入门,但我确信软件测试这是相当重要的环节。

计算机3级也有软件测试类,这门课程也可以当做向软件测试迈出的第一小步吧。

希望说明书能对应UFT,不然还真挺难看懂的。

其中买机票的网页也不对,是后来上网找,才找到的那个网站。

经历上述不少问题,不过还是克服了,感觉很有成就感。

也感谢学校给予我们这次学习的机会。

成绩

批阅人

日期

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 政史地

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1