软件测试

臧艳辉

目录

  • 1 走近软件测试
    • 1.1 走近软件测试
    • 1.2 一个软件测试工程师必备的专业技能和素质
    • 1.3 章节测验
  • 2 软件测试技术
    • 2.1 正确认识软件测试
    • 2.2 软件测试遵循的基本原则
    • 2.3 软件测试的分类
    • 2.4 软件测试的过程模型
    • 2.5 章节测验
  • 3 测试中缺陷的识别与描述
    • 3.1 初识软件缺陷
    • 3.2 全面解析软件缺陷
    • 3.3 有效的记录缺陷
    • 3.4 缺陷报告实例
    • 3.5 缺陷报告模板
  • 4 项目测试计划的制定
    • 4.1 一个项目完整的测试流程
    • 4.2 初识测试计划
    • 4.3 测试计划的基本机构和内容
    • 4.4 测试计划模板和案例
  • 5 初识软件测试用例
    • 5.1 什么是测试用例
    • 5.2 项目测试中设计测试用例的作用
    • 5.3 如何设计一个项目的测试用例
    • 5.4 在测试过程中测试用例怎样进行更新和维护
  • 6 使用等价类划分方法设计测试用例
    • 6.1 等价类划分法的基本思想
    • 6.2 进行等价类划分法的原则
    • 6.3 使用等价类划分法设计测试用例实例
  • 7 使用边界值分析法设计测试用例
    • 7.1 边界值分析法的基本思想
    • 7.2 如何确定边界
    • 7.3 测试知识储备
    • 7.4 使用边界值分析法设计测试用例实例
    • 7.5 项目中如何进行健壮性边界值测试
    • 7.6 等价类+边界值
    • 7.7 章节测试
  • 8 使用大纲法设计测试用例
    • 8.1 什么是大纲法
    • 8.2 项目中如何使用大纲法设计测试用例
  • 9 使用场景法设计测试用例
    • 9.1 什么是场景法
    • 9.2 项目中如何使用场景法设计测试用例
  • 10 因果图和决策表结合设计测试用例
    • 10.1 因果图法的介绍
    • 10.2 决策表的介绍
    • 10.3 项目中选用因果图法和决策表设计测试用例需考虑的问题
    • 10.4 使用因果图法和决策表设计测试用例
  • 11 功能测试
    • 11.1 什么是功能测试
    • 11.2 功能测试的主要内容及测试策略
    • 11.3 功能测试的方法汇总
    • 11.4 功能测试的经验及注意事项
  • 12 界面测试
    • 12.1 界面检查的通用原则
    • 12.2 具体的界面检查的举例
    • 12.3 设计界面测试用例
    • 12.4 界面测试标准总结
  • 13 软件的安装卸载测试
    • 13.1 软件的安装卸载测试
    • 13.2 软件的安装测试
    • 13.3 软件的运行测试
    • 13.4 软件的卸载的测试
  • 14 项目中如何使用进行有效的缺陷管理
    • 14.1 进行缺陷管理的目标是什么
    • 14.2 项目中缺陷管理的流程是怎样的
    • 14.3 缺陷的跟踪方法有哪些
  • 15 测试报告该如何撰写
    • 15.1 软件质量评估
    • 15.2 如何撰写测试报告
    • 15.3 如何写项目总结
    • 15.4 如何写个人测试总结
  • 16 集成测试
    • 16.1 初识集成测试
    • 16.2 集成测试方法
  • 17 白盒测试
    • 17.1 初识白盒测试
    • 17.2 白盒测试技术——逻辑驱动测试
    • 17.3 白盒测试技术——循环覆盖测试
    • 17.4 白盒测试技术——基本路径测
  • 18 软件测试技术及岗位需求介绍
    • 18.1 软件测试岗位需求
    • 18.2 软件测试技术介绍
    • 18.3 软件测试比赛内容
    • 18.4 软件测试岗位应聘简历撰写
项目中如何使用大纲法设计测试用例
  • 1 电子教材
  • 2 PPT
  • 3 实训任务

8.2  项目中如何使用大纲法设计测试用例

