软件测试流程及规范V1.1
软件设计流程及编写规范

一、前期方案评估1、主控芯片选型模块化控制要求,整理系统需要的资源。
如系统时钟、普通IO拟需要的数目、中断源的个数、AD采样通道的个数、PWM输出的通道数等。
在封装等外形尺寸等符合硬件标准的情况下,从上述方面去考虑主控芯片的型号,优先考虑行业通用或是编程人员熟悉的芯片类型。
对于无参考的新品项目,在做方案时必须对主控芯片的资源做预留,以备功能扩展或是方案更改需要。
如至少留出2个以上的普通IO口,1个以上的AD转换口,1个以上的中断资源。
2、主控芯片性能粗测试初期选型通过的主控芯片,DIY一张DEMO实验板,编写测试程序测试所选芯片是否符合工程需要。
主要测试单片机的如下性能:1)系统时钟的稳定性2)指令周期3)端口输入输出延迟4)极限工作温度区间5)频漂6)其它专用功能经测试后给出测试结论:Y/N。
3、软件方案的制定3.1 系统资源分配系统时钟的选择(兼顾系统的运行速度以及实际需求),并非越高越好,如果控制系统要求有精确的定时,优先保证时间精度。
如,精确的定时器触发、PWM精确的载波周期等。
依据控制对象的具体情况,把控制需求模块化。
对不同的功能模块,采用最适合的单片机资源去实现。
对每个模块,详细分析模块的功能以及实现方式,对于核心功能,还需给出软件流程图。
如要实现AD采样功能,需给出AD的参考电压、转换通道、转换精度等,并且给出采样值的滤波方法。
3.2 系统结构框架设计设计系统的工作流程,把各功能模块按照一定的逻辑结构组合成完整的系统,其中包括系统框架图,软件流程图,中断管理等。
对于中断,必须慎重考虑程序被打断后的恢复问题,如程序在运行到AD采样时被某中断打断,中断函数中依然有AD采样,那么在中端函数执行完后,程序在断点继续执行时AD采样寄存器的值已不再是中断执行前的值。
3.3 任务进度安排指定软件编写责任人以及进度表。
相应文档规整,责任人签字确认后存档。
二、软件编写规范1、文档文件的结构原则:做到格式清晰、注释简明扼要、命名规范易懂、函数模块化、程序易读易维护、功能准确实现、代码空间效率和时间效率高1.1程序代码和工程空间程序源码和工程空间分别建立各自的文件夹,程序源代码命名时体现出版本序列,工程空间只体现项目名称不含版本号。
代码版本管理规范_v1.1

XXXXXXXX 代码版本管理规范历史版本目录历史版本 (2)1引言 (4)1.1目的 (4)1.2管理工具 (4)2现状概述 (5)3现状分析 (5)3.1现状详述 (5)3.2目标细化 (6)3.3SVN版本管理 (6)3.3.1概述 (6)3.3.2使用对比 (7)4完整的实施方案 (9)4.1开发阶段 (9)4.2预发布测试阶段 (9)1引言1.1目的为了规范和制度化公司的软件版本管理制度,并保障项目开发资料的完整性和安全性,同时明确开发源代码的控制管理流程,特此制定此规范。
1.2管理工具沿用SVN管理工具来进行开发的版本管理,源代码管理和开发资料归档。
2现状概述目前公司研发部门对于代码的版本管理方式较为简单,只是在每次发版后做了基线库存档,导致所有正在开发的需求和项目都在同一个目录里面进行修改,造成每次发版的代码都有可能包含了本次发版以外的内容。
这样会造成如下两点影响:●会有不稳定的因素存在,比如:测试只会对当前需要发版的内容进行测试,但是代码库中同时存在多个版本和项目的代码,对于本次发版无涉及的代码没有进过测试就部署到了服务器上,影响运行的稳定性。
●一旦出现点问题不好定位,比如:出现问题后通常会优先排查发版涉及的内容,但是部分问题是由于其他项目代码引起的。
因此,随着公司和项目规模的壮大,对软件代码版本管理提出了更高的要求。
3现状分析3.1现状详述当前代码版本管理现状如下:1.所有的开发都在一个目录里面做,各种需求、项目、代码、文件混杂在一起。
2.提交测试服务器时,只考虑了编译能通过,而没有考虑功能本身有没有完成。
3.测试出bug以后,会在开发目录进行修改,然后再次提交到测试服务器。
这时提交的代码就可能包含了他人对其他功能/项目的修改,而测试又只会针对此bug再做测试。
这就导致了除了此bug之外的修改可能会没有测试过就直接发布到了服务器上,引起预发布环境不稳定并增加预发布bug数量。
总体来说,当前工作流程是:预发布出bug,研发修改,再提交测试,然后预发布测试通过的代码。
软件测试 第2章软件测试过程模型及标准

