项目管理【74】 | 信息系统综合测试与管理

软件测试是与软件开发紧密相关的一系列有计划、系统性的活动,软件测试也需要测试模型去指导实践。由于软件开发与软件测试之间的紧密关系,可根据不同的开发模型,引申出对应的测试模型。

 

1、软件测试模型有:V模型、W模型、H模型、X模型、前置测试模型。测试所遵循的原则是“尽早地和不断地进行软件测试”。

2、V模型的优缺点:

优点:

(1)将复杂的测试工作按阶段划分为各个小阶段来实现

(2)从多角度测试系统找出更多的缺陷

缺点:

(1)软件测试容易误导为软件开发的最后一个阶段

(2)需求、设计阶段产生的问题不能很早发现

(3)质量控制和测试效率无高效发挥

3、W模型的优缺点:(对V的改进)

优点:

(1)测试和开发同步进行,有利尽早发现问题

(2)增加非程序角度测试系统的思想

(3)测试准备及设计工作提前,提高测试质量和效率

缺点:

(1)把软件开发视为需求、设计、编码等一系列的串行活动

(2)开发和测试保持一种线性的前后关系

(3)无法支持迭代、自发性以及变更调整

4、H模型的优缺点:(对W和V的改进)

优点:

(1)将测试从开发中独立出来,利于研究更深的测试方法

(2)同时测试多个项目时,可对测试技术重复利用

(3)高效调整测试人员

(4)缺陷修复时不受项目组内部人员限制

缺点:

(1)独立的测试组对系统认识不够深入

(2)影响测试质量及测试效率

5、X模型的优缺点:(对V模型的改进)

优点:

(1)强调单元测试及集成测试的重要性

(2)引入探索性测试使测试模型与现实更接近

(3)缺陷修复时不受项目组内部人员限制

缺点:

(1)只强调测试过程中的部分内容

(2)没有对需求测试、验收测试等内容进行说明

6、前置测试模型:将测试与开发紧密结合,认识到验收测试中包含的3个要素:基于测试的需求、验收标准、验收测试计划。前置测试模型用较低的成本来及早发现错误,并且充分强调了测试对确保系统的高质量的重要意义。

7、按照开发阶段,将软件测试类型分为:单元测试、集成测试、系统测试、验收测试。

单元测试内容:(最小单元,即程序模块)

(1)单元功能测试

(2)单元接口测试

(3)单元局部数据结构测试

(4)单元中重要的执行路径测试

(5)单元的各类错误处理路径测试

(5)单元边界条件测试

集成测试内容:(子系统组装测试、联合测试)

(1)模块间接口测试

(2)模块间数据传递

(3)全局数据结构测试

系统测试内容:(完整逼真模拟)

(1)从用户角度对系统做功能性的验证

(2)非功能性的验证,如压力、安全性、容错等

验收测试内容:(交付测试、发布测试、确认测试)包括易用性、兼容性、安装、文档等测试

(1)对整个系统的测试与评审

(2)根据验收通过准则分析测试结果

(3)决定是否接收系统及测试评价

8、按照测试实施组织,将测试类型分为:开发方测试、用户测试、第三方测试

开发环境测试内容:验证测试,α测试

(1)由内部的用户(不能由程序员或测试员)进行的受控测试

(2)证实软件满足规定的需求

(3)注重产品的界面和特色

用户环境测试内容:β测试,切记,用户测试≠验收测试

(1)由最终用户在客户场所进行验证

(2)不受开发者控制

(3)注重产品的支持性

第三方测试内容:需求分析审查、设计审查、代码审查、单元测试、功能测试、性能测试、并发测试、健壮性测试等

(1)介于开发方和用户方间第三方组织的测试

(2)保证测试工作的客观性

(3)评审需求、设计、用户类文档

(4)单元测试、功能测试、性能测试等

9、按照测试技术分类:黑盒测试、白盒测试、灰盒测试

黑盒测试内容:(功能测试)

(1)对界面测试

(2)对功能测试

(3)从用户角度出发

白盒测试内容:(结构测试)

(1)检查所有结构及路径是否正确

(2)检查软件内部动作是否按规定进行

灰盒测试内容:

(1)关注输出对于输入的正常性

(2)关注内部表现

(3)介于黑盒和白盒之间

10、按测试执行方式分类:静态测试(代码审查、静态结构分析、代码质量度量)、动态测试(编写测试用例、执行程序、分析程序的输出结果)

11、按测试对象分类:功能测试、界面测试、流程测试、接口测试、安装测试、文档测试、源代码测试、性能测试(负载、压力、稳定性、并发、大数据量)、数据库测试、网络测试。

12、文档测试分为:非交付用户的文档测试(需求文档、测试文档)和交付用户的文档测试(需求文档、用户手册、安装手册)。用户文档测试主要从读者群、术语、正确性、完整性、一致性、易用性、图表与界面截图、样例和示例、语言、印刷和包装几方面测试。

13、两个公式:

平均并发用户数:C=NL/T,其中N是登录用户数,L是会话平均长度,T是考察时长

并发用户峰值数:C’≈3

