当前位置: 首页 > news >正文

软件测评师教程 第9章 基于质量特性的测试与评价 笔记

第9章 基于质量特性的测试与评价 2025.05.09

9.1 功能性测试

功能性用于评估软件产品在指定条件下使用时,提供满足明确和隐含要求的功能的能力。
功能性测试包括:单个功能点测试业务流程测试主要场景测试
在功能测试中一般使用等价类划分法、边界值法、因果图法、判定表法、场景法等方法设计测试用例,

用例包括正常用例和异常用例,最后对设计好的用例逐项进行测试,检查产品是否达到用户要求的功能。
同时,可以将错误推测法、探索法、检查表法等基于经验的测试方法作为补充,以期发现更多的问题。

对功能性的测试可以从完备性正确性、适合性和功能的依从性四个子特性来开展。

9.1.1 完备性

功能完备性测试的目标是评价软件产品提供的功能覆盖所有的具体任务或用户目标程度

功能覆盖率是用于评价完备性的一个重要指标,它指的是软件产品实现规定的功能的比例

用数学方法可以表示为:X=1-A/B
A=缺少的功能数量
B=指定的功能数量

9.1.2 正确性

功能正确性测试的目标就是评估软件产品或系统提供具有所需精度正确结果的能力
功能正确性用数学方法可以表示为:X=1-A/B
A=功能不正确的数量
B=考虑的功能数量

9.1.3 适合性

功能适合性是指软件产品是否适合用户,也就是软件产品提供的功能是否是用户需求的功能
功能适合性测试其实包含了两个层面的内容,首先功能点应该是实现的,其次功能点是符合用户
需求的。
功能适合性用数学方法可以表示为:X=1-A/B
A=缺少或不正确的功能数量
B=规定的功能数量

9.1.4 功能性测试案例

9.2 性能效率测试

性能效率测试用于评估在指定条件使用的资源数量性能

这里的资源包括其他软件产品、系统的软件和硬件配置。
进行性能效率测试的目的包括获得系统的性能表现情况、发现并验证和修改系统影响性能的缺
陷、为系统性能优化提供数据参考。

对性能效率的测试可以从时间特性资源利用性容量性能效率的依从性四个子特性开展。

9.2.1 时间特性

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

响应时间指的是从用户发起一个请求到得到响应的整个过程经历的时间。

9.2.2 资源利用性

资源利用性测试的目标是评估产品或系统执行其功能时,所使用资源数量和类型满足需求的程度

9.2.3 容量

容量测试用于评估软件产品或系统参数的最大限量满足需求的程度。

包括使测试对象处理大量的数据,以确定是否达到了将使软件发生故障的极限。

大量数据包括大量并发用户数、数据库记录数等。

容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。

9.2.4 性能效率测试类型

1.基准测试

指测试环境确认以后,对业务模型中涉及的每种业务基准检测

目的是获取单用户执行时的各项性能指标,为多用户并发和混合场景的性能测试分析提供参考依据。

2.并发测试

是指并发不同数目的虚拟用户执行检查点操作

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

3.压力测试

测试系统在事先规定的某种饱和状态下,比如CPU处于75%利用率的情况下,系统是否还具备处理业务的能力,或者系统会发生什么样的状况,即在当前比较大的压力下系统能否承受得住

压力测试的目的是测试系统的稳定性

4.负载测试

通过在被测试系统上不断增加负荷,直到事先选定的性能指标(比如响应时间)变为不可接受或系统的某类资源使用己经达到饱和状态

负载测试方法实际就是一个不断加压,直到找到系统不可用临界点的过程。

5.稳定性测试

是指被测系统在特定硬件、软件、网络环境条件下,给系统加载一定业务压力,使系统运行一段比较长的时间,以此检测系统是否稳定

稳定性测试是概率性的测试,即使系统通过稳定性测试,也并不能保证在实际运行过程中不出现问题。

稳定性测试的测试时间和压力存在一定的关系。在无法保证测试时间时,可以通过增加压力进行弥补。