第2章软件测试过程模型及标准第一节回顾1.软件过程模型:软件开发全部过程、活动和任务的结构框架也称软件开发模型或软件生存周期模型2.典型的软件过程模型:瀑布模型,演化模型,增量模型,原型模型,螺旋模型,喷泉模型,基于构件的开发模型,形式方法模型3.瀑布模型(包含计算机系统工程)(如图所示)将软件放在计算机系统工程中,考察软件在计算机系统扮演什么角色,软件做什么,区分哪些事情由硬件完成,哪些事情软件完成,哪些事情由人完成。
4.瀑布模型(不包含计算机系统工程)(如图所示)第二节软件测试过程模型1.模型:描述软件测试全部过程、活动和任务的结构框架2.典型的软件测试模型:2.1V模型2.2W模型2.3H模型2.4TMap模型第三节V模型1.V模型描述软件开发各阶段与软件测试类别的关系2.V模型的左分支展示了软件开发的活动(和传统瀑布模型的开发步骤相一致),右分支展示了软件测试的类别特点:3.可根据V模型确定各软件测试阶段的测试要求4.可针对开发活动的不同特点为不同的测试类别设计不同的测试用例5.体现测试人员参与开发的全过程6.V模型(含计算机系统工程)(如图所示)7.V模型(不含计算机系统工程)(如图所示)8.V模型右侧的测试级别随软件开发程度的加深而对应不同级别的测试阶段a)单元测试:主要针对详细设计和编码的测试b)集成测试:主要针对概要设计的测试c)系统测试:主要针对软件系统或计算机系统的测试d)验收测试:主要由用户进行的测试缺点:V模型把测试过程作为在需求定义、需求分析、系统概要设计、系统详细设计及编码之后的一个阶段。
容易使人理解为测试是软件开发的最后阶段,测试主要针对程序进行,而需求定义、需求分析、系统概要设计、详细设计阶段隐藏的问题一直到后期的系统测试和验收测试才被发现。
第四节W模型1.V模型中增加各开发阶段应同步进行的验证和确认活动,演化成W模型2.W模型由两个V组成,一个V代表开发过程,另一个V代表测试过程优点:3.体现了尽早地、不断地进行软件测试4.体现了测试对象不仅是程序代码,还包括需求分析、设计等阶段的工作产品,测试与开发同步进行。
软件测试控制程序