8.2.1  案例分析:购物中心商业街指南系统

本案例是一个购物中心商业街指南系统。使用方法如下:用户在如图8-2所示的界面上选择完专卖店的类型后,单击此页面上的“选择专卖店类型”,系统将进入如图8-3所示的界面。

单击“地图”按钮,系统进入如图8-4所示的界面。单击“帮助”按钮,系统进入如图8-5所示的界面。其他界面上的按钮功能与此类似,不再多述。

在本例中,购物中心的专卖店类型包括:鲜花类、礼品类、服装类。其中鲜花类的专卖店包括:鲜花店1、鲜花店2、鲜花店3;礼品类的专卖店包括:礼品店1、礼品店2、礼品店3;服装类的专卖店包括:服装店l、服装店2、服装店3

8-2 系统主菜单

8-3 专卖店界面

8-4 地图界面

8-5 帮助界面

8.2.2  测试内容

对该系统中有关购物者对系统的操作功能进行功能性测试。例如:在主菜单上,如果购物者单击列表中的专卖店种类,显示该类专卖店的清单;购物者单击“地图”按钮,显示商业街地图屏幕;购物者单击“帮助”按钮,显示帮助屏幕等。

8.2.3  如何进行测试

1)编写输入项。

用户对系统的输入选项如下:

1)  主菜单

Ø  购物者单击列表中的专卖店种类,显示该类专卖店的清单。

Ø  购物者单击“地图”按钮,显示商业街地图屏幕。

Ø  购物者单击“帮助”按钮,显示帮助屏幕。

2)  专卖店清单

Ø  购物者单击某专卖店名称,该专卖店的位置在商业街地图中高亮度显示。

Ø  购物者单击“主菜单”按钮,返回主菜单。

Ø  购物者单击“帮助”按钮,显示帮助屏幕。

3)  地图

Ø  购物者单击“打印”按钮,打印出商业街地图。

Ø  购物者单击“返回上一屏幕”按钮,显示前一个屏幕。

Ø  购物者“主菜单”按钮,返回主菜单。

Ø  购物者单击“帮助”按钮,显示帮助屏幕。

4)  帮助

Ø  购物者单击“返回上一屏幕”按钮,显示前一个屏幕。

Ø  购物者单击“主菜单”按钮,返回主菜单。

(2)根据输入项,重新组织输入信息。

通过上面的对购物中心商业街指南系统的简介,按照购物者的典型操作序列,重新组织输入信息即可创建一张表。该表以大纲为表现形式。方括号中包含了有关原始需求的条目,带数字的条目为上面输入选项的内容,带D的则是商业街的专卖店配置。

 

 

1主菜单

 

1.1 [1]购物者单击列表中的专卖店种类,显示该类专卖店的清单。

 

1.1.1[D]鲜花类(三家专卖店)

 

1.1.2[D]礼品类(三家专卖店)

 

