软件测试管理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
轻微问题:某些有建设性的意见,功能可实现但是用户使用
不太方便的问题;(IV级)
测试方法
根据测试对象粒度和测试逻辑的不同,测试分为白盒测试
和黑盒测试。 白盒测试也叫结构化测试、玻璃盒测试,是通过程序的源 代码进行测试而不使用用户界面。这种类型的测试需要从 代码句法发现内部代码在算法,溢出,路径,条件等等中 的缺点或者错误,进而加以修正。 黑盒测试也叫功能测试,数据驱动测试或基于规格说明的 测试,是通过使用整个软件或某种软件功能来严格地测试, 而并没有通过检查程序的源代码或者很清楚地了解该软件 的源代码程序具体是怎样设计的。 白盒测试主要针对的是程序代码逻辑,黑盒测试主要针对 的是程序所展现给用户的功能,简单的说就是前者测试后 台程序后者测试前台展示功能。
测试用例
需求确定后,应编写测试用例,并进行评审:
一个调研数据;一个项目组,前一个月不写测试用例,大 家按照自己的思路去测试;后一个月,严格写测试用例, 执行测试用例去测试。调研结果是:前一个月在测试开始 时,测试速度稍微快点,在进入测试中后期,测试速度就 很慢很慢,因为常见点已经测试完了,测试工程师自己都 不知道哪些东西测试过了,哪些还没?哪些没有问题,哪 些还有问题?不能很直观的去管控。后一个月在开始时, 由于写测试用例的时间,速度会稍微慢点,但是在中后期, 测试效率明显比前一个月要好很多,测试工程师对于项目 的把握也更清楚。两者整个花的时间基本差不多。质量就 更不用说了,肯定后者更有保证。
测试管理的基本内容
2.2测试过程管理
基本内容包括: 测试准备 测试计划阶段 测试设计阶段 测试执行阶段 测试结果分析
测试管理的基本内容
测试准备:
确定测试组长,组建测试小组,参加有关项目计划、分析和设 计会议,获取必要的需求分析、系统设计文档,以及相关产品/ 技术知识的培训。 测试计划阶段: 测试计划阶段的整体目标是为了确定测试范围、测试策略和方 法,以及对可能出现的问题和风险,所需要的各种资源和投入 等进行分析和估计,以指导测试的执行。 一个好的测试计划应该包括以下几方面的内容:
测试管理的基本内容
2.3资源和配置管理 资源管理
人力资源:测试人员的数量及其测试技能,在测试项目中所需 的测试人员和要求在各个阶段是不同的。 环境资源:建立测试环境所需要的计算机软件资源和硬件资源 的总和。硬件提供了一个支持操作系统、应用系统和测试工 具等运行的基本平台,软件资源则包括操作系统、第三方软 件产品、测试工具等。
测试管理的基本内容
2.1测试组织管理 2.2测试过程管理
2.3资源和配置管理
2.4测试文档管理
测试管理的基本内容
2.1测试组织管理
主要任务: 组织和管理测试小组 确定测试小组的组织模式 安排测试任务 估计测试工作量 确定应交付的测试文档 管理测试件 确定测试需求和组织测试设计等。
执行测试-单元测试
又称模块测试,就是对程序代码中最小的涉及模块单
元进行测试。
单元测试要求需要几年的代码编写经验、并且要十分
熟悉当前的被测系统,以及该系统是否与其它系统的 接口关联情况。一般由开发人员完成。
单元测试在编码阶段占据非常重要的地位。
可以降低编码的错误率,提高编码质量
执行测试-集成测试
测试计划 测试设计 测试执行 配置管理 资源管理 测试管理
建立测试管理体系
此外,测试系统与软件修改过程是相互关联、相互作用的。测试系统的输
出(软件bug报告)是软件修改的输入。反过来,软件修改的输出(新的测 试版本)又成为测试系统的输入。 根据上述6个过程,可以确定建立软件测试管理体系的6个步骤: 识别软件测试所需的过程及其应用,即测试规划、测试设计、测试执 行、配置管理、资源管理和测试管理; 确定这些过程的顺序和相互作用,前一过程的输出是后一过程的输入。 其中,配置管理和资源管理是这些过程的支持性过程,测试管理则对 其他测试过程进行监视、测试和管理; 确定这些过程所需的准则和方法,一般应制订这些过程形成文件的程 序,以及监视、测量和控制的准则和方法; 确保可以获得必要的资源和信息,以支持这些过程的运行和对它们的 监测; 监视、测量和分析这些过程; 实施必要的改进措施
测试计划
测试计划主要包括以下几点:
(1)测试时间:需求分析起止时间,设计测试用例的
起止时间,执行测试的起止时间; (2)测试执行人:以项目(模块)划分测试负责人, 也可以根据设计和执行来划分测试负责人; (3)测试环境:指明系统所需要的测试软硬件环境以 及基本要求; (4)测试标准:指明测试各阶段的输入和输出准则, 达到标准后进行下一迭代或阶段;
测试管理的基本内容
2.4测试文档管理 测试文档的类型
测试计划:详细规定测试的要求,包括测试的目的和内容、方法 和步骤,以及测试的准则等。 测试分析报告:用来对测试结果进行分析说明。软件经过测试后, 应给出评价的结论性意见,软件的能力如何,存在哪些缺陷和限 制等等。
测试文档的管理 文档的分类管理 文档的格式和模板管理 文档的一致性管理 文档的存储管理
测试管理的基本内容
测试执行阶段:
建立和设置好相关的测试环境,准备好测试数据,开 始执行测试。测试执行可以手工进行,也可以自动进 行。自动化测试借助于测试工具,运行测试脚本,达 到测试结果,所以管理比较简单,而手工测试的管理 相对要复杂些。 测试结果分析: 测试结束后,对测试结果进行分析,以确定软件产品 的质量,为产品的改进或发布提供数据和支持。在管 理上,应做好测试结果的审查和分析,做好测试报告 的撰写和审查工作。
建立测试管理体系
应用系统方法来建立软件测试管理体系,也就是把
测试工作作为一个系统,对组成这个系统的各个过 程加以识别和管理,以实现设定的系统目标。同时 要使这些过程协同作用、互相促进,尽可能发现和 排除软件故障。 测试系统主要由下面6个相互关联、相互作用的过程 组成:
目的 完成测试的标准 测试策略 资源配置 责任明确进度安排 测试用例库及其标准化 组装方式 工具
测试管理的基本内容
测试设计阶段:
软件测试设计建立在测试计划之上,通过设计测试用例来完成测试内 容,以实现所确定的测试目标。 软件测试设计的主要内容有: 制定测试技术方案 设计测试用例 设计测试用例集合 测试开发 设计测试环境 所设计的测试技术方案是否可行、是否有效、是否能达到预定的 测试目标; 所设计的测试用例是否完整、是否考虑边界条件、能否达到其覆 盖率要求; 所设计的测试环境是否和用户的实际使用环境接近等。
个独立阶段、但测试工作却涉及从 分析、设计直到编码的各个阶段中 (1-7是软件测试所经阶段的一般流 程)。
需求分析、测试计划、测试用例、
验收测试
执行测试、验收测试、运维管理、 缺陷管理。
运维管理
缺陷管理
需求分析
要从以下几个方面考虑需求:
完整性 正确性 一致性 可行性 无二义性 健壮性 必要性 可测试性 可修改性 所以需求评审时一定要有测试人员参与,以便为后续 的测试工作提供方便。另需求人员一定要编写需求说 明书。
测试管理的基本内容
2.3资源和配置管理 配置管理 在团队开发中,标识、控制和管理软件变更的一种管理,是 通过在软件生命周期的不同时间点上对软件配置进行标识并 对这些标识的更改进行系统控制,从而达到保证软件产品完 整性和可溯性的过程。
基本过程: 配置标识:标识组成软件产品的各个组成部分并定义其属性,制 定基线计划; 配置控制:控制对配置项的修改; 配置状态发布:向相关组织和个人报告变更申请的处理过程、允 许的变更及其实现情况; 配置评审:确认受控配置项是否满足需求等。
测试管理的基本内容
2.2测试过程管理
软件测试不等于程序测试,软件测试贯穿于软件开发整个生 命周期,但软件测试过程管理在各个阶段的具体内容是不同 的。 在软件开发的每个阶段,测试任务的最终完成都要经过从计 划、设计、执行到结果分析、总结等一系列步骤,这便构成 了软件测试的一个基本过程。
因此,软件测试过程管理主要集中在测试准备、测试计划、 测试用例设计、测试执行、测试结果分析,以及如何开发和 使用测试过程管理工具上。
测试 设计
测试 执行
测试 报告
测试记录、 缺陷管理
V型关系图
软件开发过程若采用严格的瀑布模型,则开发与测试
就有V型的对应关系。
用户需求 需求开发 验收测试 系统测试
概要设计 详细设计 编码
集成测试 单元测试
软件测试流程图
软件测试虽然是软件生存周期的一
需求分析 测试计划 测试用例 执行测试
又称组装测试,是将软件产品各个模块组装起来,检
查接口是否存在问题,以及组装后的整体功能、性能 表现。
主要解决各个组成部分源代码是否符合开发规范、借
口是否存在问题,整体功能有无错误、界面是否符合 设计规范、性能是否满足用户需求等。
执行测试-系统测试
系统测试是软件系统的整体验证,包括功能特性和非
测试的目的,是想以最少的人力,物力和时间找出软件中潜在
的各种错误与缺陷,通过修正各种错误和缺陷提高软件质量,回 避软件发布后由于潜在的软件缺陷和错误造成的隐患以及带来的 商业风险。
通用测试流程
客户需求
测试方案、 测试用例 缺陷分析、 客户验收
修正后的 系统
测试 计划
项目计划、 版本计划、 资源、进 度
缺陷管理
测试及运维阶段产生的所有的问题都应记录下来,且分类存 放便于分析。所有问题最终应为关闭状态,且可追溯。 致命问题:导致系统停止运行,系统崩溃的问题;(I级) 严重问题:重点模块的基本功能失效或未实现;功能实现不
符合客户要求的问题;(II级)
一般问题:某些模块正常流程正确,异常操作存在问题;不 常用的模块功能未实现;(III级)
验收测试是软件生产流程中的最后质检关。
运维管理
不管测试多么精确,到线上后,都会存在问题。只是说测试可
以尽量去减少这样的情况发生。如果产品上线后,出现问题, 怎么处理? 系统上线后要有专门的运维人员进行跟踪处理,有问题及时与 项目相关人员沟通。 第一时间,在测试环境中,重现。能重现,则找相应的开发工 程师解决,再评估上线时间。如果不能重现,就直接找项目经 理,评估解决办法。 而一般而言,出现问题后,责任我会担着(这是一种得人心的 方法),事后会跟相关的测试工程师去探讨出现这个问题的原 因,是由于他自己引起的,就总结为什么,争取别在同一个地 方跌倒两次,对于他而言,是一种成长和进步。 客户有新需求时应召开会议评审,评估新需求的可实现性和必 要性,一致通过后才能列入开发计划,不允许私自许诺。
功能特性。通过与系统的需求定位作比较,发现软件 与系统的定位不符合或与之矛盾的地方。
这个阶段主要进行安装卸载测试、兼容性测试、功能
确认测试、性能测试、安全测试等。
验收测试
验收测试主要是检测与证实软件是否满足软件需求说
明书中规定的要求。
验收测试阶段是被测软件首次作为正式的系统交于用
户使用,用户会根据他们的实际使用情况进行测试、 使用,并提出实际使用过程中的问题。
智能研究所
1、测试管理体系 2、测试管理的基本内容 3、软件测试及流程
4、软件测试原则
测试管理
随着软件开发规模的增大、复杂程度的增加,以寻找
软件中的故障为目的的测试工作就显得更加困难。
为了尽可能多地找出程序中的故障,开发出高质量的
软件产品,必须对测试工作进行组织策划和有效管理, 采取系统的方法建立起软件测试管理体系。对测试活 动进行监管和控制,以确保软件测试在软件质量保证 中发挥应有的关键作用。
软件测试定义
软件测试(Software Testing),描述一种用来促进鉴定软件的
正确性、完整性、安全性和质量的过程。换句话说,软件测试是 一种实际输出与预期输出间的审核或者比较过程。软件测试的经
典定义是:在规定的条பைடு நூலகம்下对程序进行操作,以发现程序错误,
衡量软件质量,并对其是否能满足设计要求进行评估的过程。