软件测试控制程序版本编号:V 1.0天津市蓝剑网际服务有限公司版本控制版本号定版日期修订内容制定人批准人V1.0 20045.05.25 第一次制定。
1.目的和范围规定本公司的软件测试流程,定制整套软件测试统一文档。
2.职责软件测试工作是在开发部门内部进行的,测试过程由部门内人员按已规定的职责和权限范围来进行的。
3.定义和术语TERG :评审组4.测试阶段4.1.计划阶段制定测试计划阶段是在需求分析完成后进行,参考文档为《需求规格说明书》与《软件开发计划书》,在这个过程中要测试人员要完成《软件测试计划》的编写工作,然后交由项目负责人进行审核,审核通过进行下一步工作,否则,重新修订计划。
4.2.文档准备阶段文档准备阶段是在测试计划完成之后进行,参考文档为《需求规格说明书》与《软件测试计划》,在这个过程中测试人员要完成《软件测试大纲》与《软件测试用例》的编写工作,然后交由项目评审组进行评审,审核通过进行下一步工作,否则,重新修订大纲与用例。
值得注意的是如果《需求规格说明书》发生改变时,《软件测试大纲》与《软件测试用例》也要随之发生改变。
4.3.测试执行阶段测试执行阶段从整个软件开发的编码阶段开始,一直到开发结束,参考的文档是《软件测试用例》与《软件测试大纲》。
在这个阶段测试人员要生成《软件测试记录报告》、《软件测试问题报告》与《软件测试总结报告》。
在这个过程中,开发人员提交给测试人员的程序必须符合《软件自测试标准》,在这个前提下测试人员才可进行测试;《软件测试问题报告》要随时交与项目负责人审核,项目负责人会根据相应的情况要求开发人员进行修改或者要求测试人员修订《软件测试问题报告》。
整个测试完成后,测试人员需完成《软件测试总结报告》,同时要交与项目负责人审核,如果审核不通过重新修订。
4.4.测试总结阶段这是测试的最后阶段,主要是对整个测试工作进行评审。
项目评审组根据以上三个阶段产生的文档对软件进行评审,决定是否软件可以发版,如果可以生成《版本登记表》。
软件测试流程及规范

软件测试流程及规范篇一:软件测试工作流程及规范软件测试工作流程及规范1 计划与设计阶段1.1 召开测试启动会议测试经理召集项目经理、开发经理开会确定测试交接时间,得到当前最新的相关资料。
进行规模预估并成立测试团队,完成《测试计划》1.2 设计测试用例在需求分析文档确立基线以后,测试组需要针对测试需求编写测试用例,在实际的测试中,测试用例将是唯一实施标准。
在用例的编写过程中,具体的任务和责任人如下:2 实施测试阶段2.1 实施测试用例实施测试用例将花费测试组绝大部分时间,这些工作都是建立在前期很多计划工作的基础上。
2.2 提交测试报告在约定的测试周期完成之后,测试工程师需要总结此测试的结果,编写测试报告3 总结阶段测试工作结束或即将结束时,测试组就要开始着手准备进行总结的工作。
3.1 编写测试报告在测试结束之后,测试经理编写测试报告,对测试进行总结,并且提交给项目经理,为产品的后续工作提供重要的信息支持。
3.2 测试验收测试验收工作是在以上工作全部结束后,对测试的过程,效果进行验收,宣布测试结束3.3 测试归档测试归档是在测试验收结束宣布测试有效,结束测试后,对测试过程中涉及到各种标准文档进行归档。
篇二:软件测试流程规范软件测试流程规范一、通读项目需求设计文档1. 测试的准备阶段;2. 仔细阅读《软件需求规格说明书》;3. 根据测试手册,做前期的测试准备;二、明确测试任务的范围⑴功能测试;⑵界面测试;⑶接口测试;⑷容错测试;⑸负载测试;⑹安全测试;⑺性能测试;⑻稳定性测试;⑼配置测试;⑽安装测试;⑾恢复测试;⑿文档测试;⒀可用性测试;三、学习理解被测试软件由开发人员组织讲解所要执行测试的软件或者产品,测试人员必须认真理解拿到手中待测试的软件或者产品。
四、制定测试计划“工欲善其事,必先利其器”。
软件测试必须以一个好的测试计划作为基础。
作为测试的起始步骤和重要环节。
测试计划应包括:产品基本情况调研、测试策略、测试大纲(功能模块的测试、详细测试、高级测试)、测试内容(界面测试、测试需求说明)、测试人力资源配置、测试计划的变更、测试硬件环境、测试软件环境、测试工具、测试进度计划表、问题跟踪报告、测试通过准则、测试计划的评审意见等。
软件测试环境管理方案规范.docx

