第19章 基于质量特性的测试技术

目录

一、主要内容

二、功能性测试

1、测试方法

2、用例

3、功能性测试的子特性

(1)完备性

(2)正确性

(3)适合性

三、性能效率测试

1、时间特性

(1)响应时间

(2)处理时间

(3)吞吐率

2、资源利用性

(1)服务器端

(2)数据库

3、容量

(1)对象处理大量的数据,确定是否达到了将使软件发生故障的极限

(2)给定时间内,能够持续处理的最大负载或工作量

4、性能效率测试类型

(1)基准测试

(2)并发测试

(3)压力测试

(4)负载测试

(5)稳定性测试

(6)极限测试

(7)场景测试

(8)吞吐量测试

四、易用性测试

1、可辨识性

2、易学性

3、易操作性

4、用户差错防御性

5、易访问性

五、可靠性测试

1、成熟性

2、可用性

3、容错性

4、易恢复性

六、信息安全性测试

1、保密性

2、完整性

3、抗抵赖性

4、可核查性

5、真实性

七、维护性测试

1、模块化

2、可重用化

3、易分析性

4、易修改性

5、易测试性

八、兼容性测试

1、共存性

(1)内容

(2)互操作性

九、可移植性测试

1、适用性

(1)硬件环境的适应性

(2)系统软件环境的适应性

2、易安装性

3、易替换性

十、依从性测试

十一、符合性测试

1、标准符合性测试

2、先决条件

3、评价活动内容

4、评价过程

(1)对软件产品及其产品说明和用户文档集实施符合性评价

(2)记录评价报告

5、评价报告

(1)符合性评价报告的内容

6、后续的符合性评价

(1)前、后两次评价产品的差异


一、主要内容

1、功能性测试
2、性能效率测试
3、易用性测试
4、可靠性测试
5、信息安全性测试
6、维护性测试
7、兼容性测试
8、可移植性测试
9、依存性测试
10、符合性测试

二、功能性测试

功能性是指软件产品在指定条件下使用时,软件所实现的功能达到其设计规范和满足用户需求的程度。
黑盒测试技术主要是针对功能的测试,也叫基于规格说明书的测试技术。

1、测试方法

  • 等价类
  • 边界值法
  • 因果图法
  • 判定表法
  • 场景法

2、用例

  • 正常用例
    • 检查软件功能是否正常
  • 异常用例
    • 检查软件对于错误的处理

3、功能性测试的子特性

(1)完备性

功能集对指定的任务和用户目标的覆盖程度。
提供的整体功能是否完善
  • X=1-A/B
  • 功能覆盖率X:软件实际功能覆盖文档中所有功能的数量,除以需求规格说明书或其他技术说明书中有关软件功能需求在软件中要被完整实现的功能数
  • A:缺少的功能数(在系统中未实现的功能数)
  • B:指定的功能数(需求规格或及说明中要求实现的功能数)

(2)正确性

产品或系统提供具有所需精度的正确结果的程度。
用于测量软件提供准确数据的能力,验证软件产品提供与所需精度相符的结果或效果的能力。
提供的功能是否正确。
  • X=1-A/B
  • X:满足精度准确性要求的结果的总数量,除以要求功能的总数量
  • A:不正确的功能的数量
  • B:需要的功能的总数量

(3)适合性

功能适合性主要指满足用户适用要求的程度,也就是软件产品提供的功能是否是需方或用户需要的功能。
提供的个体功能是否完善
  • 指软件功能促使指定的任务和目标实现的程度。
  • X=1-A/B
  • X=适合用户需求的功能数量,除以指定功能的总数量
  • A:不正确、缺少的功能的数量
  • B:指定的功能数(需求规格或及说明中要求实现的功能数)

三、性能效率测试

主要关注软件产品的时间特性和资源特性。评估在指定条件下面使用资源的性能情况,包括时间特性、资源利用率等。

1、时间特性

评估产品或系统在特定条件下执行其功能时,其响应时间、处理时间及吞吐率满足需求的程度。
时间效率反映与运行速度相关的性能。

(1)响应时间

  • 从用户发起一个请求开始到服务器完成对请求的处理并返回处理结果所经历的时间

(2)处理时间

  • 系统处理任务所需要的时间

(3)吞吐率

  • 单位时间内完成任务的数量

2、资源利用性

评估产品或系统在特定条件下执行其功能时,所使用资源数量和类型满足需求的程度。
资源利用性主要考察系统所采用的各种资源的利用程度。资源并不仅仅指运行系统的硬件,而是指支持整个系统运行程序的一切软/硬件平台。

(1)服务器端

  • CPU、内存、磁盘、输入输出效率、带宽