6.极限测试

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

7.场景测试

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

8.吞吐量测试

是指模拟系统真实的使用情景,每隔一定时间段(如5秒、10秒)并发不同数目的虚拟用户执行检查点操作,持续运行一段时间,计算每单位时间(秒、分、时、日)系统处理的能力(事务数7单位时间)。目的是计算系统的吞吐能力

9.2.5 性能效率测试案例

9.3 易用性测试

易用性测试是指在指定的使用周境中,测试产品或系统在有效性、效率和满意度特性方面,为
了指定的目标可为指定用户使用的程度。

对易用性的测试可以从可辨识性、易学性、易操作性、用户差错防御性、用户界面舒适性、易访问性和易用性的依从性七个子特性开展。

9.3.1 可辨识性

可辨识性测试的目标是测试用户能够辨识产品或系统是否适合其要求的程度。可以通过对产品
或系统的初步印象或与之相关的文档来辨识产品或系统的功能来进行测试。

评价指标

1.描述的完整性

是指产品说明或用户文档应充分完整地描述产品的使用场景。通过对产品说明或用户文档中描述的使用场景和实际产品中的使用场景进行比较来进行测试。

2.演示覆盖率

指有多少比例的任务具有让用户辨识其适合性的演示能力。

3.产品标识可辨识

是指产品的每一种元素(数据媒体、文件等)均应带有产品标识,若含有两种以上的元素,应附上标识号或标识文字。
4.入口点的自描述性

是指网站的引导页中能说明该网站目的的比例

9.3.2 易学性

学性测试的目标是用于评估在指定的使用周境中,产品或系统在有效性、抗风险和满意度
性方面为了学习使用该产品或系统这一指定的目标,可以为指定用户使用的程度。

对于易学性测试,可以评估软件的帮助系统和文档的有效性,以及评估用户要用多长时间才能学会如何使用某个功能。

可以通过以下方面进行测试。
1.帮助系统和文挡的完整性。

2.自动填充默认输入字段。
3.差错信息易理解性:是指差错信息中能够给出差错发生的原因以及解决方法。
4.用户界面的自解释性:是指呈现给用户的信息要素和步骤能够帮助新用户在没有先行学习、
训练或寻找外部帮助的情况下完成普通任务。

9.3.3 易操作性

易操作性测试的目标是评估产品或系统具有易于操作和控制的属性的程度。易操作性测试
即评估用户操作和控制软件的便利程度。

可以通过以下方面进行测试。
1.操作一致性

是指消息或功能的提示信息与操作一致,对功能的操作能够完成预期的任务。

2.消息的明确性

是指系统能给用户传达正确结果或指令消息。

3.功能的易定制性

是指为了使用方便,用户能够定制功能和操作规程的程度。

9.3.4 用户差错防御性

用户差错防御性测试的目标是评估系统预防用户犯错的程度

可以通过以下方面进行测试。
1.抵御误操作

是指系统可以防止用户操作和输入导致系统故障的能力。抵御误操作包括在执行具有严重后果的功能时,该操作应该是可以撤销的,或者有明显的警告和提示确认信息。

2.用户输入差错纠正

是指用户输入不符合条件的数据时,系统或软件是否能够进行判断,并进行提示或纠正。

9.3.5 用户界面舒适性

户界面舒适性测试的目标是评估用户界面提供令人愉悦和满意的交互的程度。

对于整体用户界面来说,可以选择不同的角度来增强用户界面的舒适性

例如:
界面中元素的文字、颜色等信息与功能一致:
前景与背景色搭配合理协调,没有过大反差:
界面中的元素大小和布局协调:
窗口比例适当,所有窗口按钮的位置和对齐方式要保持一致。

9.3.6 易访问性

易访问性测试的目标在于评估在指定的使用周境中,为了达到指定的目标,产品或系统被具有
最广泛的特征和能力的个体使用的程度

可以通过以下方面进行测试。
1.特殊群体的易访问性