测试环境管理规范修改履历修改编号版本修改条款及内容修改日期1V1.0初稿目录1.概述 (6)1.1目的 (6)1.2适用范围 (6)2.环境使用要求和原则 (6)2.1环境使用要求 (6)2.2环境使用原则 (6)3.硬件环境 (8)3.1全流程测试环境申请 (8)3.1.1申请流程图 (8)3.1.2申请流程说明: (8)3.2待测系统环境申请 (9)3.2.1申请流程图 (9)3.2.2申请流程说明: (9)3.3测试用机申请 (10)3.3.1申请流程图 (10)3.3.2申请流程说明: (10)3.4硬件环境变更 (11)3.4.1全流程测试环境变更流程图 (11)3.4.2全流程测试环境变更流程说明:113.5硬件环境释放 (12)3.5.1释放流程图 (12)3.5.2释放流程说明 (13)4 .环境权限 (13)4.1权限说明 (13)4.1.2监控帐户 (13)4.1.3应用帐户 (13)4.1.4备用帐户 (13)4.1.5特殊帐户 (14)4.2权限申请流程 (14)4.2.1查询帐户申请流程 (14)4.2.2监控帐户申请流程 (14)4.2.3应用帐户申请流程 (14)4.2.4备用帐户申请流程 (14)4.2.5特殊帐户申请流程 (15)4.3应用系统 (15)4.3.1应用版本变更 (15)应用版本部署 (15)应用版本变更 (15)4.3.2测试数据 (15)测试数据预埋 (15)测试数据变更 (16)5 .系统参数变更 (16)5.1工作时段参数变更 (17)5.1.1变更流程图: (17)5.1.2变更流程说明: (17)5.2非工作时段参数变更 (18)5.2.1变更流程图: (18)5.2.2变更流程说明 (18)6 .系统备份 (19)6.1.1备份说明 (19)6.1.2备份流程 (19)6.2特需备份 (20)6.2.1备份说明 (20)6.2.2备份流程 (20)1.概述1.1 目的指导银行科技部规范测试实施环境管理工作,并为各相关小组对测试环境操作执行提供实施指导,以便帮助各相关小组能够合理、高效的使用测试环境,更方便、更快捷的完成测试任务。
LKJ控制软件测试大纲V1.1

LKJ基本控制软件功能测试大纲
一、本测试大纲编制的主要依据:
1. 列车运行监控装臵(LKJ)运用维护规则(铁运[2009]98号)
2. 列车运行监控装臵(LKJ)数据文件编制规则(V2.0)(运基信号[2009]332号)
3. 列车运行监控装臵(LKJ)技术规范(V1.0)
4. LKJ2000司机警惕功能技术条件
5. 《列车固定走行径路软件修改技术条件》
二、本测试大纲初稿由南车时代电气股份有限公司安全装备事业部、河南思维自动化设备有限公司共同提交,经测试组讨论修订。
1.LKJ司机警惕功能
2.系统检测及基本信息显示
3.制动计算3.1机车牵引的列车
3.2 CRH系列动车组
4.控制指令的输出
4.1 控制指令输出及常用减压
4.2 恒速区
4.3 减速区
5.检修参数输入和库内试验
6.速度相关信息
7.临时性控制参数输入
8.工作状态控制8.1 通常工作状态
8.2降级工作状态
8.3 调车工作状态
8.4 出入段工作状态
8.5 非本务工作状态
8.6 20km/h限速工作状态
8.7 与其它ATP结合工作状态
8.8 各种工作状态转换。
软件测试方案(整体方案)