(2)数据库

  • 缓冲区、命中率

3、容量

指产品或系统参数的最大限量满足需求的程度。
容量主要反映系统能够承受的最大并发用户数、最大的请求极限,以及系统可能存在的最大事务吞吐量、最大数据容量和数据处理容量,以及在何种极端的情况下,系统出现缓冲区溢出、访问超时等问题。

(1)对象处理大量的数据,确定是否达到了将使软件发生故障的极限

  • 大量并发用户数
  • 数据库记录数

(2)给定时间内,能够持续处理的最大负载或工作量

  • 并发
  • 最大文件长度
  • 最大数据库记录数

4、性能效率测试类型

(1)基准测试

  • 指此时环境确认以后对业务模型中涉及到的每种业务做基准性的测试
  • 目的是获取单用户执行时的各项性能指标,为多用户并发和混合场景的性能测试分析提供参考依据。

(2)并发测试

  • 指并发不同数目的虚拟用户执行检查点操作。
  • 目的是对检查点进行压力测试,预测系统投入使用后在检查点能够承受的用户压力情况,并根据相应的响应时间和各项资源使用情况分析、确定系统存在的性能瓶颈,为系统的优化和调整提供依据。

(3)压力测试

  • 测试系统在事先规定的某种饱和状态下,系统是否还具备处理业务的能力,或者系统会出现什么样的状况。
  • 目的是测试系统的稳定性。

(4)负载测试

  • 通过在被测试系统上下不断增加负荷,直到事先选定的性能指标,变为不可接受或系统的某类资源使用已经达到饱和状态。
  • 负载测试方法实际就是一个不断加压,直到找到系统不可用临界点的过程。

(5)稳定性测试

  • 指被测系统在特定硬件、软件、网络环条件下,给系统加载一定业务压力,是系统运行一段比较长的时间,以此检测系统是否稳定。
  • 目的是提供给予系统一定的业务量,检测系统在一段时间内是否能够维持稳定性。

(6)极限测试

  • 在过量用户下的压力测试。
  • 目的是确定系统的极限并发用户数。

(7)场景测试

  • 通过对系统体系架构和功能模块的分析以及系统用户的分布和使用频率的分析,来构造系统综合场景的测试模型,模拟不同用户执行不同操作,最大限度模拟系统真实场景,使用户预知系统投入使用后的真实性能水平,从而对系统做出相应的优化及调整,避免实际情况中出现系统长时间不响应及崩溃的情况。

(8)吞吐量测试

  • 是指模拟系统真实的使用情景,每隔一定时间段并发不同数目的虚拟用户执行检查点操作,持续运行一段时间,计算每单位时间系统处理的能力。
  • 目的是计算系统的吞吐能力。

四、易用性测试

主要从用户的角度考虑软件产品被理解、学习、使用和吸引用户的能力。

1、可辨识性

评价用户能够辨识产品是否符合其要求的程度。
  • 描述的完整性
    • 产品说明、用户文档等充分完整的描述了产品使用的场景,用户可以通过场景的理解和说明书中的描述进行对比
  • 演示覆盖率
  • 产品标识可辨识
  • 入口点的自描述性

2、易学性

评估帮助用户能自行学习的程度。
  • 帮助系统和文档的完整性
  • 自动填充默认输入字段
  • 差错信息易理解性
  • 用户界面的自解释性

3、易操作性

系统易操作的程度。
  • 操作一致性
  • 消息的明确性
  • 功能的易定制性

4、用户差错防御性

评估系统预防用户犯错的程度。
  • 抵御误操作
  • 用户输入差错纠正
  • 用户界面舒适性

5、易访问性

  • 特殊群体的易访问性
    • 残疾人、有缺陷的人能提供产品使用的有效途径或手段
    • 正常人在特定环境下对于软件或系统的易操作性
  • 支持的语种的充分性

五、可靠性测试

在规定的时间和条件下,软件所能维持其正常的功能操作、性能水平的程度/概率。
如成熟性越高,可靠性就越高;用MTTF (平均失效前时间) 或MTBF(平均故障间隔时间)来衡量可靠性。

1、成熟性

软件能很好的处理内部错误,不会发生异常的程度。
  • 故障密度
  • 故障修复率
  • 平均失效间隔时间(MTBF)
  • 周期失效率:观察时时间内发生的故障总数除以周期数

2、可用性

评估软件产品或系统在需要使用时可进行的访问和操作的程度。
  • 系统可用性
    • 在计划使用的时间内,实际可用的时间
  • 平均宕机时间
    • 在周期内,系统不可用的时间

3、容错性

