软件测试实验指导书
更新时间:2024-03-07 07:20:01 阅读量: 综合文库 文档下载
《软件测试》实验指导书
湖北工程学院计算机学院
魏文才 编制
2013年2月
实验1、黑盒测试:等价类划分法
一、实验目的
1、掌握等价类的概念。
2、掌握等价类划分法的测试用例设计方法。
二、实验内容
对三角问题使用等价类划分的方法来设计测试用例,并执行测试,然后撰写
实验报告。(源程序见附1)
三角形问题:规定输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型(等边三角形、等腰三角形、一般三角形、构不成三角形),并在屏幕上输出。0
三、实验步骤:
① 划分等价类,得到等价类表。等价类表格式如下: 输入变量 有效等价类 a,b,c 0200或a,b,c<200 ② 运用弱健壮等价类测试用例设计法设计测试用例,得到测试用例表。测
试用例表格式如下: 测试用例ID T1 T2 T3 a 5 2 3 b 5 2 4 c 5 3 6 预期输出 等边三角形 等腰三角形 一般三角形 ③ 执行测试,填写软件缺陷报告。简单软件缺陷报告格式如下:
测试模块: 测 试 员: 缺陷ID B1 B2 B3 三角形的类型 郑航 开 发 者: 郑航 测试日期: 2013-6-4 缺陷描述 当输入: 5,5,5 期望结果:等边三角形 实际结果:等边三角形 当输入: 2,2,2 期望结果:等腰三角形 实际结果:等腰三角形 当输入: 3,4,6 期望结果:一般三角形 实际结果:一般三角形
2
实验2、黑盒测试:边界值分析法及测试用例设计
一、实验目的
1、掌握边界值的概念。
2、掌握边界值分析法的测试用例设计方法。
二、实验内容
对NextDate问题运用决策表法设计测试用例,并执行测试,撰写实验报告。 NextDate (int month, int day, int year)函数规定:输入三个整数:month、day和year,函数的输出为输入日期后一天的日期。例如,输入为2013年6月7日,则函数的输出为2013年6月8日,year满足1920≤year≤2050。
三、实验步骤:
测试用例 Test1 Test2 Test3 Test4 Test5 Test6 Test7 Test8 Test9 Test10 Test11 Test12 Test13 mouth 6 6 6 6 6 6 6 6 6 6 6 6 6 day 15 15 15 15 15 15 15 -1 1 2 30 31 32 year 1911 1912 1913 1975 2049 2050 2051 2001 2001 2001 2001 2001 2001 预期输出 1911.6.16 1912.6.16 1913.6.16 1975.6.16 2049.6.16 2050.6.16 2051.6.16 day超出[1…31] 2001.6.2 2001.6.3 2001.7.1 输入日期超界 day超出[1…31] 3
Test14 Test15 Test16 Test17 Test18 Test19 -1 1 2 11 12 13 15 15 15 15 15 15 2001 2001 2001 2001 2001 2001 Mouth超出[1…12] 2001.1.16 2001.2.16 2001.11.16 2001.12.16 Mouth超出[1…12] 4
实验3、黑盒测试:决策表法及测试用例设计
一、实验目的
1、掌握决策表的概念。
2、掌握决策表测试用例设计法。
二、实验内容
对三角问题运用健壮性边界条件法设计测试用例,并执行测试,撰写实验报告。
三角形问题:规定输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型(等边三角形、等腰三角形、一般三角形、构不成三角形),并在屏幕上输出。1<=a,b,c<=200。
三、实验步骤:
1)构造决策表
2)根据决策表设计测试用例,得到测试用例表。 3)执行测试,评价程序。
5
实验4、黑盒测试:因果图法及测试用例设计
一、实验目的
1、掌握因果图的概念。
2、掌握因果图测试用例设计法。
二、实验内容
有一个饮料自动售货机(处理单价为5角钱)的控制处理软件,它的软件规格说明如下:
若投入5角钱的硬币,按下“橙汁”或“啤酒”的按钮,则相应的饮料就送出来。若投入1元钱的硬币,同样也是按“橙汁”或“啤酒”的按钮,则自动售货机在送出相应饮料的同时退回5角钱的硬币。
用程序模拟该自动售货机(注:用屏幕输入、输出来模拟售货机的动作),然后用因果图法测试该程序,并撰写实验报告。
三、实验步骤:
1)分析原因与结果 2)画出因果图 3)转化为决策表
4)根据决策表设计测试用例,得到测试用例表 5)执行测试,填写软件缺陷报告
6
实验5、白盒测试:覆盖测试及测试用例设计
一、实验目的
1、掌握白盒测试的概念。 2、掌握逻辑覆盖法。
二、实验内容
2、编写一个求解一元二次方程的程序,运用逻辑覆盖法的六种覆盖标准设计测试用例,并执行测试,撰写实验报告。
三、实验步骤:
7
实验6、白盒测试:路径测试及测试用例设计
一、实验目的
1、掌握控制流图,独立路径,圈复杂度,程序基本路径集的概念。 2、掌握McCabe程序基本路径集确定方法。 3、掌握基本路径集测试法。
二、实验内容
程序int binsearch(int array[],int length,int key)实现折半查找的功能。数组array元素按升序排列,length为数组array的长度,key为要查找的值。
试用基本路径集测试法测试该程序,撰写实验报告。
三、实验步骤:
1)画出程序的流图(控制流程图)。 2)计算流图G的圈复杂度V(G)。
3)确定只包含独立路径的基本路径集。
4)根据上面的独立路径,设计测试用例,得到测试用例表。 5)执行测试,写出实验报告。
8
实验7、面向对象软件的测试:类方法的测试(选做)
一、实验目的
1、掌握类方法的测试方法。
2、掌握VS2005单元测试工具的使用。
二、VS2005单元测试工具的使用
我们以program类的add方法的测试为例说明VS2005单元测试工具的使用: class Program {
static void Main(string[] args) {
Program p = new Program(); int result=p.add(5,5);
double result1 = p.sqrt(5);
Console.WriteLine(\result is {0},{1}\ }
int add(int a,int b) {
return a + b; }
double sqrt(double a) {
return System.Math.Sqrt(5); } }
步骤如下:
1)打开VS2005,新建“Visual C# 控制台应用程序”项目,输入上述Program类。
9
2)在Program类的add方法旁单击右键,选择“创建单元测试”:
10
3)输出项目选择“创建新的Visual C# 测试项目”,然后单击“确定”:
11
4)输入项目的名称,然后单击“创建”:
5)得到:
? 应用工程ConsoleApplication对应的测试工程TestProject1 ? program对应的测试类ProgramTest
12
? add方法对应的测试方法addTest
13
6)加载测试用例:a=1,b=2,期望输出=3,如下图所示:
特别注意:将Assert.Inconclusive(\验证此测试方法的正确性。\这句话注释掉!!!!!!
14
7)复制addTest()方法,并将复制后的方法改名为addTest1(): 注意:将addTest()方法前面的
[DeploymentItem(\)] [TestMethod()]
也一起复制!!!
15
8)在addTest1()中加载第二个测试用例:a=4,b=5,期望输出=9:
16
9) 重复步骤 7),8)加载其它的测试用例。
10)执行测试:单击菜单“测试”-“启动选定的测试项目(不调试)”
11)得到测试结果:
17
[附]Assert类简介:
Assert类定义了一组方法用于检查给定的条件,关于Assert的成员,可以参考MSDN帮助文档,以下列出部分: AreEqual 测试指定的值是否相等;如果两个值不相等,则测试失败。 AreNotEqual 测试指定的值是否不相等;如果两个值相等,则测试失败。 AreSame 测试指定的对象是否都引用相同的对象;如果两个输入内容引用不同的对象,则测试失败。 AreNotSame 测试指定的对象是否引用不同的对象;如果两个输入内容引用相同的对象,则测试失败。 Fail 断言失败。 Inconclusive 表示无法证明为 true 或 false 的测试结果。 IsTrue 测试指定的条件是否为 true;如果该条件为 false,则测试失败。 IsFalse 测试指定的条件是否为 false;如果该条件为 true,则测试失败。 IsNull 测试指定的对象是否为 空引用(在 Visual Basic 中为 Nothing);如果它不为空,则测试失败。 IsNotNull 测试指定的对象是否为非空;如果它为空引用(在 Visual Basic
18
中为 Nothing),则测试失败。
三、实验任务(选择其中之一完成)
1、对于三角问题,设计一个类,其中包含方法 int TriangleType(int a,int b,int c),输入为三角形的三条边,输出为:0或1或2或3,其中:0代表参数不合法(小于0),1代表普通三角形,2代表等腰三角形,3代表等边三角形。
用VS2005单元测试工具测试该方法,测试用例通过弱健壮等价类测试用例设计法得到。
实验步骤:
1)弱健壮等价类测试用例设计法设计测试用例,得到测试用例表。
2)用VS2005单元测试工具生成对应的测试类,测试方法,加载测试用例。 3)执行测试,得到测试结果,填写软件缺陷报告。
2、对于工资计算问题(见实验5 任务1),设计一个类,其中包含方法 double SalaryCaculating(double t, double wph ),输入t代表工作时间,wph代表小时工资,输出为月工资。
用VS2005单元测试工具测试该方法,测试用例通过逻辑覆盖法中的判定覆盖标准得到。
实验步骤:
1)运用逻辑覆盖法中的判定覆盖标准设计测试用例,得到测试用例表。 2)用VS2005单元测试工具生成对应的测试类,测试方法,加载测试用例。 3)执行测试,得到测试结果,填写软件缺陷报告。
19
实验8、图形用户界面GUI测试:Winrunner的使用(选做)
一、实验目的
1、掌握线形脚本的概念。
2、掌握Winrunner如何GUI对象。 3、初步掌握Winrunner的使用
二、Winrunner的简单使用
1、重要概念: 1)GUI MAP文件:一般的Windows应用程序,通常是由窗口、按钮、菜单等组成,这些在WinRunner中通称为GUI对象。WR会通过学习这些GUI对象的属性来识别GUI对象。 WR把学来的这些GUI对象的属性(称为对象的物理描述)保存在GUI Map文件中。GUI Map文件包含了GUI对象的逻辑名和物理描述,逻辑名和物理描述一起作用,确保每个GUI对象有自身唯一的标识。在测试脚本中,WR使用逻辑名(Logic name) 表征对象。当执行测试时,WR使用GUI Map文件定位对象:先从GUI map文件中读取有关对象的描述,然后寻找有相同属性的对象。
2)TSL语言:The scripts you create with Mercury Interactive systems are written in Test Script Language (TSL). TSL is an enhanced, C-like programming language designed for testing.
有关TSL语言的详细说明参考winrunner帮助菜单中的TSL online reference
2、WinRunner的测试过程
WinRunner的测试流程分为以下六个阶段: ? 创建GUI Map:识别应用程序的GUI对象
? 创建测试:一般先通过录制得到原始脚本,再进行适当的编辑建立测试脚本。
? 调试测试:对测试脚本除错(debug) ? 执行测试 ? 查看测试结果 ? 报告发现的错误
3、 以windows自带计算器的加法功能的测试为例,说明winrunner的测试流程: 在测试之前,先在D盘新建一个文件夹CaculatorTest来保存后面生成的一些文件。
1) 打开计算器,启动winrunner(为了测试的顺利最好关闭其它无关的程序)。
2)创建计算器的GUI Map: A、通过菜单“Tools/GUI Map Editor”打开GUI Map Editor窗体:
20
B、通过菜单“File/close all ” 关闭其它的GUI map文件。
C、点击“learn”,然后按照提示点击“计算器”窗体,开始学习。
21
D、学习完成后,通过菜单“File/save”将学习好的文件保存到前面新建的CaculatorTest文件夹中。
E、关闭GUI Map Editor窗体。
3)录制脚本: A、通过菜单“File/new”新建空白测试。
B、单击“Record”按钮开始录制以下操作: 单击数字1→单击加号+→单击等号=
22
C、操作结束后单击“stop”按钮结束录制,得到原始脚本: # 计算器
set_window (\计算器\ button_press (\ button_press (\ button_press (\ button_press (\
4)编辑脚本以加载测试用例:1+2=3 (绿色底纹的为添加的脚本)
# 计算器
set_window (\计算器\ button_press (\ button_press (\ button_press (\ button_press (\
edit_get_text(\ actual=int(text); expect=3;
if(actual!=expect)
report_msg(\
5)复制上述脚本并加载其它测试用例:(绿色底纹的为添加的测试用例的脚本)
# 计算器
23
set_window (\计算器\ button_press (\ button_press (\ button_press (\ button_press (\
edit_get_text(\ actual=int(text); expect=3;
if(actual!=expect)
report_msg(\
# 计算器
set_window (\计算器\ button_press (\ button_press (\ button_press (\ button_press (\
edit_get_text(\ actual=int(text); expect=9;
if(actual!=expect)
report_msg(\
6)保存脚本:将修改好的脚本保存到前面新建的CaculatorTest文件夹
7)运行测试:点击“From Top”按钮运行测试,得到测试结果:
24
三、实验任务(选择其中之一完成)
1、对于三角问题,设计相应的GUI程序,用文本框接受输入和输出,输入为三角形的三条边,输出为:参数不合法、不能构成三角形、普通三角形、等腰三角形、等边三角形。
用winrunner测试该GUI程序,测试用例通过弱健壮等价类测试用例设计法得到。
实验步骤:
1)弱健壮等价类测试用例设计法设计测试用例,得到测试用例表。
2)用winrunner测试该GUI程序,得到测试结果,填写软件缺陷报告。
2、对于工资计算问题(见实验5 任务1),设计相应的GUI程序,用文本框接受输入和输出,输入为:工作时间,小时工资,输出为:月工资。
用winrunner测试该GUI程序,测试用例通过逻辑覆盖法中的判定覆盖标准得到。
实验步骤:同上
25
附1三角形问题源程序
#include
int a,b,c; while( 1 ){ }
while( 1 ){ }
while( 1 ){ }
printf(“请输入c:\\n”);scanf(\if(c<0||c>200) else
break;
printf(“输入的数据不在指定范围内,请重新输入.\\n”);
printf(“请输入b:\\n”);scanf(\if(b<0||b>200) else
break;
printf(“输入的数据不在指定范围内,请重新输入.\\n”);
printf(“请输入a:\\n”);scanf(\if(a<0||a>200) else
break;
printf(“输入的数据不在指定范围内,请重新输入.\\n”);
if (a+b<=c||a+c<=b||b+c<=a){
26
}
}
printf(\不能构成三角形:\
else if((a==b||a==c||b==c)&&!(a==b&&b==c&&a==c)){ }
else if(a==b&&b==c&&a==c){ } else return 0;
printf(\一般三角形:\printf(\等边三角形:\printf(\等腰三角形:\
27
正在阅读:
软件测试实验指导书03-07
工程结算审计的八种方法05-05
中国农田常见207种杂草图谱10-27
化学制水系统冲洗、水压试验作业指导书要点03-16
规范化合同管理与企业稳步发展的关系 档05-16
四年级语文下册第五单元导学案(语文s版)03-15
培养快乐孩子的八大秘诀07-17
第四章+社会主义改造理论12-09
力学(漆安慎 - 杜婵英)习题解答04-11
- 冀教版版五年级科学下册复习资料
- 微生物学复习提纲
- 2013—2014学年小学第二学期教研组工作总结
- 国有土地转让委托服务合同协议范本模板
- 我的固废说明书
- 企业管理诊断报告格式
- 东鼎雅苑施工组织设计
- 谈谈如何做好基层党支部书记工作
- 浮梁县环保局市级文明单位创建工作汇报
- 管理学基础知识
- 大学物理实验报告23 - PN结温度传感器特性1
- 计算机网络实践
- 酒桌上这四种情况下要坐牢,千万别不当回事……
- 国家康居示范工程建设技术要点
- 中国贴布行业市场调查研究报告(目录) - 图文
- 新课标下如何在高中物理教学中培养学生的创新能力初探
- 营养师冬季养生食谱每日一练(7月4日)
- 关注江西2017年第3期药品质量公告
- 建设海绵城市专题习题汇总
- 10万吨年环保净水剂建设项目报告书(2).pdf - 图文
- 指导书
- 软件测试
- 实验
- 综合实践活动教师的有效指导
- 同济大学城市规划专业历年考研真题
- 员工思想状况调查问卷
- 2013年英语真题
- 盘点14位乱搞男女关系的美国总统
- 灶户小学未成年人思想道德建设创新案例—雷锋精神伴我行
- 统计学原理作业及答案(完整)
- 四年级上册数学单元测试题-第5单元自测卷 - 人教新课标-精选教育
- 中考数学总复习 - 第八章 - 统计与概率 - 第节 - 数据的收集、整
- 元旦晚会策划书模板
- 土壤试验分析报告
- 北京万东数字胃肠机简介
- 充电电池知识
- 爱祖国、爱家乡主题班会
- 中医执业医师中医诊断学习题及答案:三焦辨证
- 河中石兽优质教学设计5 人教版1 - 图文
- 我县创建国家文明城市的可行性分析
- 北海职业学院毕业设计(论文)表格
- 2013-2014第一学期末九年级教学情分析
- 幼儿园卫生保健总结