软件测试整体测试计划与方案★★★★★内部资料,可为以后规范测试行为使用版本历史目录1.概述 (5)2.适用对象和范围 (5)3.术语、名词定义 (5)3.1.系统测试 (5)3.2.黑盒测试(功能测试) (5)3.3.白盒测试 (5)3.4.灰盒测试 (5)3.5.健壮性测试(容错能力/恢复能力测试) (6)3.6.接口测试 (6)3.7.强度测试 (6)3.8.压力测试 (6)3.9.性能测试 (6)3.10.安全测试 (7)3.11.可靠性测试 (7)3.12.安装/反安装测试(公司一般系统不需要进行该测试) (7)3.13.文档测试 (7)4.测试工作流程 (8)4.1.测试管理总流程 (8)4.2.制定测试计划工作流程 (8)4.3.设计测试用例工作流程 (9)4.4.执行测试工作流程 (9)4.4.1.测试工作总体流程 (9)4.4.2.单元测试工作流程 (10)4.4.3.集成测试工作流程 (11)4.4.4.系统测试工作流程 (12)4.4.5.验收测试工作流程 (14)4.5.缺陷管理与改错流程 (15)5.测试参考文档和测试提交文档 (16)5.1.测试参考文档 (16)5.2.测试提交文档 (16)6.测试资源 (17)6.1.人力资源 (17)6.1.1.人员、角色及职责 (17)6.2.测试工具 (17)7.测试方法和方式 (17)8.测试中断与开始的标准 (18)9.测试范围与测试任务 (18)9.1.测试任务 (19)10.测试用例编写方案及相关约定 (20)10.1.编写原则 (20)10.2.衡量测试用例设计的质量标准 (20)10.3.测试用例管理 (21)10.4.测试用例与开发的对应关系约定 (21)10.5.测试用例类型约定 (21)10.6.测试阶段、类型与执行角色的关系约定 (22)10.7.测试用例清单 (22)11.缺陷管理与改错计划 (22)11.1.流程图 (22)11.2.缺陷管理手段 (22)11.3.缺陷管理规则 (22)12.实施建议 (23)附录一缺陷分类 (23)附录二缺陷严重程度 (24)1.概述为了提高检测出错误的几率,使测试能有计划地、有条不紊地进行,就必须要编制测试相关文件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二、各阶段具体流程1.需求分析阶段1.1步骤说明1、需求定义基本完成,SRS编写完成。
2、开评审会,由需求调研人员、开发组、设计组、测试组等人员对需求中不清楚、不完整、存在疑义的地方提出问题,相关人员解答并确认。
3、当评审未通过,直接打回,重新修改SRS,问题解决后,重新提交评审。
4、当评审通过后,依据SRS,项目整体计划,设计、编写《测试计划》和《测试设计》,具体模板见附件。
5、开评审会,由开发组、设计组、测试组等人员对计划和设计中不清楚、不完整、存在疑义的地方提出问题。
6、当审批未通过,直接打回,优化测试计划、测试设计,问题解决后,重新提交评审。
7、审核通过后,进入下一阶段。
1.2测试通过打回标准1.3、阶段的输出输入:最新SRS、项目计划输出:测试计划、测试设计2、单元及集成测试流程2.1步骤说明:1、理解需求和设计理解设计是很重要的,特别是要搞清楚被测试模块在整个软件中所处的位置,这对测试的内容将会有很大的影响。
需要记住的一个原则就是:好的设计,各模块只负责完成自己的事情,层次与分工是很明确的。
在单元测试的时候,可以不用测试不属于被测试模块所负责的功能,以减少测试用例的冗余,集成测试的时候会有机会测试到的。
所以,单元测试主要是关注本单元的内部逻辑,而不用关注整个业务的逻辑,因为会有别的模块去完成相关的功能。
2、概览源代码浏览一下源代码,主要任务:1)初步检查源代码的编码风格与规范。
2)大致估算测试工作量,比如:需要多少的测试用例、需要写多少的驱动模块和装模块等。
3)确定模块的复杂程度,初步制定测试的优先级等。
3、精读源代码认真阅读和分析代码,主要任务:1)理解代码的业务逻辑。
2)检查代码与设计是否相符,如果详细设计没有该模块的流程图的话,先去画出流程图。
3)仔细研究逻辑复杂的模块。
4)可以采用一些检查列表来检查程序可能会出现的问题。
4、设计测试用例综合运用白盒测试方法(和结合黑盒测试方法)来设计测试用例,包括功能测试、性能测试等,要达到一定的测试覆盖率。
在设计测试用例的过程中,流程图或控制流图是分析的好帮手。
5、搭建单元测试环境使用工具或自己写的框架将有助于单元测试的实施。
在这个阶段主要就是写桩模块和驱动模块,第4步所设计的测试用例是通过驱动模块传递给被测试模块的,然后驱动模块想办法获取被测试模块对数据的处理结果,并判定返回的实际结果与测试用例的预期结果是否一致,通过测试框架来记录执行的结果,对于出现的错误,还需要统计错误的信息,供执行完之后分析。
6、执行测试运行写好的驱动模块完成对被测试模块的测试。
7、补充和完善测试用例单元测试也是个循序渐进的过程,可能一开始考虑的不够全面,或预期的覆盖标准太低,需要在测试过程中不断补充测试用例,直到满足要求为止。
8、分析结果,给出评价根据测试的结果分析、查找错误的原因,并找到解决的办法。
测试结束之后,根据测试过程的数据统计,给出被测试对象评价2.2测试通过打回标准1、通过标准2、打回标准2.3、阶段的输出输入:最新SRS、项目计划、详细设计输出:单元测试计划、单元测试用例、单元测试总结分析。
3、系统测试流程系统测试是将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,从而提出更加完善的方案。
系统测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。
是基于系统整体需求说明书的黑盒类测试,应覆盖系统所有联合的部件。
对象不仅仅包括需测试的软件,还要包含软件所依赖的硬件、外设甚至包括某些数据、某些支持软件及其接口等。
3.1步骤说明1、测试组收到测试任务通知书,告知较为确切的测试内容、日期。
2、根据最新SRS和各设计文档,将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,针对整个产品系统进行的测试。
3、编写此阶段系统测试方案,通过评审,优化系统测试方案。
4、然后编写或补充系统测试用例,用例完成后,需要通过评审,优化系统测试用例。
5、执行冒烟测试用例,测试版本仅少量严重程度低的bug未修改引起的不通过,反馈项目组,通知延长冒烟测试时间;测试版本符合冒烟测试打回标准,冒烟测试不通过,直接打回或挂起,结束测试。
测试完成度满足冒烟测试开始条件,重新发起测试申请。
6、当不通过时,退回或挂起。
7、当完成冒烟测试后,进行系统测试,提交bug报告,审核bug,当审核未通过时,补充测试用例,当审核通过汇总bug,总结报告。
8、当开发人员完成缺陷的修改后,提交新的版本,测试人员继续开始做回归测试。
当测试版本仅少量bug未修改引起的不通过,反馈项目组,通知延长系统测试时间;测试版本符合系统测试打回标准,系统测试不通过,直接打回,结束测试。
待测试完成度满足系统测试开始条件,重新发起测试申请。
9、当缺陷的统计曲线出现的逐渐收敛,并且得到控制。
10、分析缺陷的原因。
11、提交测试报告。
12、进入下一阶段。
3.2测试通过打回标准1)通过标准2)打回标准3.3、阶段的输出输入:最新SRS、项目计划、详细设计输出:系统测试计划、系统测试用例、测试总结分析。
4、验收测试软件产品测试组对经过内部单元测试、集成测试和系统测试后的软件所进行的测试,测试用例采用业务流程测试用例。
4.1步骤说明1、验收测试进入准则1)软件产品通过单元测试、集成测试和系统测试。
2)项目组提交以下测试文档:测试计划、测试用例、测试日志、测试通知单、测试分析报告。
3)待验收的软件安装程序。
2、测试错误类型参考软件测试停止标准.doc3、对用户手册和帮助的验收规定1)用户手册和帮助的编制要使用非专门术语的语言,充分地描述该软件系统所具有的功能及基本的使用方法。
2)使用户(或潜在用户)通过用户手册能够了解该软件的用途,并且能够确定在什么情况下,如何使用它。
3)语句通顺、简洁,语义明确,错别字小于0.1%。
4)对相关名词解释应易于被用户理解。
5)对相关界面的说明要符合操作流程并将每一项功能解释完整、清楚。
6)保证用户手册、帮助能够正确指导用户使用软件。
4、软件验收测试合格通过准则1)软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
2)所有测试项必须符合以下标准:(以下比例为错误占总测试模块的比例)3)需求分析文档、设计文档和编码实现一致。
4)用户手册及帮助符合对用户手册及帮助的验收规定(编写人在责任认定书上签字时对于软件产品的各项功能描述、名词解释、结构、语句表达等方面均要保证其正确性并加以说明)。
5)验收测试文档齐全(见验收测试进入准则)。
6)以上五条其中之一不满足要求,视为不合格。
三、缺陷管理3.1缺陷定义软件缺陷(Defect),常常又被叫做Bug。
所谓软件缺陷,即为计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷。
具体归纳为以下这些问题。
1、软件没有达到需求规格说明书中表明的功能;2、软件出现了需求规格说明书中不一致的表现;3、软件功能超出需求规格说明书的范围;4、软件没有达到用户期望的目标(虽然需求规格说明书中没有要求);5、测试员或用户认为软件的易用性差。
3.2缺陷的修复在实际项目中不是所有的缺陷都会修改,具体见以下情况:1、市场的压力使得产品最终发行有时间限制;2、测试员错误理解或者不正确操作引出的缺陷;3、错误的修改影响的模块较多,带来的风险较大;4、缺陷报告中提出的问题很难重现;5、修改性价比太低。
3.3缺陷的分类标准一旦发现软件缺陷,就要设法找到引起这个缺陷的原因,分析对产品质量的影响,然后确定软件缺陷的严重性和处理这个缺陷的优先级。
各种缺陷所造成的后果是不一样的,有的仅仅是不方便,有的可能是灾难性的。
一般问题越严重,其处理优先级就越高,可以概括为以下五种级别:3.3缺陷的流程目前分公司的缺陷管理使用的是Quality Center9.0,具体安装和使用细节,见使用手册。
在使用时遵循以下的流程,即缺陷的生命周期。
流程中缺陷存在以下6种状态:提交bug状态(New):开发人员或测试人员发现bug,记录在系统里。
激活状态(Open):当项目经理或负责人觉得这个bug是问题,将bug置为此状态。
驳回状态(Rejected):当项目经理或负责人觉得这个bug不是问题,则可以驳回,将bug置为此状态。
已修正状态(Fixed):开发人员针对缺陷,修正软件后已解决问题或通过单元测试。
关闭状态(Close):测试人员经过验证后,确认缺陷不存在之后的状态。
重新激活状态(Reopen):测试人员经过验证后,确认此缺陷存在,之后将其置为此状态。
四、关于单元测试1、首先应该明确单元的含义。
单元在面向对象的程序中指的是一个类,在结构化的方法中指的是一个函数。
2、其次应该明确单元测试的方法。
单元测试的常用方法包括:(1) 静态检查,即采用静态代码检查的工具对程序进行内部逻辑的分析,以分析程序中可能的错误。
(2) 动态测试,通过编写单元测试程序,设计单元测试用例,测试每个函数或每个类的逻辑正确性。
3、如果一个类或一个函数对其他的类或环境依赖性很强,需要编写大量的桩程序或驱动程序,那恰恰说明了这个类或这个函数的设计有问题,违背了“低耦合”的基本设计原则,这也正式敏捷方法中提倡的“测试驱动开发”的作用之一。
4、质量的投入产出也是一种平衡,需要在单元测试上投入到什么程度首先是公司的一个管理方针。
如果每个单元都进行单元测试则测试代码的规模和产品代码的规模能够达到1:1,也就是说编写测试代码的工作量还是比较大的,但是也要看到单元测试的产出。
在单元测试、集成测试、系统测试中,单元测试是投入产出比最大的测试种类,即单元测试在单位时间内发现的缺陷个数大于集成与系统测试。
原则上单元测试的投入最大,找到的缺陷最多,集成测试与系统测试依次递减。
5、在实践中推广单元测试时可以采用如下的方法:1)、加大静态检查的力度。
通过静态检查的工具快速地识别程序中的错误、警告,公司可以规定对检查出的哪些警告、错误必须进行修改,注意如果修改所有的警告、错误可能工作量比较大。
静态检查是一种投入产出比很高的单元测试方法。
在JAVA下可以采用check Style, Source monitor,PMD,Find Bugs,Jslink等。
2)、通过测试策略的选择减少测试程序的工作量。
单元测试一般有三种策略:策略一:自底向上的策略:先测底层的函数或类,再测上层的函数或类,此时只需要编写驱动程序,不需要编写桩程序。
策略二:自顶向下的策略:先测上层的函数或类,再测试底层的函数类,此时只需要编写桩程序,不需要或很少需要编写驱动程序。