软件测试与质量保证期末复习资料整理

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

复习提纲

第一部分软件测试概述

1. 软件测试的背景

1.1 软件危机与软件质量

软件质量保证SQA,软件测试ST;

1.2 软件缺陷(分类,来源,累积和放大效应)

●常见的软件缺陷:

1.软件没有达到规格说明书表明的功能

2.软件出现了规格说明书指明不会出现的问题

3.软件没有达到规格说明书虽未指明,但应该达到的功能

4.软件功能超出规格说明书指明的范围

5.软件测试人员或者用户认为软件难以理解、不易使用、运行速度慢。

●原因:

1.软件的需求规格说明书;

2.软件的设计;

3.代码的错误

●累积和放大效应:前期的软件缺陷会在后期逐步扩大

1.3 软件测试的意义

为了发现软件缺陷,软件测试必不可少;开销占总成本的30%~50%;

2. 软件测试的含义

2.1 什么是软件测试

是为了发现错误而执行程序的过程。

2.2 软件测试的目的

发现问题;

对质量或可接受性做出判断;

2.3 软件测试的对象

1.需求分析

2.概要设计

3.详细设计

4.编码

2.4 测试≠调试

测试→发现错误→调试;这是一个交叉循环的过程;

测试是一种检验,有一套完整的理论,不需要了解设计细节,有非程序设计者完成,且测试的设计和执行能够自动化;

2.5 软件测试的特征

●风险性——彻底测试程序是不可能的;

●不修复原则——并非所有软件缺陷都需要修复;

●群集现象——错误的集中;

●寄生虫性——找到缺陷越多,残存的缺陷越多

3. 软件测试的过程

3.1 软件测试的生命周期

需求规格说明→设计→编码→测试→缺陷分类→缺陷隔离→缺陷解决

3.2 软件测试的步骤

1. 制定测试计划

2. 设计测试用例和测试过程

3. 运行测试用例(核心)

4. 评估测试结果

3.3 测试用例=输入+预期输出

3.4 通过维恩图理解测试用例——相交的地方尽可能大

3.5 测试用例的设计

–3.5.1 功能性测试(黑盒测试)

●依据于软件的规格说明;

●与软件的具体实现无关;

●优:并行进行,测试用例与实现的改变无关;

●缺:用例冗余度大;会有漏洞,不能发现多余缺陷;

–3.5.2 结构性测试(白盒测试)

●依据于程序实现;

●利用程序内部的逻辑结构;

●优:具有覆盖率指标;

●缺:不能发现遗漏缺陷;

4.错误与缺陷分类

●以出现相应错误的开发阶段来划分;

●以相应失效产生的后果来划分;

●以解决难度来划分;

●以不解决会产生的风险来划分

5.软件测试的级别

1.单元测试——详细设计信息,白盒测试为主;

2.集成测试——概要设计信息,模块的组合测试;

3.系统测试——软件需求;

4.确认测试——依照需求规格说明书;

5.验收测试——用户参与,黑盒测试;

6.软件测试的分类

●静态测试——不运行被测试程序;

●动态测试——运行被测试的程序;

●自动测试——利用自动化测试工具;

●人工测试——人工走查和代码审查;

第二部分黑盒测试

1. 边界值测试 (书:第5章)

•边界值分析(依据,含义,方法)

●含义:针对各种边界情况设计测试用例;

●依据:大量的错误是发生在输入或输出范围的边界上;

●方法:以基于但却像和输入空间的边界值分析,设有n个输入变量,则对应有4n+1

个测试用例。

●局限性:只适用于变量之间没有依赖的情况;不适用于布尔变量;

•健壮性测试

●含义:例外情况时的系统表现;n个变量对应6n+1个测试用例;

•最坏情况测试

●用例为边界值集合的笛卡儿积(5n个测试用例)

•健壮最坏情况测试——7n个测试用例

•特殊值测试——主观性和有效性

•随机测试——使用随机数生成器,直到每种输出至少出现一次;

2. 等价类测试 (书:第6章)

•等价类测试的思想

⏹依据:集合的划分,无冗余(不代表测试用例不冗余),完备性;

⏹基本思想:①划分等价类;②从中选取测试用例,以覆盖所有的等价类;

⏹关键:如何划分等价类;

⏹特点:典型的黑盒测试方法

•有效/无效等价类

●有效等价类:合理的输入数据,是否实现了预期的功能;

●无效等价类:无意义的输入数据,检验程序对于无效数据的处理;

•强/弱,健壮/一般等价类测试

●弱一般等价类:单缺陷假设,不考虑无效值,不完备

●强一般等价类:多缺陷假设,不考虑无效值,不完备

●弱健壮等价类:单缺陷假设,考虑无效值,不完备;

●强健壮等价类:多缺陷假设,考虑无效值,完备;

•基于输入/输出的等价类测试

•等价类测试的经验

•根据输入条件,划分等价类的原则

●如果确知以划分的等价类中的各元素在程序中的处理方式不同,则应进一步划分成

更小的等价类。

•等价类测试的步骤(案例)

⏹建立等价类表;

⏹生成测试用例,规定一个唯一的编号;

⏹对有效等价类: 用一个测试用例覆盖尽可能多;

⏹对无效等价类: 每个测试用例只覆盖一个;

•不适合情况

●输入条件之间存在依赖关系;

●由多个输入条件的取值组合,决定是否执行某操作;

相关文档
最新文档