特殊群体包括认知障碍、生理缺陷、听觉、语音障碍和视觉障碍的用户。能力范围包括与年龄相关的障碍,例如高龄人士昕觉能力障碍。
2.支持的语种的充分性

当系统或软件的语言与用户自己的母语不同时,验证系统或软件是否支持多语言切换功能。

9.4 可靠性测试

可靠性测试用于评估系统、产品或组件在指定条件下、指定时间内执行指定功能的程度。

对可靠性的测试可以从成熟性、可用性、容错性、易恢复性和可靠性的依从性五个子特性开展。

9.4.1 成熟性

成熟性测试的目标是评估系统、产品或组件在正常运行时满足可靠性要求的程度。

可以通过以下方面进行评价。
1.故障密度

根据需求文档、设计文档、操作手册等用户文档集中的功能列表针对每个功能编
写对应的测试用例,执行所有测试用例,收集和分析测试结果。依据测试结果,确定检测到的故
障数。故障密度=检测到的故障数目/产品规模。
2.故障修复率=修复的可靠性相关故障数/检测到的可靠性相关的故障数。
3.平均失效间隔时间(MTBF)=运行时间/该时间段内实际发生失效的次数。
4.周期失效率=在观察时间内检测到的失效数量/观察持续周期数。

9.4.2 可用性

可用性测试的目标是评估系统、产品或组件需要使用时能够进行操作和访问的程度

可以通过以下方面进行测试。
1.系统可用性:可定义为在计划的系统运行时间内,系统实际可用时间的比例。
2.平均岩机时间:可定义为失效发生时,系统不可用的时间,

9.4.3 容错性

容错性测试的目标是评估当存在硬件或者软件故障时,系统、产品或软件的运行符合预期的程
。容错性与发生运行故障或违反规定接口时产品或系统维持规定性能等级的能力有关。

可以通过以下方面进行测试。
1.避免失效率

可以定义为系统或软件能控制多少种故障模式(以测试用例为单位)以避免关
键或严重的失效。
2.组件的余度

是指为避免系统失效而安装余组件的比例。

9.4.4 易恢复性

恢复性测试的目标是评估发生中断或失效时,产品或系统能够恢复直接受影响的数据并重建
期望的系统状态的程度

可以通过以下方面进行测试和评价。
1.平均恢复时间:

可以定义为软件/系统从失效中恢复所需要的时间。用数学方法可以表示为:

Ai=由于第i次失效而重新启动,并恢复岩机的软件/系统所花费的总时间

n=发生失效的次数

2.数据备份完整性

测试系统的数据项是否能完整地定期进行备份。
3.数据恢复能力

查看需求文档、设计文档、操作手册等用户文档集中陈述的数据恢复的方式,对用户文档集中陈述的数据恢复的方式进行验证。

9.5 信息安全性测试

息安全性测试用于评估系统或产品保护信息和数据的程度,以使用户、其他产品或系统具有
与其授权等级一致的数据访问度。

对信息安全性的测试可以从保密性、完整性、抗抵赖性、可核查性、真实性和信息安全性的依从性共六个子特性来开展。

9.5.1 保密性

保密性测试的目标是评估产品或系统确保数据只有在被授权时才能被访问的程度。

可通过以下方面进行测试。
1.访问控制性:检查是否启用访问控制功能,依据安全策略和用户角色设置访问控制矩阵,控
制用户对信息或数据的访问。应用系统用户权限应遵循“最小权限原则”
2.数据加密正确性:是指按照需求规格说明书或者产品说明中的要求,实现数据项加/解密的
正确程度。

9.5.2 完整性

完整性测试的目标是评估系统、产品或组件防止未授权访问、纂改计算机程序或数据的程度。
可以通过数据完整性进行测试。

数据完整性是指系统防止因未授权访问而造成的数据破坏或纂改的程度,一般通过增加校验位的方式来验证。

9.5.3 抗抵赖性