1.1.3[D]服装类(三家专卖店〉

 

1.2[2]购物者单击“地图”按钮,显示商业街地图屏幕。

 

1.2.1[7]购物者单击“打印”按钮,打印出商业街地图。

 

1.2.2[8]购物者单击“返回上一屏幕”按钮,显示前一个屏幕。

 

1.2.3[9]购物者“主菜单”按钮,返回主菜单。

 

1.2.4[10]购物者单击“帮助”按钮,显示帮助屏幕。

 

1.2.4.1[11]购物者单击“返回上一屏幕”按钮,显示前一个屏幕。

 

1.2.4.2[12]购物者单击“主菜单”按钮,返回主菜单。

 

1.3[3]购物者单击“帮助”按钮,显示帮助屏幕。

 

1.3.1[11]购物者单击“返回上一屏幕”按钮,显示前一个屏幕。

 

1.3.2[12]购物者单击“主菜单”按钮,返回主菜单。

 

2专卖店清单

 

2.1[4]购物者选择某专卖店名称,单击“显示”按钮,该专卖店的位置在商业街地图中高亮度显示。

 

2.1.1[7]购物者单击“打印”按钮,打印出商业街地图。

 

2.1.2[8]购物者单击“返回上一屏幕”按钮,显示前一个屏幕。

 

2.1.3[9]购物者“主菜单”按钮,返回主菜单。

 

2.1.4[10]购物者单击“帮助”按钮,显示帮助屏幕。

 

2.2[5]购物者单击“主菜单”按钮,返回主菜单。

 

2.3[6]购物者单击“帮助”按钮,显示帮助屏幕。

 

3地图清单

 

3.1[7]购物者单击“打印”按钮,打印出商业街地图。

 

3.2[8]购物者单击“返回上一屏幕”按钮,显示前一个屏幕。

 

3.3[9]购物者“主菜单”按钮,返回主菜单。

 

3.4[10]购物者单击“帮助”按钮,显示帮助屏幕。

 

4帮助清单

 

4.1[11]购物者单击“返回上一屏幕”按钮,显示前一个屏幕。

 

4.2[12]购物者单击“主菜单”按钮,返回主菜单。

 

在大纲中,为表明不同的购物场景,地图和帮助功能在不同项中多次列出。例如,在主菜单和地图屏幕中分别可以激活帮助功能,但是其输出内容是不同的。

本大纲将主菜单与专卖店清单分为两个节点,当然也可以把专卖店清单的内容拷贝到主菜单的每个对应的专卖店种类之下,即把大纲项2下的所有子项拷贝到1.1.11.1.3下,变成1.1.1.11.1.1.2、…,这样做可以为每一种可能的用户输入组合设计一个测试用例,但同时会使大纲的长度急剧增长。为了简化并减少测试工作量,可以采用以上的大纲方法,按照等价类划分的原则,使用一个专卖店种类及相关的专卖店名称来执行大纲项2下面的内容。这时,必须考虑到工作量与风险之间的关系。

大纲仅仅是对需求或界面的描述,不同测试人员生成的大纲是不同的,但是其核心内容是一致的,目的在于列出用户操作,以产生覆盖所有相关内容的测试。

8.2.4  设计测试用例

本大纲共包含25个叶节点,每一个都可以产生一个相应的测试用例。下面是通过大纲导出的测试用例(表8-1),其中测试来源列表示大纲中的项,可以追溯到原始的用户需求。

                        表8-1 测试用例                                                                                    

 

用例编号

 
 

测试来源

 
 

输入

 
 

预期结果

 
 

测试结果(通过/不通过)

 
 

1

 
 

1.1.1

 
 

从主菜单中:选择“鲜花类”,单击“选择专卖店类型”

 
 

显示鲜花类专卖店清单屏幕,列出3个鲜花类专卖店

 

 

2

 
 

1.1.2

 
 

从主菜单中:选择“礼品类”单击“选择专卖店类型”

 
 

显示礼品类专卖店清单屏幕,列出3个礼品类专卖店

 

 

3

 
 

1.1.3

 
 

从主菜单中:选择“服装类”单击“选择专卖店类型”

 
 

显示服装类专卖店清单屏幕,列出3个服装类专卖店

 

 

9

 
 

1.2.1

 
 

从主菜单中:单击地图按钮

 
 

商业街地图显示在屏幕上

 

 

10

 
 

1.2.2

 
 

从主菜单中:单击“帮助”按钮

 
 

显示帮助界面的内容

 

 

11

 
 

1.2.3

 
 

从主菜单中:

 

1)单击“地图”按钮

 

2)单击“主菜单”按钮

 
 

1)商业街地图显示在屏幕上

 

2)返回到主菜单

 

 

12

 
 

1.2.4.1

 
 

从主菜单中:

 

1)单击“地图”按钮

 

2)单击“帮助”按钮

 

3)单击“返回上一屏幕”按钮

 
 

1)商业街地图显示在屏幕上

 

2)显示地图菜单帮助信息

 

3)返回到地图菜单

 

 

13

 
 

1.2.4.2

 
 

从主菜单中:

 

1)单击“地图”按钮

 

2)单击“帮助”按钮

 

3)单击“主菜单”按钮

 
 

1)商业街地图显示在屏幕上

 