软件或硬件在发生故障时,产品运行符合预期的的程度。
在注册输入框输入超过限制时,不会出现页面异常,而是出现友好提示。
  • 避免失效率
    • 为系统或软件控制多种故障模式,以避免关键和严重的失效。
  • 组件的冗余度
    • 为了避免系统失效而安装冗余组件的比例情况。

4、易恢复性

评估系统出现异常后能否恢复、多久能恢复、能恢复到什么程度。
  • 平均恢复时间 
  • 数据备份完整性
  • 数据恢复能力

六、信息安全性测试

评估系统产品或软件,保护信息和数据的程度,以使用户或者其他产品期的系统具有授权等级一致性数据的访问程度。

1、保密性

保证数据不会被泄露。如加密存储、加密传输的程度。
  • 访问控制性
  • 数据加密正确性

2、完整性

保证数据不被破坏,防篡改,防丢失的程度。

3、抗抵赖性

已经发生的操作,不可否认的程度。

4、可核查性

发生过的操作,可复查的程度。
  • 用户审计跟踪的完整性
  • 系统日志存储

5、真实性

使用者身份可证明的程度。
  • 鉴别机制的充分性
  • 鉴别规则的符合性

七、维护性测试

当一个软件投入运行应用后,需求发生变化、环境改变或软件发生错误时,进行相应修改所做努力的程度。

1、模块化

2、可重用化

  • 资产的可重用性
  • 编码规则符合性

3、易分析性

  • 日志完整性
  • 诊断功能有效性

4、易修改性

评价产品是否能被有效的修改且不会引入新的缺陷,降低产品质量的程度。
  • 扩充系统应用
  • 软件版本更新方式
  • 软件版本更新时的数据操作
  • 系统参数配置
  • 用户权限配置

5、易测试性

八、兼容性测试

同时共享相同的硬件或软件环境时,系统或组件可以与其他系统或组件交换信息,以及执行其所需的功能的程度。

1、共存性

共存性指在与其他产品共享通用的环境和资源的条件下,产品能够有效执行其所需的功能并且不会对其他产品造成负面影响的程度。

(1)内容

(2)互操作性

两个或两个以上的系统、产品或部件可以交换信息,并使用已经交换的信息的程度,涉及API和文件格式等,如word可在不同的打印机上进行打印。
  • 数据格式可交换性
  • 数据传输的交换接口

九、可移植性测试

软件从一个计算机系统或环境移植到另一个系统或环境的容易程度,或者是一个系统和外部条件共同工作的容易程度。

1、适用性

软件产品无需采用特别手段就可以适应不同指定环境的能力。

(1)硬件环境的适应性

  • 对系统中的主要硬件部件进行测试、验证
  • 软件运行的最低配置和推荐配置要求
  • 针对辅助设备的适用性验证
  • 针对板卡及配件的适应性验证

(2)系统软件环境的适应性

  • 操作环境的适应性
  • 数据库的适应性
  • 浏览器的适应性
  • 支撑软件的适应性

2、易安装性

软件产品在指定环境中被安装的能力。
  • 软件安装
  • 软件卸载

3、易替换性

软件产品在同样环境下,替代一个相同用途的指定软件产品的能力。
  • 验证覆盖安装
  • 验证安装程序能否从“断点”继续安装
  • 验证升级安装,修复软件
  • 验证卸载后重新安装

十、依从性测试

评估产品或系统遵循八个质量特性有关的标准、约定和法规以及类似规定的程度

十一、符合性测试

1、标准符合性测试

  • 测试对象是否符合其相关的标准

2、先决条件

  • 待测试软件产品
  • 用户文档集中包含的所有文档
  • 产品说明中所标识出的所有需求文档
  • 软件产品宣称符合的标准

3、评价活动内容

  • 产品说明符合性评价
  • 用户文档集符合性评价
  • 软件产品符合性评价

4、评价过程

(1)对软件产品及其产品说明和用户文档集实施符合性评价

  • 产品说明评价
  • 用户文档集评价
  • 软件产品测试和评价

(2)记录评价报告

  • 将评价结果记录在符合性评价报告中

5、评价报告

(1)符合性评价报告的内容

  • 符合性评价报告唯一标识
  • 软件产品标识
  • 实施符合性评价的组织标识
  • 符合性报告日期
  • 执行评价的人员姓名
  • 评价完成日期以及测试完成日期
  • 用于金星村二十的计算机系统
  • 使用的文档及标识
  • 符合性评价活动汇总以及测试活动汇总
  • 符合性评价结果汇总以及测试结果汇总
  • 当评价过程中存在不符合项时,应在符合项清单中单独列出不符合要求的项
  • 效果声明
  • 复制声明

6、后续的符合性评价

(1)前、后两次评价产品的差异

  • 文档差异
  • 软件产品差异
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值