08级软件工程专业《软件测试技术》实验文档1_马丽1026

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

《软件测试技术》实验指导书适用专业:软件工程(本科)实验学时:30一、适用范围大纲适用于软件工程专业本科教学使用。二、课程名称《软件测试技术》三、实验教学目的和要求1、实验目的本实验课程配合《软件测试技术》理论课同步开设,其中包括验证型、设计型和综合型实验。本实验课程着眼于理论与应用的结合,注重培养学生软件测试的实际动手能力,增强软件工程项目的质量管理意识。通过实验教学,使学生掌握软件测试的方法和技术,并能运用软件测试工具进行自动化测试。2、实验要求实验前要充分做好准备工作:1.复习和掌握与本实验有关的知识内容;2.预习、思考实验内容;3.对实验内容进行分析和设计。实验过程中,实验者必须服从指导教师和实验室工作人员的安排,遵守纪律与实验制度,爱护设备及卫生。在指定的实验时间内,必须到实验室内做实验。对于上机过程中出现的问题,尽量先独立思考和解决;对于难以解决的问题可以和同学交流或询问老师;对于同一个实验题目,可以考虑多种方法来实现,然后比较并选择出一种较为有效的方法来实现。对于设计型和验证型实验,实验时一人一组,独立上机。对于综合型实验,每四人组成一个小组,由组长来组织管理小组成员,共同完成实验内容。四、实验项目与学时分配序号实验项目学时数实验类型1实例程序设计4设计2功能性测试(黑盒测试)6设计、验证3结构性测试(白盒测试)4设计、验证4单元测试2设计、验证5QTP的使用4验证6LoadRunner的使用4验证7WinRunner的使用2验证8Web系统测试4综合合计30实验1测试的实例程序的设计(4学时)一、实验目的完成测试程序的编写,后续的实验将以这些程序作为测试对象用不同的测试方法来进行测试。二、实验内容1、设计三角形问题的程序2、设计Nextdate函数的程序3、设计佣金问题的程序4、简单ATM系统5、货币转换器三、实验步骤1、第2周完成各程序的总体设计和前两个程序的实现并进行调试。2、第3、4周实现后3个程序的功能。四、实验要求1、用C或C++、JAVA语言开发程序,根据题目要求实现程序功能;2、画出程序功能的实现图(流程图或数据流图或对象(类)模型或状态图等);3、撰写实验报告;4、打包各程序相关资料且上交。实验2功能性测试(6学时)一、实验目的1、能熟练应用功能性测试技术进行测试用例设计;2、对测试用例进行优化设计;二、实验内容1.题目一:货币转换器根据该程序的规格说明,作等价类的划分,并设计测试方案。2.题目二:三角形问题根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。“一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。”3.题目三:日期问题用决策表测试法测试以下程序:该程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。例如,输入为2004年11月29日,则该程序的输出为2004年12月1日。(1)分析各种输入情况,列出为输入变量month、day、year划分的有效等价类。(2)分析程序的规格说明,并结合以上等价类划分的情况,给出问题规定的可能采取的操作(即列出所有的动作桩)。(3)根据(1)和(2),画出简化后的决策表。4.题目四:计算器三、实验步骤1、根据功能性测试技术设计测试用例,主要考虑等价类划分和边界值分析测试技术;2、根据所学知识确定优化策略(原则:用最少的用例检测出更多的缺陷、软件测试的充分性与冗余性考虑),设计两套测试用例集;3、根据设计的两套测试用例集进行测试;四、实验要求1、根据题目要求编写测试用例(参照表1进行用例设计);2、实验结果要求给出两套测试用例集测试效果比较;3、撰写实验报告;实验3结构性测试(4学时)一、实验目的1、掌握结构性测试技术,并能应用结构性测试技术设计测试用例;2、对测试用例进行优化设计二、实验内容1.题目一:使用逻辑覆盖测试方法测试以下程序段voidDoWork(intx,inty,intz){intk=0,j=0;if((x3)&&(z10)){4k=x*y-1;5j=sqrt(k);6}7if((x==4)||(y5))8j=x*y+10;9j=j%3;10}说明:程序段中每行开头的数字(1~10)是对每条语句的编号。(1)画出程序的控制流图(用题中给出的语句编号表示)。(2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。2.题目二:三角形问题在三角形计算中,要求输入三角型的三个边长:A、B和C。当三边不可能构成三角形时提示错误,可构成三角形时计算三角形周长。若是等腰三角形打印“等腰三角形”,若是等边三角形,则提示“等边三角形”。画出程序流程图、控制流程图、计算圈复杂度V(g),找出基本测试路径。3.题目三:计算生日是星期几已知公元1年1月1日是星期一。编写一个程序,只要输入年月日,就能回答那天是星期几。应用逻辑覆盖方法和基路径测试方法为上面的问题设计测试用例。4.题目四:选择排序下面是选择排序的程序,其中datalist是数据表,它有两个数据成员:一是元素类型为Element的数组V,另一个是数组大小n。算法中用到两个操作,一是取某数组元素V[i]的关键码操作getKey(),一是交换两数组元素内容的操作Swap():voidSelectSort(datalist&list){/对表list.V[0]到list.V[n-1]进行排序,n是表当前长度。for(inti=0;ilist.n-1;i++){intk=i;//在list.V[i].key到list.V[n-1].key中找具有最小关键码的对象for(intj=i+1;jlist.n;j++)if(list.V[j].getKey()list.V[k].getKey())k=j;//当前具最小关键码的对象if(k!=i)Swap(list.V[i],list.V[k]);//交换}}(1)、试计算此程序段的McCabe复杂性;(2)、用基本路径覆盖法给出测试路径;(3)为各测试路径设计测试用例。题目五、以下代码由C语言书写,能根据指定的年、月计算当月所含天数。(1)请画出以上代码的控制流图。(2)请计算上述控制流图的环路复杂度V(G)。(3)假设year的取值范围是1000year2001,请使用基本路径测试法为变量year、month设计测试用例(写出year取值、month取值、maxday预期结果),使之满足基本路径覆盖要求。三、实验步骤1、根据结构性测试技术设计测试用例,主要考虑逻辑覆盖测试(语句覆盖、判断覆盖、条件覆盖、判断/条件覆盖、条件组合覆盖、路径覆盖)和基路径测试技术;2、根据所学知识确定优化策略(原则:用最少的用例检测出更多的缺陷、软件测试的充分性与冗余性考虑),设计两套测试用例集;3、根据设计的两套测试用例集进行测试、参照表2所示的缺陷等级给出缺陷列表;计算测试用例的分支覆盖率、条件覆盖率和语句覆盖率等测试管理指标;四、实验要求1、根据题目要求编写测试用例;2、实验结果要求给出两套测试用例集测试效果比较;计算测试用例的分支3、覆盖率、条件覆盖率和语句覆盖率等测试管理指标;4、撰写实验报告;实验4单元测试(2学时)一、实验目的1、掌握单元测试技术,并按单元测试的要求设计测试用例。2、能熟练应用功能性测试技术进行测试用例设计;3、能熟练应用结构性测试技术进行测试用例设计;4、对测试用例进行优化设计;5、熟悉测试管理中的量化指标二、实验内容针对三角形问题进行单元测试三角形问题:接受三个正整数a、b、c作为输入,用做三角形的边。三边必须满足条件:0a、b、c≤1000;程序的输出是由这三条边确定的三角形类型:等边三角形、等腰三角形、不等边三角形或非三角形。三、实验步骤1、根据功能测试技术设计测试用例,主要考虑边界测试、等价类(弱一般、强一般、弱健壮性、强健壮性)和基于决策表等技术;2、根据结构性测试技术设计测试用例,主要考虑路径测试、数据流等测试技术;3、根据所学知识确定优化策略(原则:用最少的用例检测出更多的缺陷、软件测试的充分性与冗余性考虑),设计两套测试用例集;4、根据设计的两套测试用例集进行测试、参照表2所示的缺陷等级给出缺陷列表;5、计算测试用例的分支覆盖率、条件覆盖率和语句覆盖率等测试管理指标;四、实验要求1、以实验报告的形式撰写单元测试的测试用例。2、实验结果要求给出两套测试用例集测试效果比较(根据实验步骤中的4、5两步进行撰写);实验5QuickTestProfessional的使用(4学时)一、实验说明实验类型为验证型,4学时二、实验目的1、掌握QTP操作界面的组成和测试流程2、重点掌握如何使用QTP来进行自动化的功能测试3、掌握如何创建自动化测试用例三、实验设备PC机一台,要求安装Windows操作系统、office、QTP9.0工具四、实验内容1、测试MercuryTours网站使用QTP对MercuryTours网站进行功能测试,要求录制预定机票的完整过程,然后执行测试脚本并分析结果。2、测试博客网站使用QTP对博客网站进行功能测试要求:(1)录制博客登录、发表日志、上传图片的过程。然后执行测试脚本并分析结果。(2)根据脚本的特点,在录制的过程中创建检查点,并进行参数化。(3)执行测试脚本并分析测试脚本。五、实验要求1、撰写实验报告,主要填写本人测试步骤和自己的实验体会。2、提交录制的测试脚本。实验6LoadRunner的使用(4学时)一、实验目的熟悉使用LoadRunner测试,掌握LoadRunner流程。二、实验内容1.题目一:LoadRunner使用熟悉LoadRunner界面,掌握掌握LoadRunner流程。2、题目二:对博客系统进行并发测试录制用户登录系统过程,并进行参数化,然后分别模拟10个、20个、30个、50个和100个用户登录系统,分别获得响应时间、吞吐量等性能指标。三、实验要求1、撰写实验报告,主要填写本人上机测试步骤和测试内容。2、提交录制的测试脚本。实验7WinRunner的使用(2学时)一、实验目的1、了解WinRunner的安装过程,并进行安装实验。了解WinRunner测试模式和测试过程,并能够使用WinRunner进行简单的测试工作。二、实验内容1.题目一:测试MercuryTours网站使用WinRunner对FlightReservation范例程序进行功能测试。要求录制预订机票的完整过程,然后执行测试脚本并分析结果。2.题目二:测试Windows应用程序选择一个Windows应用程序。要求录制此应用程序操作过程,然后执行测试脚本并分析结果。3.题目三:测试163网站使用QuickTest对MercuryTours网站进行功能测试。要求录制打开163免费邮箱阅读邮件和发邮件的过程。然后执行测试脚本并分析结果。三、实验步骤(一)、WinRunner使用概述1.启动WinRunner点击开始程序WinRunnerWinRunner启动WR。WR的Record/RunEngine(记录/执行引擎)的图标出现在Windows的任务条上。这个引擎设立和维护WR和被测软件之间的连接。第一次启动WR会看到欢迎窗口,你可以选择新建测试、打开已有测试或快速预览WR。如果不希望下次启动看到这个窗口,可以把Showonstartup前面的勾去掉。2.WinRunner主窗口WinRunner主窗口入图3-19所示。主窗口包括以下部分:a).WinRunnertitlebar标题栏b).Menubar菜单栏c).Standardtoolbar标准工具栏,包含运行测试时常用的命令d).Usertoolbar用户工具栏,包含创建测试时常用的命令

1 / 14
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功