抗抵赖性测试的目标是评估活动或事件发生后可以被证实且不可被否认的程度。

一般通过数字签名、安全审计方式来保证。

9.5.4 可核查性

可核查性测试的目标是评估实体的活动可以被唯一地追溯到该实体的程度。

测试的内容可包括查看系统是否对所有用户的重要事件进行安全审计,安全审计日志记录的覆盖程度,审计记录避免受到未预期的删除、修改或覆盖等。

可以通过以下方面进行测试。
1.用户审计跟踪的完整性

评估对用户访问系统或数据的审计跟踪的完整程度。
2.系统日志存储

评估系统日志存储在稳定存储器中的时间占所需存储时间的比例。
与抗抵赖性不同,可核查性考察的重点是追溯实体的程度。主要是启用安全审计功能后,覆盖
用户的多少和安全事件的程度等。

9.5.5 真实性

真实性测试的目标是评估对象或资源的身份标识能够被证实符合其声明的程度。
1.鉴别机制的充分性

系统提供的鉴别机制的数量是否满足规定的鉴别技术数量。系统应具备登录控制功能,对登录用户的身份进行标识和鉴别;用户的身份鉴别信息不易被冒用,且不能存在重复的用户身份标识。
2.鉴别规则符合性

系统的鉴别规则应与需求规格说明书或产品说明中规定的鉴别规则一致。

9.6 维护性测试

维护性测试用于评估产品或系统能够被预期的维护人员修改的有效性和效率的程度。

对维护性的测试可以从模块化、可重用性、易分析性、易修改性、易测试性和维护性的依从性六个子特性
开展。

9.6.1 模块化

模块化测试的目标是评估由多个独立组件组成的系统或计算机程序,其中一个组件的变更对其
他组件的影响大小的程度

模块间的耦合性越低,模块的独立性越强,相互间的影响也较小。

9.6.2 可重用性

可重用性测试的目标是评估资产能够被用于多个系统或其他资产建设的程度。可重用性可以通
过资产的可重用性、编码规则符合性来测试。
1.资产的可重用性

软件开发的全生存周期都有可以重用的价值,包括项目计划、架构设计、需求规格说明、源代码、用户文档、测试策略和测试用例等都是可以被重复利用的。
2.编码规则符合性

系统或软件的源代码应符合所要求的编码规则。特定系统的编码规则可包含有助于可重用、可追踪和简洁性的规则。

9.6.3 易分析性

易分析性测试的目标是评估预期的变更(变更产品或系统的一个或多个部分),对产品或系统
的影响、诊断产品的缺陷或失效原因、识别待修改部分的有效性和效率的程度。

1.日志完整性

日志记录系统的运行状况。测试时对需求文档、设计文档、操作手册等用户文档集中陈述的软件具备的日志记录功能进行验证,查看记录的异常信息是否易读、易于定位故障。
2.诊断功能有效性

运行过程中出现异常时,系统或软件应给出相应的提示信息,提示信息的内容应当易于理解。

9.6.4 易修改性

易修改性测试的目标是评价产品或系统可以被有效地、有效率地修改,且不会引入缺陷或降低
现有产品质量的程度。

可从扩充系统应用、软件版本更新方式、软件版本更新时的数据操作、系统参数配置、用户权限配置等方面进行验证。
1.扩充系统应用

查看需求文档、设计文档、操作手册等用户文档集中是否陈述软件支持自定义模块功能。
2.软件版本更新方式

验证用户文档集中陈述的软件升级方式,记录软件版本更新方式,验证软件版本更新后是否可以正常运行。
3.软件版本更新时的数据操作

查看需求文档、设计文档、操作手册等用户文档集中是否陈述软件版本更新时会涉及数据变动,若涉及应验证如何对数据进行更新,并记录数据的更新方式。
4.系统参数配置

查看需求文档、设计文档、操作手册等用户文档集中是否陈述软件支持系统参数配置。
5.用户权限配置

