专栏说明:针对于企业的架构管理岗位,分享架构管理岗位的职责,工作内容,指导架构师如何完成架构管理工作,完成架构师到架构管理者的转变。计划以10篇博客阐述清楚架构管理工作,专栏名称:架构管理之道
一句话导读
测试管理是针对软件测试活动的规划、组织、协调和监督的管理活动,旨在确保软件测试工作能够按计划执行,验证软件的质量,及时发现并修复潜在缺陷,降低测试成本和时间。
目录
一、概述
软件测试是提升软件质量的有效手段,那么如何做好软件测试呢?这就用到软件测试管理的相关知识了。测试管理是对软件测试过程的管理,给测试过程制定相应的制度规范,让测试工作有序高效的执行,是软件测试管理的职责。
二、软件测试管理活动
1.制定测试管理办法
对于测试活动,制定一个纲领性文件,统一公司所有的测试活动行为,在大方向上要一致,满足公司的战略要求。对测试活动的职责分工进行明确,提出公司的测试管理要求,如测试准备工作有哪些、测试如何执行、测试环境如何管理等。定期做回顾并进行持续改进。
2.制定测试规范,统一测试文档摸版
对于测试过程进行定义,输入输出物进行说明。提供测试输出物模板。
下表对软件开发阶段的不同软件开发过程中测试过程里的关键输入输出物进行了定义。
软件开发阶段 | 软件开发过程 | 软件测试过程 | 关键输入输出物 |
分析阶段 | 需求调研 需求分析 | 测试方案制定 | 输入:需求调研报告、需求分析说明书 |
输出:软件测试方案 | |||
测试方案评审 | 输入:软件测试方案 | ||
输出:评审会议纪要、软件测试方案 | |||
设计阶段 | 概要设计 详细设计 | 测试用例编写 | 输入:概要设计说明书、详细设计说明书 |
输出:测试用例 | |||
测试用例评审 | 输入:测试用例 | ||
输出:评审会议纪要、测试用例 | |||
实现阶段 | 软件编码 | 单元测试 (研发人员) | 输入:详细设计 |
输出:单元测试代码覆盖率 | |||
测试阶段 | 软件测试 | 系统测试 | 输入:软件测试方案、测试用例 |
输出:测试计划、测试报告 | |||
性能测试 | 输入:软件测试方案 | ||
输出:性能测试方案、性能测试报告 | |||
UAT测试 | 输入:软件测试方案、测试用例 | ||
输出:UAT测试计划、UAT测试报告 | |||
维护阶段 | 软件迭代 | 系统测试 | 输入:软件测试方案、测试用例 |
输出:测试计划、测试报告 | |||
性能测试 | 输入:软件测试方案 | ||
输出:性能测试方案、性能测试报告 | |||
UAT测试 | 输入:软件测试方案、测试用例 | ||
输出:UAT测试计划、UAT测试报告 |
3.指导测试计划、测试用例编写和评审
对测试计划、测试用例的编写提出要求,使其符合项目的目标,对编写好的测试计划、测试用例进行评审,控制测试计划、测试用例的质量。
4.监督测试执行活动
对测试执行活动提出要求,并对其进行监督。确保测试活动按计划进行,规定测试执行活动的执行时间点及必要输出物。
测试方法和指标 | 执行时机和范围 | |||||||
测试类型 | 概述 | 新产品 | 主版本 | 次/修正版本 | 关键版本 | |||
功能测试 | 界面测试 | 从产品界面测试产品的功能,验证功能的完备程度 | 迭代 / 发布 | 迭代 / 发布 | 迭代 / 发布 | 迭代 / 发布 | ||
接口测试 | 从接口层测试系统服务,充分挖掘产品的内在逻辑和衍生功能,验证系统服务的完备程度 | |||||||
系统测试 | 性能测试 | 服务器端 | 负载测试 | 对待测系统增加一定压力,直到系统的某项或多项性能指标达到安全临界值 | 发布 | ○ | ○ | ○ |
稳定性测试 | 用负载测试的80%的并发数压力,对系统进行加压,一直持续不停的跑3*24小时,以此检验系统是否能够长期稳定的运行,成功率能否达到99.99% | 发布 | 发布 | ○ | 发布 | |||
压力测试 | 对待测系统一直增加压力,直到系统的某些指标达到最大值 | 发布 | 发布 | ○ | 发布 | |||
可靠性测试 | 主要针对系统架构设计方面的可靠性测试,模拟进程异常、网络异常等情况下,测试系统的可靠性处理能力 | 发布 | ○ | ○ | ○ | |||
并发测试 | 测试多用户并发访问同一个应用、模块、数据时是否产生隐藏的并发问题,目的并非为了获得性能指标,而是为了发现并发引起的问题 | 发布 | 发布 | ○ | 发布 | |||
基准测试 | 针对同一功能模块,在一定的环境下,在前后版本间的性能比较;目的是保证调优后的性能优于之前版本。新产品由项目组给出竞品。 | 发布 | 发布 | ○ | ○ | |||
移动客户端 | 稳定性测试 | 包括成功率和MTBF,是衡量一个产品的稳定性指标。单位为“小时”。具体来说,是指相邻两次故障之间的平均工作时间,也称为平均故障间隔。在MTBF测试中,可以监控稳定性测试的成功率,成功率越高,稳定性越好,性能越好。客户端的性能测试主要是针对启动快慢、耗电量、耗流量、内存使用等指标进行评估 | 发布 | 发布 | ○ | 发布 | ||
压力测试 | 包括大数据量传输测试和MTTF测试。大数据量测试是指有大量数据传输场景下的测试,MTTF测试是在高负载下的长时间(如24小时以上)运行的测试,能有效地发现系统的某项功能隐患、系统是否具有良好的容错能力和可恢复能力 | ○ | ○ | ○ | ○ | |||
可靠性测试 | 检测软件模块在异常输入和苛刻环境条件下能否保持正常工作。异常输入主要包含错误数据处理、异常情况处理和非法操作处理,苛刻环境主要包含低电,弱网,低内存,低存储等情况。可靠性测试大大提高了错误覆盖率,测试客户端既要符合测试规范要求,还要有更高的成熟性,容错性和易恢复性,从而更好地提高软件质量 | 发布 | ○ | ○ | ○ | |||
基准测试 | 对客户端在工作时所耗费的各方面资源的耗费进行评估,耗费的资源超过了拟定的指标值,则说明软件设计存在不合理设计,应该进行优化,提升性能。资源占用一般从流量、功耗、系统资源消耗几个方面进行测试设计 | 发布 | 发布 | ○ | ○ | |||
兼容性测试 | 浏览器/终端 | 是指测试软件在特定的硬件平台上、不同的应用软件之间、不同的操作系统平台上、不同的网络等环境中是否能很好地运行的测试 | 发布 | 发布 | ○ | 发布 | ||
安全性测试(信安部定义) | 包括但静态代码、开源组件、主机、Web应用和移动APP安全检测,验证系统安全性是否满足安全上线要求 | 迭代 / 发布 | 迭代 / 发布 | ○ | 迭代 / 发布 | |||
用户体验评测 | 测试人员依据用户体验评价指标体系通过用户访谈,专家走查,用户测试等测试方法,从用户角度出发对产品的功能内容,性能、界面、硬件以及用户的情感体验、产品运营服务、市场表现八个维度对产品的主观使用体验进行评估和量化。用户体验的量化,能够更加正确、完善地评估一个产品的整体质量 | ○ | ○ | ○ | ○ |
5.风险管理
识别并管理测试过程中的风险,制定风险缓解策略,降低项目失败风险,定期跟踪风险
6.培训与知识分享
为测试团队提供培训和技术支持,对制定的规范进行宣贯,促进团队成员的专业发展和知识共享。