- 您的位置:
- 标准下载网 >>
- 标准分类 >>
- 航天工业行业标准(QJ) >>
- QJ 3027-1998 航天型号软件测试规范

【航天工业行业标准(QJ)】 航天型号软件测试规范
本网站 发布时间:
2025-03-09 08:33:28
- QJ3027-1998
- 现行
标准号:
QJ 3027-1998
标准名称:
航天型号软件测试规范
标准类别:
航天工业行业标准(QJ)
标准状态:
现行-
发布日期:
1998-01-24 -
实施日期:
1998-04-01 出版语种:
简体中文下载格式:
.rar.pdf下载大小:
5.55 MB

部分标准内容:
航天工业行业
强制性标准
中国航天工业总公司航天工业行业标准QJ 3027—98
航天型号软件测试规范
1998—0124发布
中国航天工业总公司
1998—04—01实施
1范围
中国航天工业总公司航天工业行业标准航天型号软件测试规范
1.1主题内容
QJ3027-98
本标准规定了航天型号软件的单元测试、组装测试(软件部件集成和测试、确认测试(软件配置项测试)、系统联试及代码审查、回归测试的进入条件、测试流程、通过准则及评估要求。
1.2适用范围
本标准适用于航天型号弹(箭)、星(船)载计算机软件及关键软件的测试工作,其它软件测试工作可参照执行。
2引用文件
GB/T11457-95软件工程术语
3术语
同义词:系统测试
系统联试
与该软件所属的更大系统对接并测试其接口和功能的过程。其他术语定义见GB/T11457。
4一般要求
4.1测试目的
测试的目的如下:
a:验证软件是否满足软件研制任务书、软件需求规格说明和软件设计所规定的技术要求;
b。通过测试,发现软件问题;
c。为软件可靠性与安全性评估提供依据。4.2测试阶段及顺序
完整的测试工作贯穿软件开发全过程,测试必须包含下述各阶段,并以所列顺序进中国航天工业总公司1998-01-24批准1998-04-01实施
a.单元测试;
b.组装测试;
c.确认测试;
d.系统联试。
QJ3027-98
其中单元测试在软件实现阶段进行,单元测试、组装测试和确认测试是以软件为测试主体。系统联试以软件所属系统为测试主体,软件参加到系统中进行测试。4.3测试工作过程
各阶段测试工作必须遵循下述过程。4.3.1制定测试计划
确定测试范围、测试任务、测试项目、被测试特性、测试方法、进度、资源和评价准则,编写测试计划,测试计划的编写符合有关标准的要求。4.3.2建立测试环境
根据测试计划中规定的测试方法和测试资源,建立测试环境,选择测试工具。4.3.3产生测试用例集
根据被测试特性,设计测试用例,确定特性通过准则。为每一个测试用例制定输入、输出和测试规程,编写测试辅助程序,编写测试说明。测试说明的编写符合有关标准的要求。
4.3.4执行测试
按测试规程获得并验证所需要的输入数据,执行测试用例集,观察并记录,输出数据和其它状态现象。
4.3.5分析结果
根据测试用例的预期结果和实际运行结果,判定测试是否通过。如果通过则进行4.3.6条,否则,根据问题情况修改相应程序和(或)文档并重新进行测试。4.3.6评估
根据测试结果和特性通过准则,评估测试工作,当发现测试工作不足时,进行补充测试,直到测试达到预期的完备性要求。4.3.7编写测试报告
评价测试工作和被测软件。编写测试报告,测试报告的编写应符合有关标准的要求。4.4测试用例
测试用例应满足以下要求:
a测试用例必须包括输入数据、预期结果和测试规程;b.测试用例中的测试规程应包括测试用例的准备、初始化、中间步骤和结束;c。保留全部测试用例,并作为被测软件的配套的组成部分。4.5测试文档bZxz.net
各测试阶段均应编制测试计划、测试说明和测试报告三个测试文档,文档编制应符合有关标准的要求。测试文档应经过相应评审,并及时纳入配置管理。2
QJ3027-98
4.6软件生存期各阶段应完成的测试工作完整的软件测试工作是分布在软件生存期不同阶段完成的,一般要求确认测试从需求分析阶段开始编写测试计划、设计测试用例,并在确认测试开始前完成测试计划和测试说明,在确认测试阶段执行测试并完成测试报告;组装测试从概要设计阶段开始编制测试计划、设计测试用例,并在组装测试开始前完成测试计划和测试说明,在组装测试阶段执行测试并完成测试报告;单元测试从详细设计阶段开始编制测试计划、设计测试用例,并在软件实现阶段单元测试前完成测试计划和测试说明,在实现阶段单元测试时执行测试并完成测试报告;系统联试从需求分析阶段开始设计测试用例,在系统联试前完成设计并纳入系统联试大纲和操作细则,系统联试时执行测试并完成系统联试报告。在进入各测试阶段前,必须满足相应的进入条件,初步完成测试计划后应开始建立测试环境,并在进入相应测试阶段前完成。
4.7测试记录
各阶段测试都必须有计划地进行,测试记录包括输入数据、预期结果、测试结果及测试规程。必须存档保留,并且确保测试的重现性。4.8测试未通过处理
未达到测试通过准则的测试项目,应记录问题,并根据要求更改软件,在更改之后进行回归测试或再测试,回归测试见5.6条规定。5详细要求
5.1代码审查
5.1.1测试目的
代码审查的目的如下:
a,及时发现代码错误或岐义性;b.减少不同阶段的测试中修改错误所需的时间和工作。5.1.2进人条件
进入代码审查之前,要保证满足如下条件:a.代码无错误地通过编译或汇编;b.获得被测代码有关的文档,包括软件需求规格说明、概要设计说明、详细设计说明、代码清单和软、硬件接口说明。5.1.3测试内容
a:检查代码和设计的一致性;
b.检查代码的规范性、可读性;c.检查代码的逻辑表达的正确性;d.检查代码实现和结构的合理性。5.1.4技术要求
a.组织代码审查组进行代码审查。一个代码审查组至少由3人组成,一般应有测试人员、同行专家参加,还可以有交办方和软件开发人员参加。代码审查组必须设立一名组3
QJ3027-98
长,指定专人记录,软件开发人员必须参加必要的讨论会,回答疑问。b。必须使用代码审查单进行代码审查,代码审查单见附录B(参考件),应根据代码审查需要,剪裁可增补审查项目。c记录被发现的问题,填写代码审查问题表并完成签署,代码审查问题表的内容和格式见附录C(参考件)。
d若发现问题较多或发现重大问题,在修改程序后要再次组织代码审查。e.编制代码审查计划和代码审查报告,代码审查计划的内容和格式见附录D(参考件),代码审查报告的内容和格式见附录E(参考件)。f.代码审查会上不进行程序修改。5.1.5实施步骤
代码审查一般由编制计划、召开预备会、阅读程序、召开审查会及编写报告等5个步骤组成。
5.1.5.1编制计划
审查组组长应编制代码审查计划,代码审查计划的内容和格式见附录D(参考件),并确保审查材料分发给审查组成员,同时应安排好预备会及审查会的进度,使审查组成员有充分研究时间。审查组成员应在阅读材料时记下问题和疑点。5.1.5.2召开预备会
需要时召开预备会。预备会上,被测试软件的设计和编码人员向审查组详细说明所准备的文档,特别是代码的主要功能和功能间的关系,并回答审查组成员的问题。5.1.5.3阅读程序
所有审查人员仔细阅读代码和相关材料,对照代码审查单,标出需在审查会上提出的明显缺陷及问题,填写代码审查问题表。5.1.5.4召开审查会
审查会由审查组组长主持,审查会有以下两种形式:a,由软件开发人员宣读并解释审查材料,审查组成员按照代码审查单审查,标出缺陷和问题,连同程序审查阶段发现的问题随时或集中质疑、确认;b.由审查组成员顺次概述本人审查意见,提出缺陷及问题,由审查组讨论、确认。5.1.5.5审查人员职责
审查组组长负责使讨论沿建设性方向发展。审查组成员应在自已提出的代码审查问题表上签字。并由软件开发人员在代码审查问题表上签字认可。代码审查问题表由代码审查组组长汇总,交给程序编写者,并应妥善保管。5.1.5.6编写报告
审查组组长根据代码审查问题表和审查会记录,进行分类、统计,将审查情况及对被测代码的评估意见形成代码审查报告,审查报告的格式和内容见附录E(参考件)。5.1.6评估
根据代码审查问题表,评估程序实现,建议是否要重新进行代码审查。5.1.7通过准则
QJ3027-98
a.全部代码清单均已被审查,无遗漏;b。对问题的解释已列在代码审查问题表上;c.全部代码审查问题表由软件开发人员签字认可;d完成代码审查计划、代码审查问题表汇总和代码审查报告。5.2单元测试
5.2.1测试目的
检验每个软件单元能否正确地实现其功能,满足其性能和接口等的要求。5.2.2进入条件
单元测试执行前应具备下列条件:a:具有软件研制任务书、软件需求规格说明、概要设计说明、详细设计说明、单元测试计划和单元测试说明;
b。符合规格的软件单元源程序清单,并已无错误地通过编译或汇编;c.已具备了规定的单元测试环境和测试工具。5.2.3测试内容
单元测试应包含以下各项:
a.软件单元的功能测试;
b.软件单元的接口测试;
c.重要执行路径的测试;
d。局部数据结构测试;
e.错误处理测试;
f.影响上述各条的边界条件测试。5.2.4技术要求
单元测试应满足以下技术要求:a.单元测试应首先进行代码审查,代码审查的具体要求见5.1;b.被测单元中每条可执行语句或指令、每个软件特性都必须被测试用例或被认可的异常覆盖,语句覆盖率要达到100%;c.必须在每个分支点上进行测试,要求分支覆盖率达到100%,错误处理路径覆盖率达到100%;
d.应使用额定数据值、奇异数据值和边界数据值,如最大、最小值,0、+0、-0值等,进行计算并检验其运算的正确性和精确性,检验对非法输入的处理能力;e.应对输入数据或信息进行检验;f.应对输出数据或信息的输出格式进行检验;g.对实时软件、嵌入式软件等有特殊要求的软件单元,应进行占用空间、运行时间等测试。
5.2.5实施步骤
单元测试应按下列步骤实施:
a:完善单元测试计划、单元测试说明、单元测试用例,审查通过后实施;5
b.必要时编写测试辅助程序;
QJ3027-98
c.按计划实施单元测试,执行单元测试用例,详细记录执行信息,填写测试结果表,格式按有关标准;
d。必须根据每个测试用例的预期输出结果和实际运行结果,判定该项测试是否通过如某项测试未通过,应填写软件问题报告单,格式按有关标准,分析产生问题原因,修正后再测试,直至通过;
e:编写单元测试报告,格式按有关标准。5.2.6测试评估
应根据详细设计说明、单元测试报告中的测试结果和软件问题报告单,评估每个软件单元的设计及其实现。
5.2.7通过准则
应以详细设计说明为指南,满足以下准则:a:软件单元通过代码审查;
b。单元功能、性能和接口与设计说明一致;c.达到5.2.4条中所规定的覆盖率;d.软件单元能正确处理输入和运行中的错误;e.已对发现的问题进行修改并通过了相应测试;f.完成单元测试报告,格式按有关标准。5.3组装测试
5.3.1测试目的
检验软件单元和(或)软件部件之间的接口关系,逐步将软件单元和(或)软件部件集成一个新的符合设计要求的软件部件,最终形成软件配置项。5.3.2进入条件
组装测试执行前应具备以下条件:a.具有软件研制任务书、软件需求规格说明、概要设计说明、详细设计说明,组装测试计划和组装测试说明;
b。被集成的软件单元已完成单元测试或经认可,并已纳入配置管理;c.已具备了规定的组装测试环境和测试工具。5.3.3测试内容
组装测试过程和结果的内容应包括:a软件单元和(或)软件部件的接口测试;b.软件部件和(或)软件配置项的功能、性能和接口测试;c.全局数据结构测试;
d.需要时,实时软件部件必须进行运行时间测试,嵌入式软件部件必须进行运行空间测试,有数据精度要求的软件部件必须进行计算精度测试;e边界条件和非法输入的性能测试。5.3.4技术要求
组装测试应满足以下技术要求:QJ3027-98
a:可以同时采用代码审查进行测试;b。应采用增量测试法验证新的软件单元和(或)软件部件可与已有的软件部件一起执行;
c.必须对有调用关系的软件单元和(或)软件部件之间的所有调用进行测试,验证每个调用接口的完整性和一致性;d。应对软件部件进行正确处理能力和经受错误影响的能力进行测试;e.应测试在任意外部输入情况下,从外部接口采集和(或)发送数据的能力,包括对正确数据及状态的处理,对接口错误、数据错误、协议错误的识别及处理;f.应测试运行条件(如数据结构、I/O通道容量、内存空间、调用频率等)在边界状态下,进而在人为设定的状态下,软件部件的功能和性能,可参照5.2.4条的d、e、f、g执行;
g.对汇编语言程序,应测试被调用单元(包括各类中断)对调用程序的影响,如状态位和寄存器保护等。
5.3.5实施步骤
组装测试应按下列步骤实施:
a.完善组装测试计划、组装测试说明、组装测试用例,填写测试用例单,审查通过后实施;
b。按计划要求建立组装测试环境,使用已批准的数据,按测试用例进行测试,必要时编写测试辅助程序;
c.详细记录测试信息填写测试结果表,格式按有关标准,根据每个测试用例的预期输出结果和实际运行结果,分析测试结果,判定该项测试是否通过,如不通过,填写软件问题报告单,格式按有关标准,找出产生问题的原因,修正后进行回归测试,见5.6条规定,直到通过;
d.新的软件部件加到已有软件部件中后,还必须验证旧的软件部件仍保持原有的特性和功能;
e.完成组装测试报告,格式按有关标准。5.3.6测试评估
根据概要设计说明、组装测试结果和软件问题报告单,评估软件结构的设计及实现。5.3.7通过准则
应以概要设计说明为指南,满足以下准则:a.软件单元和(或)软件部件无错误连接;b.满足各项功能、性能要求;
c.对错误有正确的处理;
d.对测试中异常有合理解释;
e.人机界面,对外接口正确无误;f.完成组装测试报告;
g.软件配置项已集成。
5.4软件配置项测试
5.4.1测试目的
QJ3027-98
测试计算机软件配置项与软件需求规格说明的一致性。5.4.2进人条件
确认测试执行前应具备下列条件:a。通过评审的以前各阶段各类软件文档、软件问题报告单、确认测试计划、确认测试说明;
b.经过交办方、软件开发方认可的确认测试环境,对于需固化运行的软件应提供固件;
c.完成组装测试的计算机软件配置项且经过评审,并已在软件开发方的软件配置管理控制之下。
5.4.3测试内容
确认测试应包括以下内容:
a.功能测试;
b.性能测试;
c.余量测试;
d.边界测试。
对于要求固化运行的软件应以固件进行上述四项测试。根据软件的重要性和复杂性或软件需求规格说明的要求,选择进行以下各项测试:a:人机交互界面测试;
b.强度测试;
c.安全性测试;
d.可靠性测试;
e.可恢复性测试;
f.数据处理测试;
g.外部接口测试;
h.可安装性测试。
5.4.4技术要求
5.4.4.1功能测试
a,每一个软件功能必须被测试用例或被认可的异常覆盖;b.用要求的数据类型和数据值进行测试;c.用一系列合理的数据类型和数据值运行,测试超负荷、饱和及其它“最坏”情况
的结果;
d。用假想的数据类型和数据值运行,测试排斥不规则输入的能力。5.4.4.2性能测试
a:测试软件在获得定量结果时计算的精确性;8
QJ3027-98
b.对有时间要求的软件,必须测试实际运行时间;c.测试软件完成功能所能处理的数据量;d.测试软件各部分的协调性,如高速、低速操作的协调;e:测试软件需求规格说明中的其它性能指标。5.4.4.3余量测试
测试软件全部存储量、输入/输出通道及处理时间的余量。5.4.4.4边界测试
测试软件在输入域(或输出域)、数据结构、状态转换、过程参数、功能界限等的边界或端点情况下的运行状态。
5.4.4.5人机交互界面测试
a测试所有人机交互界面提供的操作和显示界面,以非常规操作、误操作、快速操作来检验界面的可靠性;
b.应对照用户手册和(或)操作手册逐条进行操作和观察。5.4.4.6强度测试
强度测试是在预先规定的一段时间内,在软件设计的极限状态下,进一步在超出设计能力的状态下,测试软件的所有功能。具体详见附录A(补充件)。5.4.4.7安全性测试
a,在测试中全面检验软件在软件需求规格说明中规定的防止危险状态措施的有效性和每一个危险状态下的反应;
b.对软件设计中用于提高安全性的结构、算法、容错、余、中断处理等方案,应进行针对性测试;
c.除在正常条件下测试外,应在异常条件下测试软件,以表明不会因可能的单个或多个输入错误而导致的不安全状态;d.应包括安全关键操作错误的测试,验证系统对这些操作错误的反应;e:对安全性关键的软件部件,应单独测试,以确认该软件部件满足安全性需求,对于变更的安全性关键的软件部件,应进行全面的回归测试,见5.6条规定。5.4.4.8可靠性测试
a.采用随机方法选择测试用例,可靠性测试时应保证输入覆盖,输入覆盖包括:输入域覆盖、各种相关功能的覆盖、相关变量可能组合的覆盖、设计输入空间与实际输入空间区域的覆盖;
b,被测软件的测试环境应和预期的实际使用环境尽可能一致;c.对于可能导致软件运行方式改变的一些边界条件和环境条件应进行针对性测试d.测试时应记录测试结果、运行时间和判断结果,如果软件失效,还应记录下失效现象和时间;
e:根据以前各阶段的软件问题报告单,设计针对性测试用例。5.4.4.9可恢复性测试
对有恢复或重置(RESET)功能的软件(如重新复位、重新加电、各类“看门狗”),9
QJ3027-98
应验证恢复或重置功能,对每一类导致恢复或重置的情况进行测试。5.4.4.10数据处理测试
测试完成专门特性的数据处理功能(如数据采集、合并、转换、不合理数据剔除,数据解释功能等)。
5.4.4.11外部接口测试
a。测试所有外部接口,检查接口信息的格式和内容;b每一个外部输入/输出接口应进行正常和异常情况测试。5.4.4.12可安装性测试
接安装规程进行安装正确性测试,包括参数装订、程序加载等。5.4.5实施步骤
确认测试应根据已评审通过后的确认测试计划,在已建立的测试环境下接下列步骤实施:
a。完善确认测试说明和测试用例;b.建立独立的测试小组进行确认测试,与此相关的每个软件开发方必须提供必要的技术支持;
c.执行确认测试用例,并详细记录执行信息,填写测试结果表,格式按有关标准;d.根据每个测试用例的预期输出结果和实际运行结果,分析测试结果,在发现问题时,填写软件问题报告单,格式按有关标准;e.编写确认测试报告,格式参按有关标准。5.4.6测试评估
根据软件需求规格说明、确认测试结果和软件问题报告单,评估软件功能、性能的设计及实现。
5.4.7通过准则
确认测试计划要求完成规定的测试工作,并且:a满足软件需求规格说明中规定的所有功能、性能、约束及限制要求;b.所有已发现的缺陷的影响均被消除,或缺陷的影响虽未消除,但已弄清带着缺陷运行的风险,并经认可;
c.对于需固化运行的软件,已以固件形式测试;d.完成确认测试报告。
5.5系统联试
5.5.1测试目的
在真实系统工作环境下检验完整软件配置项是否能和系统正确连接,并满足软件研制任务书的功能和性能要求。
5.5.2进入条件
软件系统联试执行前应具备以下条件:a:软件必须通过确认测试;
b。所有软件配置项纳入配置管理:10
小提示:此标准内容仅展示完整标准里的部分截取内容,若需要完整标准请到上方自行免费下载完整标准文档。
强制性标准
中国航天工业总公司航天工业行业标准QJ 3027—98
航天型号软件测试规范
1998—0124发布
中国航天工业总公司
1998—04—01实施
1范围
中国航天工业总公司航天工业行业标准航天型号软件测试规范
1.1主题内容
QJ3027-98
本标准规定了航天型号软件的单元测试、组装测试(软件部件集成和测试、确认测试(软件配置项测试)、系统联试及代码审查、回归测试的进入条件、测试流程、通过准则及评估要求。
1.2适用范围
本标准适用于航天型号弹(箭)、星(船)载计算机软件及关键软件的测试工作,其它软件测试工作可参照执行。
2引用文件
GB/T11457-95软件工程术语
3术语
同义词:系统测试
系统联试
与该软件所属的更大系统对接并测试其接口和功能的过程。其他术语定义见GB/T11457。
4一般要求
4.1测试目的
测试的目的如下:
a:验证软件是否满足软件研制任务书、软件需求规格说明和软件设计所规定的技术要求;
b。通过测试,发现软件问题;
c。为软件可靠性与安全性评估提供依据。4.2测试阶段及顺序
完整的测试工作贯穿软件开发全过程,测试必须包含下述各阶段,并以所列顺序进中国航天工业总公司1998-01-24批准1998-04-01实施
a.单元测试;
b.组装测试;
c.确认测试;
d.系统联试。
QJ3027-98
其中单元测试在软件实现阶段进行,单元测试、组装测试和确认测试是以软件为测试主体。系统联试以软件所属系统为测试主体,软件参加到系统中进行测试。4.3测试工作过程
各阶段测试工作必须遵循下述过程。4.3.1制定测试计划
确定测试范围、测试任务、测试项目、被测试特性、测试方法、进度、资源和评价准则,编写测试计划,测试计划的编写符合有关标准的要求。4.3.2建立测试环境
根据测试计划中规定的测试方法和测试资源,建立测试环境,选择测试工具。4.3.3产生测试用例集
根据被测试特性,设计测试用例,确定特性通过准则。为每一个测试用例制定输入、输出和测试规程,编写测试辅助程序,编写测试说明。测试说明的编写符合有关标准的要求。
4.3.4执行测试
按测试规程获得并验证所需要的输入数据,执行测试用例集,观察并记录,输出数据和其它状态现象。
4.3.5分析结果
根据测试用例的预期结果和实际运行结果,判定测试是否通过。如果通过则进行4.3.6条,否则,根据问题情况修改相应程序和(或)文档并重新进行测试。4.3.6评估
根据测试结果和特性通过准则,评估测试工作,当发现测试工作不足时,进行补充测试,直到测试达到预期的完备性要求。4.3.7编写测试报告
评价测试工作和被测软件。编写测试报告,测试报告的编写应符合有关标准的要求。4.4测试用例
测试用例应满足以下要求:
a测试用例必须包括输入数据、预期结果和测试规程;b.测试用例中的测试规程应包括测试用例的准备、初始化、中间步骤和结束;c。保留全部测试用例,并作为被测软件的配套的组成部分。4.5测试文档bZxz.net
各测试阶段均应编制测试计划、测试说明和测试报告三个测试文档,文档编制应符合有关标准的要求。测试文档应经过相应评审,并及时纳入配置管理。2
QJ3027-98
4.6软件生存期各阶段应完成的测试工作完整的软件测试工作是分布在软件生存期不同阶段完成的,一般要求确认测试从需求分析阶段开始编写测试计划、设计测试用例,并在确认测试开始前完成测试计划和测试说明,在确认测试阶段执行测试并完成测试报告;组装测试从概要设计阶段开始编制测试计划、设计测试用例,并在组装测试开始前完成测试计划和测试说明,在组装测试阶段执行测试并完成测试报告;单元测试从详细设计阶段开始编制测试计划、设计测试用例,并在软件实现阶段单元测试前完成测试计划和测试说明,在实现阶段单元测试时执行测试并完成测试报告;系统联试从需求分析阶段开始设计测试用例,在系统联试前完成设计并纳入系统联试大纲和操作细则,系统联试时执行测试并完成系统联试报告。在进入各测试阶段前,必须满足相应的进入条件,初步完成测试计划后应开始建立测试环境,并在进入相应测试阶段前完成。
4.7测试记录
各阶段测试都必须有计划地进行,测试记录包括输入数据、预期结果、测试结果及测试规程。必须存档保留,并且确保测试的重现性。4.8测试未通过处理
未达到测试通过准则的测试项目,应记录问题,并根据要求更改软件,在更改之后进行回归测试或再测试,回归测试见5.6条规定。5详细要求
5.1代码审查
5.1.1测试目的
代码审查的目的如下:
a,及时发现代码错误或岐义性;b.减少不同阶段的测试中修改错误所需的时间和工作。5.1.2进人条件
进入代码审查之前,要保证满足如下条件:a.代码无错误地通过编译或汇编;b.获得被测代码有关的文档,包括软件需求规格说明、概要设计说明、详细设计说明、代码清单和软、硬件接口说明。5.1.3测试内容
a:检查代码和设计的一致性;
b.检查代码的规范性、可读性;c.检查代码的逻辑表达的正确性;d.检查代码实现和结构的合理性。5.1.4技术要求
a.组织代码审查组进行代码审查。一个代码审查组至少由3人组成,一般应有测试人员、同行专家参加,还可以有交办方和软件开发人员参加。代码审查组必须设立一名组3
QJ3027-98
长,指定专人记录,软件开发人员必须参加必要的讨论会,回答疑问。b。必须使用代码审查单进行代码审查,代码审查单见附录B(参考件),应根据代码审查需要,剪裁可增补审查项目。c记录被发现的问题,填写代码审查问题表并完成签署,代码审查问题表的内容和格式见附录C(参考件)。
d若发现问题较多或发现重大问题,在修改程序后要再次组织代码审查。e.编制代码审查计划和代码审查报告,代码审查计划的内容和格式见附录D(参考件),代码审查报告的内容和格式见附录E(参考件)。f.代码审查会上不进行程序修改。5.1.5实施步骤
代码审查一般由编制计划、召开预备会、阅读程序、召开审查会及编写报告等5个步骤组成。
5.1.5.1编制计划
审查组组长应编制代码审查计划,代码审查计划的内容和格式见附录D(参考件),并确保审查材料分发给审查组成员,同时应安排好预备会及审查会的进度,使审查组成员有充分研究时间。审查组成员应在阅读材料时记下问题和疑点。5.1.5.2召开预备会
需要时召开预备会。预备会上,被测试软件的设计和编码人员向审查组详细说明所准备的文档,特别是代码的主要功能和功能间的关系,并回答审查组成员的问题。5.1.5.3阅读程序
所有审查人员仔细阅读代码和相关材料,对照代码审查单,标出需在审查会上提出的明显缺陷及问题,填写代码审查问题表。5.1.5.4召开审查会
审查会由审查组组长主持,审查会有以下两种形式:a,由软件开发人员宣读并解释审查材料,审查组成员按照代码审查单审查,标出缺陷和问题,连同程序审查阶段发现的问题随时或集中质疑、确认;b.由审查组成员顺次概述本人审查意见,提出缺陷及问题,由审查组讨论、确认。5.1.5.5审查人员职责
审查组组长负责使讨论沿建设性方向发展。审查组成员应在自已提出的代码审查问题表上签字。并由软件开发人员在代码审查问题表上签字认可。代码审查问题表由代码审查组组长汇总,交给程序编写者,并应妥善保管。5.1.5.6编写报告
审查组组长根据代码审查问题表和审查会记录,进行分类、统计,将审查情况及对被测代码的评估意见形成代码审查报告,审查报告的格式和内容见附录E(参考件)。5.1.6评估
根据代码审查问题表,评估程序实现,建议是否要重新进行代码审查。5.1.7通过准则
QJ3027-98
a.全部代码清单均已被审查,无遗漏;b。对问题的解释已列在代码审查问题表上;c.全部代码审查问题表由软件开发人员签字认可;d完成代码审查计划、代码审查问题表汇总和代码审查报告。5.2单元测试
5.2.1测试目的
检验每个软件单元能否正确地实现其功能,满足其性能和接口等的要求。5.2.2进入条件
单元测试执行前应具备下列条件:a:具有软件研制任务书、软件需求规格说明、概要设计说明、详细设计说明、单元测试计划和单元测试说明;
b。符合规格的软件单元源程序清单,并已无错误地通过编译或汇编;c.已具备了规定的单元测试环境和测试工具。5.2.3测试内容
单元测试应包含以下各项:
a.软件单元的功能测试;
b.软件单元的接口测试;
c.重要执行路径的测试;
d。局部数据结构测试;
e.错误处理测试;
f.影响上述各条的边界条件测试。5.2.4技术要求
单元测试应满足以下技术要求:a.单元测试应首先进行代码审查,代码审查的具体要求见5.1;b.被测单元中每条可执行语句或指令、每个软件特性都必须被测试用例或被认可的异常覆盖,语句覆盖率要达到100%;c.必须在每个分支点上进行测试,要求分支覆盖率达到100%,错误处理路径覆盖率达到100%;
d.应使用额定数据值、奇异数据值和边界数据值,如最大、最小值,0、+0、-0值等,进行计算并检验其运算的正确性和精确性,检验对非法输入的处理能力;e.应对输入数据或信息进行检验;f.应对输出数据或信息的输出格式进行检验;g.对实时软件、嵌入式软件等有特殊要求的软件单元,应进行占用空间、运行时间等测试。
5.2.5实施步骤
单元测试应按下列步骤实施:
a:完善单元测试计划、单元测试说明、单元测试用例,审查通过后实施;5
b.必要时编写测试辅助程序;
QJ3027-98
c.按计划实施单元测试,执行单元测试用例,详细记录执行信息,填写测试结果表,格式按有关标准;
d。必须根据每个测试用例的预期输出结果和实际运行结果,判定该项测试是否通过如某项测试未通过,应填写软件问题报告单,格式按有关标准,分析产生问题原因,修正后再测试,直至通过;
e:编写单元测试报告,格式按有关标准。5.2.6测试评估
应根据详细设计说明、单元测试报告中的测试结果和软件问题报告单,评估每个软件单元的设计及其实现。
5.2.7通过准则
应以详细设计说明为指南,满足以下准则:a:软件单元通过代码审查;
b。单元功能、性能和接口与设计说明一致;c.达到5.2.4条中所规定的覆盖率;d.软件单元能正确处理输入和运行中的错误;e.已对发现的问题进行修改并通过了相应测试;f.完成单元测试报告,格式按有关标准。5.3组装测试
5.3.1测试目的
检验软件单元和(或)软件部件之间的接口关系,逐步将软件单元和(或)软件部件集成一个新的符合设计要求的软件部件,最终形成软件配置项。5.3.2进入条件
组装测试执行前应具备以下条件:a.具有软件研制任务书、软件需求规格说明、概要设计说明、详细设计说明,组装测试计划和组装测试说明;
b。被集成的软件单元已完成单元测试或经认可,并已纳入配置管理;c.已具备了规定的组装测试环境和测试工具。5.3.3测试内容
组装测试过程和结果的内容应包括:a软件单元和(或)软件部件的接口测试;b.软件部件和(或)软件配置项的功能、性能和接口测试;c.全局数据结构测试;
d.需要时,实时软件部件必须进行运行时间测试,嵌入式软件部件必须进行运行空间测试,有数据精度要求的软件部件必须进行计算精度测试;e边界条件和非法输入的性能测试。5.3.4技术要求
组装测试应满足以下技术要求:QJ3027-98
a:可以同时采用代码审查进行测试;b。应采用增量测试法验证新的软件单元和(或)软件部件可与已有的软件部件一起执行;
c.必须对有调用关系的软件单元和(或)软件部件之间的所有调用进行测试,验证每个调用接口的完整性和一致性;d。应对软件部件进行正确处理能力和经受错误影响的能力进行测试;e.应测试在任意外部输入情况下,从外部接口采集和(或)发送数据的能力,包括对正确数据及状态的处理,对接口错误、数据错误、协议错误的识别及处理;f.应测试运行条件(如数据结构、I/O通道容量、内存空间、调用频率等)在边界状态下,进而在人为设定的状态下,软件部件的功能和性能,可参照5.2.4条的d、e、f、g执行;
g.对汇编语言程序,应测试被调用单元(包括各类中断)对调用程序的影响,如状态位和寄存器保护等。
5.3.5实施步骤
组装测试应按下列步骤实施:
a.完善组装测试计划、组装测试说明、组装测试用例,填写测试用例单,审查通过后实施;
b。按计划要求建立组装测试环境,使用已批准的数据,按测试用例进行测试,必要时编写测试辅助程序;
c.详细记录测试信息填写测试结果表,格式按有关标准,根据每个测试用例的预期输出结果和实际运行结果,分析测试结果,判定该项测试是否通过,如不通过,填写软件问题报告单,格式按有关标准,找出产生问题的原因,修正后进行回归测试,见5.6条规定,直到通过;
d.新的软件部件加到已有软件部件中后,还必须验证旧的软件部件仍保持原有的特性和功能;
e.完成组装测试报告,格式按有关标准。5.3.6测试评估
根据概要设计说明、组装测试结果和软件问题报告单,评估软件结构的设计及实现。5.3.7通过准则
应以概要设计说明为指南,满足以下准则:a.软件单元和(或)软件部件无错误连接;b.满足各项功能、性能要求;
c.对错误有正确的处理;
d.对测试中异常有合理解释;
e.人机界面,对外接口正确无误;f.完成组装测试报告;
g.软件配置项已集成。
5.4软件配置项测试
5.4.1测试目的
QJ3027-98
测试计算机软件配置项与软件需求规格说明的一致性。5.4.2进人条件
确认测试执行前应具备下列条件:a。通过评审的以前各阶段各类软件文档、软件问题报告单、确认测试计划、确认测试说明;
b.经过交办方、软件开发方认可的确认测试环境,对于需固化运行的软件应提供固件;
c.完成组装测试的计算机软件配置项且经过评审,并已在软件开发方的软件配置管理控制之下。
5.4.3测试内容
确认测试应包括以下内容:
a.功能测试;
b.性能测试;
c.余量测试;
d.边界测试。
对于要求固化运行的软件应以固件进行上述四项测试。根据软件的重要性和复杂性或软件需求规格说明的要求,选择进行以下各项测试:a:人机交互界面测试;
b.强度测试;
c.安全性测试;
d.可靠性测试;
e.可恢复性测试;
f.数据处理测试;
g.外部接口测试;
h.可安装性测试。
5.4.4技术要求
5.4.4.1功能测试
a,每一个软件功能必须被测试用例或被认可的异常覆盖;b.用要求的数据类型和数据值进行测试;c.用一系列合理的数据类型和数据值运行,测试超负荷、饱和及其它“最坏”情况
的结果;
d。用假想的数据类型和数据值运行,测试排斥不规则输入的能力。5.4.4.2性能测试
a:测试软件在获得定量结果时计算的精确性;8
QJ3027-98
b.对有时间要求的软件,必须测试实际运行时间;c.测试软件完成功能所能处理的数据量;d.测试软件各部分的协调性,如高速、低速操作的协调;e:测试软件需求规格说明中的其它性能指标。5.4.4.3余量测试
测试软件全部存储量、输入/输出通道及处理时间的余量。5.4.4.4边界测试
测试软件在输入域(或输出域)、数据结构、状态转换、过程参数、功能界限等的边界或端点情况下的运行状态。
5.4.4.5人机交互界面测试
a测试所有人机交互界面提供的操作和显示界面,以非常规操作、误操作、快速操作来检验界面的可靠性;
b.应对照用户手册和(或)操作手册逐条进行操作和观察。5.4.4.6强度测试
强度测试是在预先规定的一段时间内,在软件设计的极限状态下,进一步在超出设计能力的状态下,测试软件的所有功能。具体详见附录A(补充件)。5.4.4.7安全性测试
a,在测试中全面检验软件在软件需求规格说明中规定的防止危险状态措施的有效性和每一个危险状态下的反应;
b.对软件设计中用于提高安全性的结构、算法、容错、余、中断处理等方案,应进行针对性测试;
c.除在正常条件下测试外,应在异常条件下测试软件,以表明不会因可能的单个或多个输入错误而导致的不安全状态;d.应包括安全关键操作错误的测试,验证系统对这些操作错误的反应;e:对安全性关键的软件部件,应单独测试,以确认该软件部件满足安全性需求,对于变更的安全性关键的软件部件,应进行全面的回归测试,见5.6条规定。5.4.4.8可靠性测试
a.采用随机方法选择测试用例,可靠性测试时应保证输入覆盖,输入覆盖包括:输入域覆盖、各种相关功能的覆盖、相关变量可能组合的覆盖、设计输入空间与实际输入空间区域的覆盖;
b,被测软件的测试环境应和预期的实际使用环境尽可能一致;c.对于可能导致软件运行方式改变的一些边界条件和环境条件应进行针对性测试d.测试时应记录测试结果、运行时间和判断结果,如果软件失效,还应记录下失效现象和时间;
e:根据以前各阶段的软件问题报告单,设计针对性测试用例。5.4.4.9可恢复性测试
对有恢复或重置(RESET)功能的软件(如重新复位、重新加电、各类“看门狗”),9
QJ3027-98
应验证恢复或重置功能,对每一类导致恢复或重置的情况进行测试。5.4.4.10数据处理测试
测试完成专门特性的数据处理功能(如数据采集、合并、转换、不合理数据剔除,数据解释功能等)。
5.4.4.11外部接口测试
a。测试所有外部接口,检查接口信息的格式和内容;b每一个外部输入/输出接口应进行正常和异常情况测试。5.4.4.12可安装性测试
接安装规程进行安装正确性测试,包括参数装订、程序加载等。5.4.5实施步骤
确认测试应根据已评审通过后的确认测试计划,在已建立的测试环境下接下列步骤实施:
a。完善确认测试说明和测试用例;b.建立独立的测试小组进行确认测试,与此相关的每个软件开发方必须提供必要的技术支持;
c.执行确认测试用例,并详细记录执行信息,填写测试结果表,格式按有关标准;d.根据每个测试用例的预期输出结果和实际运行结果,分析测试结果,在发现问题时,填写软件问题报告单,格式按有关标准;e.编写确认测试报告,格式参按有关标准。5.4.6测试评估
根据软件需求规格说明、确认测试结果和软件问题报告单,评估软件功能、性能的设计及实现。
5.4.7通过准则
确认测试计划要求完成规定的测试工作,并且:a满足软件需求规格说明中规定的所有功能、性能、约束及限制要求;b.所有已发现的缺陷的影响均被消除,或缺陷的影响虽未消除,但已弄清带着缺陷运行的风险,并经认可;
c.对于需固化运行的软件,已以固件形式测试;d.完成确认测试报告。
5.5系统联试
5.5.1测试目的
在真实系统工作环境下检验完整软件配置项是否能和系统正确连接,并满足软件研制任务书的功能和性能要求。
5.5.2进入条件
软件系统联试执行前应具备以下条件:a:软件必须通过确认测试;
b。所有软件配置项纳入配置管理:10
小提示:此标准内容仅展示完整标准里的部分截取内容,若需要完整标准请到上方自行免费下载完整标准文档。

标准图片预览:





- 其它标准
- 上一篇: QJ 3026-1998 软件异常分类
- 下一篇: QJ 3028-1998 液氢加注车通用规范
- 热门标准
- 航天工业行业标准(QJ)标准计划
- QJ3217-2005 潜在分析方法和程序
- QJ903.2A-1995 航天产品工艺文件管理制度 工艺文件编制的一般要求
- QJ3214-2005 复合固体推进剂研制生产单位安全评价
- QJ3216.1-2005 真空扩散钎焊用锰镀层 第1部分:规范
- QJ3218-2005 UG三维建模与二维制图通用要求
- QJ2241A-2004 返回式卫星天线通用规范
- QJ1194.5-1987 教育系统数据 大学本科、专科科目分类及代码
- QJ1228B-2004 模块式DC/DC电源变换器系列
- QJ1456A-1997 单自由度液浮速率积分陀螺仪通用规范
- QJ3296.2-2008 蜂窝夹层结构用镶嵌件 第2部分:通孔B型镶嵌件
- QJ3296.4-2008 蜂窝夹层结构用镶嵌件 第4部分:通孔螺纹A型镶嵌件
- QJ2545-1993 航天用计算机软件项目管理规范
- QJ1000.18-1986 机床夹具零件及部件工艺卡片 压入式螺纹衬套(用于普通螺纹)
- QJ1000.37-1986 机床夹具零件及部件工艺卡片 光面压块
- QJ1835.3-1990 航天工业标准制修定工作管理办法 制修定工作阶段划分
请牢记:“bzxz.net”即是“标准下载”四个汉字汉语拼音首字母与国际顶级域名“.net”的组合。 ©2009 标准下载网 www.bzxz.net 本站邮件:[email protected]
网站备案号:湘ICP备2023016450号-1
网站备案号:湘ICP备2023016450号-1