一般情况下,把每天访问用户数的10%作为平均的并发用户数。

14、按照质量属性分类:容错性测试、兼容性测试、安全性测试、可靠性测试、可用性测试、维护性测试、可移植性测试、易用性测试。

兼容性测试分为软件兼容性、硬件兼容性、数据兼容性,软件又分为操作系统兼容、浏览器兼容、分辨率兼容、数据库兼容、与其他软件兼容性

15、软件维护分为三大类:

(1)纠正性维护。纠正软件存在的错误

(2)适应性维护。为适应包部环境对软件做出修改

(3)完善性维护。提升性能或扩大功能

15、按照测试地域分类:本地化测试、国际化测试

16、黑盒测试试图发现以下几类错误:

(1)是否有不正确或遗漏了的功能

(2)接口上能否正确的接受输入,能否产生正确的输出

(3)访问外部信息是否有错

(4)性能是否满足要求

(5)界面是否错误或不美观

(6)初始化或终止错误

17、黑盒测试的优点:

(1)比较简单,不需要了解程序内部的代码及实现

(2)与软件的内部实现无关

(3)从用户角度出发,能很容易地知道用户会用到哪些功能和遇到的问题

(4)基于软件开发文档,所以能知道软件实现了文档中的哪些功能

(5)在做软件自动化测试时较方便

缺点:

(1)不可能覆盖所有代码,覆盖率只能达到30%左右

(2)自动化测试的复用性较低

18、黑盒测试的用例设计方法:测试区域确定法(等价类划分法、边界值分析法)、组合覆盖法(全组合覆盖法、成对组合覆盖法、正交实验设计法、数据覆盖法)、逻辑推断法(因果图法、判定表法、大纲法)、业务路径覆盖法(场景分析法、功能图法)

19、白盒测试法必须遵循的几条原则:

(1)保证一个模块中的所有独立路径至少被执行一次

(2)所有逻辑值均需测试真和假两种情况

(3)检查程序的内部数据结构,保证其有效性

(4)在上下边界及可操作范围内运行所有循环

20、白盒测试方法分类:静态白盒测试、动态白盒测试

21、测试管理内容包括:

(1)测试目标的明确,进行测试计划及过程监控准则的制订

(2)测试团队搭建和测试人员管理

(3)测试实施过程的监控,包括测试计划执行的跟踪和测试人员的工作安排等内容

(4)测试风险的评估和风险的应对策略

(5)测试外部的沟通协调和测试问题的确认处理

(6)测试资产、测试产品的统一管理

(7)测试规范的制定

(8)测试绩效考核的制定与考评

22、测试监控管理的目的是为测试活动提供反馈信息和可视性。测试监控的内容包括:

(1)测试用例执行的进度:=已执行数目/总数目——成功率

(2)缺陷的存活时间:=缺陷从open到closed的顺序——效率

(3)缺陷的趋势分析:按时间顺序统计缺陷数量的分布——趋势

(4)缺陷分布密度:对应于一项需求的总缺陷数/对应于该项需求的测试用例总数

(5)缺陷修改质量:每次修改后发现的缺陷数量(包括重现的缺陷和由修改引起的新缺陷)

注:测试过程中的配置管理不仅包括搭建满足要求的测试环境,还包括获取正确的测试、发布版本。

23、测试过程的风险主要包括:

(1)需求风险:需求理解不准确、需求变更,导致测试方法错误

(2)测试用例风险:用例设计不完整,忽略了边界、异常等

(3)缺陷风险:某些缺陷偶发,难以重现

(4)代码质量风险:代码质量太差,缺陷多,容易测试遗漏

(5)测试环境风险:测试环境和生产环境不完全一致导致测试误差

(6)测试技术风险:项目存在技术难度,测试能力和水平低

(7)回归测试风险:由于回归测试不运行全部测试用例,可能存在测试不完全

(8)沟通协调风险:测试人员和开发人员存在误解、沟通不畅

(9)其他不可预计风险:不可抗力风险因素

24、测试人员绩效考核包括的内容:

(1)考核测试工作内容:①参与软件开发过程的工作内容考核,如需求评审等;②参与测试文档的准备工作;③执行测试的工作;④测试结果缺陷残留;⑤测试人员的沟通能力考核。

(2)测试设计中效率相关指标:①文档产出率;②用例产出率。

(3)测试设计中工作质量相关的指标:①需求覆盖率;②文档质量;③文档有效率;④用例有效率;⑤评审问题数。

(4)测试执行中工作效率相关指标:①执行效率;②进度偏离度;③缺陷发现率。

(5)测试执行中工作质量相关的指标:①缺陷数;②有效缺陷数/率;③严重缺陷率;④模块缺陷率;⑤遗漏缺陷率;⑥Bug发现的时间点,Bug缺陷的收敛率;⑦缺陷定位和可读性。

 

没有一种测试模型是完美的,除了正确地选择测试模型,还要对测试过程和测试工作指标进行恰当地使得,方可提升测试效果,进而提高软件质量。

posted @ 2020-11-11 17:46  蓝博科技  阅读(417)  评论(0编辑  收藏  举报