若系统或软件支持用户权限配置,应对用户文档集中陈述的用户权限配置功能进行验证,配置完成用户权限之后应验证是否配置成功。

9.6.5 易测试性

测试性测试的目标是评估能够为系统、产品或组件建立测试准则,并通过测试执行来确定测
试准则被满足的有效性和效率的程度。

可以通过以下方式进行测试:

查看需求文档、设计文档、操作手册等用户文档集中描述的功能项是否易于选择检测点编写
测试用例;

软件的功能或配置被修改后,验证是否可对修改之处进行测试。

9.7 兼容性测试

兼容性测试用于评估在共享相同的硬件或软件环境的条件下,产品、系统或组件能够与其他
品、系统或组件交换信息执行其所需的功能的程度。

对兼容性的测试可以从共存性、互操作性和兼容性的依从性三个子特性开展。

9.7.1 共存性

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

测试的内容可包括软件产品安装时与正在
运行的软件之间的共存性约束、与产品说明中指定的已安装软件之间的共存性约束,具体如下:

安装测试软件,验证测试软件和己安装组件是否均能成功安装和正确运行。

对产品说明列举出的与软件兼容的软件和不兼容的软件等进行测试,确保在同一个操作环境
下同时运行两个软件,对软件进行操作,查看CPU、进程等系统资源的使用情况。分别单独运行
一种软件,查看系统资源使用情况。比较两种情况的资源使用情况,是否存在异常。

两个软件在长时间共存的情况下是否运行正常,检查软件是否能够与其他软件正确协作,是
否能够正确地进行交互和共享信息。

测试与其他常用软件(如杀毒软件、办公软件等其他应用软件)一起使用,是否会造成其他
软件运行错误或本身不能正确实现功能。

9.7.2 互操作性

操作性测试的目标是评估两个或多个系统、产品或组件能够交换信息使用己交换的信息
程度。

测试内容包括产品说明和用户文档集中声明的数据格式是否可交换、数据传输的交换接口
是否已实现等。
1.数据格式可交换性

软件互操作性表现为软件之间共享并交换信息,以便能够互相协作共同
完成一项功能的能力。

2.数据传输的交换接口

在与其他软件进行通信时,对于规定的数据传输,交换接口的功能是
否能正确实现。

9.8 可移植性测试

可移植性测试用于评估系统、产品或组件能够从一种硬件、软件或者其他运行(或使用)环境
迁移到另一种环境的有效性和效率的程度。

对可移植性测试可以从适应性、易安装性、易替换性和可移植性的依从性四个子特性开展。

9.8.1 适应性

适应性测试的目标是评估产品或系统能够有效地、有效率地适应不同的或演变的硬件、软件或
者其他运行(或使用)环境的程度。
1.硬件环境的适应性

包括对于产品说明中指定的每一种硬件环境,软件均能成功安装和正确运行,包括但不限于:对系统中主要硬件部件进行测试,软件运行的最低配置和推荐配置要求,
针对辅助设备的适应性验证,针对板卡及配件的适应性验证。

2.系统软件环境的适应性

包括对于产品说明中指定的每一种软件环境均能成功安装和正确运行,包括但不限于:操作环境的适应性、数据库的适应性、浏览器的适应性、支撑软件的适应性。

9.8.2 易安装性

安装性测试的目标是评价在指定环境中,产品或系统能够成功地安装和/或卸载的有效性和效率的
程度。
1.软件安装

检查产品说明、安装手册等,看是否附在安装环境、安装过程的详细步骤,是否对需要注意的事项以及于动选择的配置和参数进行详细说明。
2.软件卸载

检查产品说明中是否指明软件卸载方法,例如采用卸载向导进行自动卸载或从控制面板
中的添加/删除中进行卸载或直接删除对应的文件夹。

9.8.3 易替换性

替换性测试的目标是评价在相同的环境中,产品能够替换另一个相同用途的指定软件产品的
程度。