2)显示地图菜单帮助信息

 

3)返回到主菜单

 

 

 

 

14

 
 

1.3.1

 
 

从主菜单中:

 

1)单击“帮助”按钮

 

2)单击“返回上一屏幕”按钮

 
 

显示地图菜单帮助信息

 

2)返回到主菜单

 

 

15

 
 

1.3.2

 
 

从主菜单中:

 

1)单击“帮助”按钮

 

2)单击“主菜单”按钮

 
 

1)显示地图菜单帮助信息

 

2)返回到主菜单

 

 

16

 
 

2.1.1

 
 

从主菜单中:

 

1)选择“女装”

 

2)选择专卖店清单中的第一个专卖店名称

 

3)单击“打印”按钮

 
 

1)显示专卖店清单屏幕列出3个女装专卖店

 

2)屏幕上显示指向该专卖店位置的地图3

 

)打印出该地图

 

 

17

 
 

2.1.2

 
 

从主菜单中:

 

1)选择“男装”

 

2)选择专卖店清单中的第2个专卖店名称

 

3)单击“返回上一屏幕”按钮

 
 

1)显示专卖店清单屏幕列出2个男装专卖店

 

2)屏幕上显示指向该专卖店位置的地图

 

3)返回列出2个男装专卖店的专卖店清单屏幕

 

 

18

 
 

2.1.3

 
 

从主菜单中:

 

1)选择“童装”

 

2)选择专卖店清单中的第4个专卖店名称

 

3)单击“主菜单”按钮

 
 

1)显示专卖店清单屏幕,列出4个童装专卖店

 

2)屏幕上显示指向该专卖店位置的地图

 

3)返回主菜单

 

 

19

 
 

2.1.4.1

 
 

从主菜单中:

 

1)选择“女鞋”

 

2)选择专卖店清单中的第一个专卖店名称

 

3)单击“帮助”按钮

 

4)单击“返回上一屏幕”按钮

 
 

1)显示专卖店清单屏幕,列出2个女鞋专卖店

 

2)屏幕上显示指向该专卖店位置的地图

 

3)显示地图菜单帮助信息

 

4)返回指向该专卖店的地图屏幕

 

 

20

 
 

2.1.4.2

 
 

从主菜单中:

 

1)选择“男鞋”

 

2)选择专卖店清单中的第一个专卖店名称

 

3)单击“帮助”按钮

 

4)单击“主菜单”按钮

 
 

1)显示专卖店清单屏幕,列出2个男鞋专卖店

 

2)屏幕上显示指向该专卖店位置的地图

 

3)显示地图菜单帮助信息

 

4)返回主菜单

 

 

21

 
 

2.2

 
 

从主菜单中:

 

1)选择“鲜花”

 

2)单击“主菜单”按钮

 
 

1)显示专卖店清单屏幕,列出一个鲜花专卖店

 

2)返回主菜单

 

 

22

 
 

2.3.1

 
 

从主菜单中:

 

1)选择“礼品”

 

2)单击“帮助”按钮

 

3)单击“返回上屏幕”按钮

 
 

1)显示专卖店清单屏幕,列出2个礼品专卖店

 

2)屏幕上显示专卖店清单菜单帮助信息

 

3)返回列出2个礼品专卖店的专卖店清单屏幕

 

小结

大纲法的核心要点是:

Ø  大纲是一种着眼于需求的方法。

Ø  大纲表示为树状结构,在根和每个叶节点之间存在唯一的路径。

Ø  大纲中的每条路径定义了一个特定的输入条件集合,用于定义测试用例。

Ø  树中叶子的数目或大纲中的路径给出了测试所有功能所需测试用例的大致数量。

大纲的形成是一个迭代的过程,初始列表从被划分为输入条件的需求中产生,并用需求编号实现需求的可跟踪性。大纲的每个后续版本都是对前者的细化,通过与开发人员和项目专家进行讨论,不断细化扩充大纲,解决需求中不够明确的问题。大纲是一个组织个人思维的好工具,它汇集了需求文档的核心内容,大纲的每项都可以根据测试人员的喜好以逻辑形式分组。