测试内容包括但不限于测试安装文档中规定每一种重新安装是否能被覆盖,包括覆盖安装、
升级安装、卸载后重新安装等,在所描述的情况下,应能够成功重新安装软件。

9.9 依从性测试

依从性测试用于评估产品或系统遵循与功能性、性能效率、易用性、可靠性、信息安全性、维
护性、兼容性、可移植性等八个质量特性有关的标准、约定和法规以及类似规定的程度。

9.10 符合性测试

标准符合性测试是测量产品的功能和性能指标,与相关国家标准或行业标准所规定的功能和性
能等指标之间符合程度的测试活动。它区别于一般的测试,标准符合性测试的测试依据和测试规
程一定是国家标准或行业标准,而不是实验室自定义的或其他的有关文件。

9.10.1 先决条件

标准符合性测试前需要获得以下资源:
待测试软件产品;

用户文档集中包含的所有文档;
产品说明中所标识出的所有需求文档;

软件产品宣称符合的标准。

9.10.2 评价活动内容

评价活动内容
1.产品说明符合性评价。

2.用户文档集符合性评价。
3.软件产品符合性评价:

确定已获取的被评价产品的质量的功能性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性、可移植性,以及对使用质量的有效性、效率、满意度、抗风险、周境覆盖要求进行测试,由此产生测试文档集。

9.10.3 评价过程

评价过程
1.对软件产品及其产品说明和用户文档集实施符合性评价
1)产品说明评价2)用户文档集评价3)软件产品测试和评价

2.记录评价报告

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

9.10.4 评价报告

符合性评价报告应包含以下内容:
符合性评价报告唯一标识:
软件产品标识:
实施符合性评价的组织标识;
符合性报告日期:
执行评价的人员姓名;
评价完成日期以及测试完成日期;
用于进行测试的计算机系统;
使用的文档及其标识;
符合性评价活动汇总以及测试活动汇总;
符合性评价结果汇总以及测试结果汇总:
当评价过程中存在不符合项时,应在符合项清单中单独列出不符合要求的项:
·效果声明:测试结果和评价只与被测试和被评价项有关;
·复制声明:除非以完整报告的形式复制,否则未经评价实施组织书面批准不得部分复制符合

9.10.5 后续的符合性评价

在针对同一个软件产品进行再次符合性评价时,需要考虑之前的符合性评价,并在评价前检查本次被评价产品与前次被评价产品的差异,主要包括:
文档差异:产品说明、用户文档集等的差异;
软件产品差异:产品说明中说明的所有差异。

相关文章:

  • 量子物理:初步认识量子物理
  • hooks组件-useState
  • 前缀和题目:一维数组的动态和
  • 九(4).存在指针的引用,不存在引用的指针
  • RNN循环网络:给AI装上“记忆“(superior哥AI系列第5期)
  • YOLOV7改进之融合深浅下采样模块(DSD Module)和轻量特征融合模块(LFI Module)
  • ubuntu 添加应用到启动菜单
  • CppCon 2014 学习:Hardening Your Code
  • 【Python 进阶2】抽象方法和实例调用方法
  • FDR的定位原理
  • Spring 5 响应式编程:构建高性能全栈应用的关键
  • PID项目-记事本不显示下划线
  • 《软件项目管理》第二章(项目准备与启动)期末周复习总结笔记
  • 九(2).参数类型为引用结构体类型
  • ROS机器人和NPU的往事和新知-250602
  • PCA(K-L变换)人脸识别(python实现)
  • 用Python开启游戏开发之旅
  • 抠图P图秀v7.8.19
  • Mysql水平分表(基于Mycat)及常用分片规则
  • 学到新的日志方法mp
  • 基本网站建设/网络营销的营销策略
  • 珠宝行业网站建设/万网注册域名查询官方网站
  • 长沙做四维彩超玛丽亚m网站/惠州关键词排名优化
  • wordpress创建页面打不开/seo诊断工具
  • 广东专注网站建设企业/长春网络推广公司哪个好
  • 建个外国网站/广告宣传方式有哪些