首页 > 文章中心 > 软件测试报告

软件测试报告

前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇软件测试报告范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。

软件测试报告

软件测试报告范文第1篇

由权威调查机构的《2014年软件测试从业人员调查报告》显示,软件测试行业呈现出以下几大特征:

一、软件测试行业人才缺口大

数据显示,被调查测试人员所属公司中,互联网行业及金融行业分别占42.81%和18.15%,综合占比超过六成,这也印证了经济结构调整的成果,目前互联网行业和金融行业受到了投资者和个人的青睐,企业需求急剧上升,软件测试人才缺口巨大。

二、软件测试人员稀缺

然而,在被调查者所在公司中,测试人员与开发人员的比例在1:4及以上的高达55.13%。在这些公司中,49.66%的公司每年对测试人员进行的培训次数为0。也就是说,将近一半的软件测试人员在工作后没有进行培训学习的机会,这就要求想从事软件测试的人员在入职前培训相关的技能,确保工作可以顺利开展。

三、软件测试行业前景光明

在被调查者中,进行了一年左右软件测试工作的人员占据了72.26%。其中,大专学历及本科学历的比例分别为34.93%和58.22%,他们的薪资在6000元及以上的占据了53.43%,软件测试工程师薪酬高成为不争的事实。

软件测试报告范文第2篇

【关键词】计算机软件;软件测试;生命周期;BSS系统;IT系统

1 引言

通信行业通常有三个相对独立的IT系统:OSS运营支撑系统、BSS业务支撑系统、管理支撑系统。其中,BSS是通信行业对外向客户直接服务的系统,管理着企业的各类客户资料,为各类客户提供业务受理和计费服务。BSS系统做得好坏,直接牵涉到最终用户对通信业务的使用。要保证BSS系统的质量,就需要在BSS系统的各个环节把好质量关。

本文的研究任务就是通过软件测试环节提高BSS系统软件的效率,从而大大提高企业的信息化服务水平,使业务支撑部门对业务部门进行强有力的支撑。

2 软件测试研究基础

软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。软件测试贯穿整个软件系统的生命周期中,为保证服务质量,软件测试要经过开发过程中的单元测试,集成测试,以及软件交付后的确认测试,系统测试,验收测试,还有软件使用后的回归测试。如图所示:

2.1 单元测试

单元测试是在软件开发过程中要进行的最低级别的测试活动,在单元测试活动中,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。单元测试不仅仅是作为无错编码一种辅助手段在一次性的开发过程中使用,单元测试必须是可重复的,无论是在软件修改,或是移植到新的运行环境的过程中。

2.2 集成测试

集成测试,也叫组装测试或联合测试,是单元测试的逻辑扩展。在单元测试的基础上,将所有模块按照设计要求组装成为子系统或系统,进行集成测试。实践表明,一些模块虽然能够单独地工作,但并不能保证连接起来也能正常的工作。

2.3确认测试

确认测试又称有效性测试。有效性测试是在模拟的环境下,运用黑盒测试的方法,验证被测软件是否满足需求规格说明书列出的需求。任务是验证软件的功能和性能及其他特性是否与用户的要求一致。

2.4 系统测试

系统测试是将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方。

2.5 验收测试

验收测试是系统开发生命周期方法论的一个阶段,这时相关的用户和独立测试人员根据测试计划和结果对系统进行测试和接收。它让系统用户决定是否接收系统。验收测试是部署软件之前的最后一个测试操作。验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。

2.6 回归测试

伴随着软件生命周期中的任何一个阶段,还有一个重要的测试环节是回归测试。只要软件发生了改变,就可能给该软件带来问题。软件的改变可能是源于发现了错误并做了修改,也有可能是因为在集成或维护阶段加入了新的模块。

3 案例分析及研究

3.1 验收测试在通信行业BSS系统中的应用研究

本案中,软件上线前,要经过初验和终验,初验是对软件的初次验收,根据合同要求,初验时一般要满足的条件是,软件程序在一定的范围内上线试运行,并在试运行过程中故障率不超过一定的范围。初验过程中,使用人员对软件进行充分的使用,尽量多的遍历所有的分支点,对软件开发商提出更详细的需求改造要求,软件厂家在此阶段都会尽可能快地做出修改,并提交给使用人员。这样重复多次,直到达到初验要求,项目会继续推广到更大的范围。大范围使用后,使用人员会随之增多,必将会碰到更大更多的问题,在经过软件厂家的修改优化,达到软件程序稳定运行的效果,此时,项目才满足终验条件。终验后,软件厂家会维护一段时间,签订长期的维护合同。

根据这种情况,验收测试是在软件程序的初验和终验都要涉及到的。测试目的都是尽量查找软件的漏洞以便得以修改,测试的方法是功能测试涉及较多一点。BSS系统验收测试的目的是确认系统是否满足产品需求规格说明和技术合同的相关规定,继而能否满足企业应用需求。一般需要通过实施预定的测试计划和测试执行活动,确认系统的功能需求、性能需求和文档需求。BSS系统是较复杂的大规模系统,其验收测试具体包括:安装测试、功能测试、界面测试、性能测试、文档测试、负载压力测试、恢复测试、安全性测试、兼容性测试等。

BSS系统的验收测试一般由使用人员来做,且必须做到对每个细节和关键指标的反复测试。它的测试技术方法不仅有上述提到的几种测试,还需要一些白盒测试,避免实现当前功能的情况下影响到其他模块。它的测试用例,需要反复推算,寻找到最佳用例,以尽多的遍历各测试节点,对程序、数据、文档都要做到细致的测试。

根据以上分析,验收测试涉及BSS系统的各环节内容。其中,最主要要审核的内容就是根据软件的需求分析,检验要交付的软件系统是否满足需求分析中的内容。具体来说,根据验收测试方法和它所属的状态及重要性,在BSS系统中,验收测试的审核内容,可以用以下文档验收来体现。

软件开放商应向企业项目组成员提供以下文档:《软件需求分析书》、《验收测试计划》和《项目验收准则》、《测试用例设计》、《测试环境标准》、《测试报告》、《测试结果分析》、《缺陷报告》、《验收测试报告》、《使用说明》或《操作文档》、《试运行报告》。另外,使用人员根据软件厂家提供的上述文档,挑选重要的测试项,组织使用人员重新编写测试用例并进行测试,编写客户方自己的《验收测试计划》、《验收测试报告》、《验收测试结果及分析》。根据《验收测试结果及分析》组织项目成员讨论是否验收此项目。

验收测试流程图:

根据上述要求,在本案例中,验收测试方面存在以下不足:

第一、《验收测试计划》和《项目验收准则》没有专门的文档。如果我们能在需求分析书完成后能够定制独立的《验收测试计划》和《项目验收准则》,则更有利于我们做好验收测试工作,做好终验工作。第二、没有《缺陷报告》,程序的开发总要伴随着缺陷的产生,虽然开放人员在逐渐的解决这些缺陷问题,但总有一些问题解决不了。第三、甲方对验收测试重视不足,没有独立的《验收测试计划》、《验收测试报告》、《验收测试结果及分析》,没有独立的验收文档,对结果也没有做分析。第四、在验收测试整个过程中,甲方过于依赖乙方。整个流程以乙方提供验收文档为主,甲方虽验收了文档等资料,但并没有根据资料编制验收测试方案,也没有做验收测试报告及分析,只是在乙方提供验收测试文档中根据验收测试用例进行了测试。

在实际运用中,首先要重视软件测试的重要性,另外不能过于依赖软件开发商,要建立企业自己的IT人员测试组,对软件进行详尽的各方面的测试。

3.2 回归测试在通信行业BSS系统中的应用研究

实际工作中,回归测试需要反复进行,当测试者一次又一次地完成相同的测试时,这些回归测试将变得非常令人厌烦,为了支持多种回归测试策略,可以运用自动测试工具,以便满足达到不同回归测试目标的要求。

通信行业BSS系统的回归测试特别频繁,每月的应用变更几十例,有新增的功能,也有变更的功能,还有修复的功能。这些变更都需要回归测试来验证功能是否达到需求的要求。根据软件特性,进行的回归测试大都需要结合软件模块自身的功能,手工完成验证,并且不同的模块的回归测试方法也可能不同。进行回归测试时,不但检验新增模块的功能是否实现,还要验证是否影响了周边其他模块的功能,同时检查整个大的模块的功能是否正常,也就是考察软件自身的功能和兼容性。

4总结与展望

实践证明:将软件测试的方法引入通信行业的BSS系统中,在软件测试的各个环节都能够详细和规范的记录测试相关信息,使管理层能够方便的掌握到整个软件的问题、配置、变更、等环节的信息,为领导决策提供了强有力的支持,达到了软件使用的目的。大幅提高了系统的软件维护效率和整个BSS系统的准确性,使BSS系统对企业的业务能够快速高效的支撑。

参考文献

[1](美)马瑟著.王峰,郭长国,陈振华等译.软件测试基础教程[M].北京:机械工业出版社,2011.

[2]陈能技.软件测试技术大全[M].北京:人民邮电出版社,2011.

软件测试报告范文第3篇

关键词:嵌入式软件;GJB2725A;软件测试;过程模型

0 引言

随着信息化军事技术的不断深入,嵌入式软件已在航空武器装备软件中得到了广泛的应用,相应的,对其进行软件测试的要求也越来越重要。目前,大部分软件测试项目主要由事件驱动完成,存在流程不清晰、被动性高、效率低下等问题,影响了测试质量,其严重后果就是没有及时发现软件产品缺陷,导致产品失效。

总装备部于2001年了GJB2725A《测试实验室和校准实验室通用要求》[1],其目的就是为了指导软件测试活动,提高软件测试过程管控能力。因此提出了一种嵌入式软件测试过程模型,该模型能够依据军标,以流程驱动的方式对软件测试进行全过程管控,具有很好的工程应用价值,提高了研制效率。

1 嵌入式软件测试过程模型

在型号软件研制中,测试是一项复杂而繁琐的工作,是一门综合性学科,涉及技术、方法、资源以及管理等诸多方面[2],现有流行软件测试模型,如V模型、W模型和H模型[3],并不能完全适用于实际测试工作,而应由研制单位牵头,建立本地化的软件测试过程模型。

根据工程经验,将嵌入式软件测试过程划分为5个阶段,即测试需求分析、测试策划、测试设计与实现、测试执行和测试总结,每个阶段实现不同的测试活动,前一个阶段是后一个阶段的输入,后一个阶段是前一个阶段的验证,以流程为驱动力,逐步实现所有活动,通过不断地对流程再优化,实现模型的持续改进[4],逐步趋近实际工程应用。

1.1 测试需求分析

该阶段的输入为软件测评合同或软件研制任务书,以明确被测项目的范围、目标、约束及要求。

同时,确定需要完成的测试类型,如功能测试、性能测试、边界测试、接口测试、可靠性测试等,并明确每一个测试类型的具体要求,例如:

1)功能测试:每一个软件测试项输入的每一个正常等价类和异常等价类都至少被一个用例覆盖;

2)性能测试:对软件的精度、时间和适应性进行测试,以确认是否符合规定的性能要求;

3)接口测试:测试所有外部接口,每一个外部输入/输出接口应进行正常和异常情况测试。

确定测试类型后,可制定测试策略,包括白盒和黑盒测试,并对具有特殊要求的被测项进行具体描述。同时,确定测试充分性和终止要求,避免项目无法结束。

测试需求分析最重要的工作就是依据软件设计文档,确定测试的显性需求和隐形需求,并分解为测试项,为后续测试用例提供设计依据,本阶段的输出为《软件测试需求规格说明》。

1.2 测试策划

本阶段在测试需求分析的基础上,完成如下工作:

1)确定测试技术,如等价类划分法、边界值分析法和猜错法等;

2)明确定性评价准则,包括文档、设计和实现等方面;

3)数据采集要求,主要指被测软件、用例、缺陷和管理数据等;

4)制定软件测试环境,包括软/硬件环境,确保测试顺利开展;

5)明确测试人员的角色与职责,合理分工,确保进度;

6)根据要求进行风险分析,如技术、人员和资源风险,并制定措施。

本阶段的输出为《软件测试计划》。

1.3 测试设计与实现

本阶段的主要内容就是依据测试需求,设计测试用例,单元、部件测试采用“先功能后逻辑”的测试策略,即先满足基于功能的测试(功能测试覆盖100%),再满足基于逻辑的测试(语句、分支、调用覆盖率100%),配置项、系统测试采用基于功能的测试策略,测试用例主要包括名称、标识、初始化、前提和约束、输入、预期输出、通过准则、追踪关系、终止条件、用例类型和设计人员等信息,本阶段的输出为《软件测试说明》。

1.4 测试执行

本阶段的主要内容就是在实际测试环境下执行测试用例,记录测试结果,将期望结果与实测结果进行比对,如不一致,则进行深入分析,确认为软件缺陷,则填写软件问题报告单,本阶段的输出为《软件测试记录》和《软件问题报告单》。

1.5 测试总结

本阶段的主要内容就是依据测试结果,统计与分析测试数据,包括用例执行率、用例通过率、代码缺陷率、功能覆盖率等指标,进而对被测软件产品做出客观、公正、独立的评价,为改进软件产品质量提供支撑,本阶段的输出为《软件测试报告》。

2 模型应用

被测软件为某型嵌入式软件,要求完成软件测试,出具测试报告。

2.1 测试需求分析

根据测试要求,定义被测项目的范围、目标、约束及要求。

范围:单元、部件和配置项测试。

目标:单元测试完成语句、分支100%覆盖,部件测试完成调用100%覆盖,配置测试完成需求100%覆盖。

策略:单元、部件测试采用白盒测试,配置项测试采用黑盒测试。

测试需求:经分析,单元测试共有272个测试需求,部件测试共有36个测试需求,配置项测试共有16个测试需求,27个测试项。

2.2 测试策划

软件测试主要采用等价类划分法和边界值分析法进行测试。

2.3 测试设计与实现

依据软件设计文件设计测试用例,单元测试共设计1869个测试用例,部件测试共设计266个测试用例,配置项测试共设计168个测试用例。

2.4 测试执行

经测试,并对测试结果进行分析、确认,共计发现56个软件问题,提交设计进行优化改进。

2.5 测试总结

测试结果总结如表4所示。

测试用例均能100%覆盖测试需求,配置项测试的用例执行率为95%,其原因是有些硬件环境不能满足测试要求,如破坏性测试,单元和配置项测试的用例通过率均不到100%,说明这两种测试是发现软件缺陷的重要手段,通过对56个问题的归零处理,软件问题得到解决,提高了软件产品的质量。

3 总结

采用流程驱动式的嵌入式软件测试过程模型能够很好的解决测试工程化问题,通过实际运用,提高了测试管控能力,确保了测试充分性,发现了软件问题,提高了软件的质量和可靠性。

参考文献:

[1] 闫宇华,李谊,黄宁等.GJB 2725A-2001,测试实验室和校准实验室通用要求[S].北京:中国人民总装备部,2001.

[2] 金先仲,任宏光,李建军等.空空导弹研制系统工程管理[M].北京:国防工业出版社,2007.

软件测试报告范文第4篇

【摘要】信息是现代咨询的基础,工程咨询业俗称为“头脑加工信息”的行业。工程咨询信息系统,满足了工程咨询对信息化的需求,在开发一套好的工程咨询信息系统过程中,软件的测试是非常重要的,它对信息系统能否投入运行起着至关重要的作用,在软件的测试中,一定要针对工程咨询的特点,做好软件的测试。

【关键词】工程咨询信息系统软件测试

信息是现代咨询的基础,工程咨询业俗称为“头脑加工信息”的行业。在信息化建设不断推进的条件下,工程咨询作为智力服务型企业,对信息化的需求日益增长。为了把咨询业务做精、做强、做大,必须依靠现代科技手段和信息处理技术,建立企业内部信息库,挖掘信息资源,改变信息管理方式。把零散的、随机的信息管理,转变为系统的、可持续性的、能够便捷查询和充分共享的信息管理,实现咨询依据可靠、信息来源充分、方法科学的现代咨询发展目标。工程咨询信息系统,满足了工程咨询对信息化的需求,实现了项目管理及图书等资料借阅的自动化管理方式,建立的竞争情报管理系统实现了目标信息的定时抓取,上传企业内部公告等多种功能。在开发一套好的工程咨询信息系统过程中,软件的测试是非常重要的,它对信息系统能否投入运行起着至关重要的作用,软件测试环节是保障软件质量的最后一道关键性关口。在软件的测试中,一定要针对工程咨询的特点,做好软件的测试。

一、工程咨询的特点

工程咨询业是智力服务性行业,运用多种学科知识和经验、现代科学技术管理方法,遵循独立、科学、公正的原则,为政府部门和投资者对经济建设和工程项目的投资决策与实施提供咨询服务,以提高宏观和微观的经济效益。工程咨询具有以下特点:工程咨询业务范围弹性很大,可以是宏观的、整体的、全过程的咨询,也可以是某个问题、某项内容、某项工作的咨询;每一项工程咨询任务都是一次性的、单独的任务、只有类似,没有重复;工程咨询是高度智能化的服务,需要多学科知识、技术、经验、方法和信息的集成及创新;工程咨询牵涉面广;许多工程咨询成果具有预测性、前瞻性;工程咨询提供智力服务,咨询成果属非物质产品。

二、软件测试的目的

软件测试是为了发现错误而执行程序的过程;测试是为了证明程序有错,而不是证明程序无错误;一个好的测试是在于它能发现至今未发现的错误;一个成功的测试是发现了至今为止未发现的错误的测试。

软件测试的目的不仅仅是为了发现程序中存在的错误,它还是软件质量保证至关重要的一个环节。软件测试不同于程序员在代码编写完成后简单的使用、调试,软件测试需要遵循一定的原则,软件测试的原则大致包括以下内容:确定预期输出是测试必不可少的一部分,程序员应避免测试自己编写的程序,程序设计机构不应测试自己的程序,彻底检查每一个测试结果,对非法的和非预期的情况也要象对合法的预期输入一样编写测试用例,检查程序是否做了要它做的事仅仅是成功的一半,另一半是程序是否做了不要它做的事,除了真正没有用的程序外,一定不要扔掉测试用例,一段程序中存在错误的概率与在这段程序中已发现的错误成比例,在规划测试时,不要设想程序中不会查出错误,所有的测试都应当追溯到用户需求,应该在测试工作真正开始前就开始计划测试,测试应该从“小规模”开始逐步转到“大规模”,测试发现错误中80%的错误属于20%的程序模块,穷举测试是不可能的,但充分覆盖程序逻辑是可能的,测试是一件非常复杂,具有创造性的和需要高度智慧的挑战性任务。

三、软件测试几点看法

软件测试作为软件上线的最后关口,应得到高度重视。但由于思想意识和历史原因,出现重开发轻测试的现象,软件测试成为制约软件成功上线运行的瓶颈。由于对软件测试的重要性理解不够,很多人认为程序能够运行基本上就已经成功,没有必要进行专门的测试,这些都是错误的观点。

软件测试分为:单元测试(模块测试),集成测试。在进行所有的测试前,一定先要认真阅读各种相关文档,同时制定测试计划,同时进行测试用例设计,在设计测试用例时,要对待测软件进行分析,设计合理的模型,制定测试用例。在测试进行过程中,要根据实际情况修改或增加测试用例。

在测试完成后,要根据测试结果填写《软件测试问题跟踪单》,在整个软件测试完成后,要分析测试结果并编写测试报告。在测试报告中要说明本次测试的结果,如各个等级的BUG的数目,在各个模块中的分布情况及评语。在整个项目完成后,将测试工作所产生的所有文档交文档管理员归档。

软件测试是为了拟制缺陷。作为衡量和评价的手段,测试是质量控制的核心环节,除发现问题外,测试还有预防的潜力。

软件测试报告范文第5篇

关键词:软件测试;认知误区;嵌入式;单元测试流程

1 软件测试简述

软件测试是在软件投入商用前,对软件需求分析报告、设计规格说明书和编码的最终复查,是软件质量保证的关键方法,软件测试并不等于程序测试。它贯穿于软件定义和开发的整个过程,因此,软件需求分析、软件概要设计、软件详细设计和程序编码等各阶段所得到的文档,包括需求规格说明书、概要设计说明书、详细设计说明书,以及源代码都是软件测试的测试对象。随着软件规模的不断扩大,以及软件设计复杂程度不断的提高,软件开发中出现失误或缺陷的概率越来越大。随着市场对软件质量重要性的认知程序的提高,因此软件测试在软件项目实施过程中的重要性尤为突出。软件测试将会成为一个具有很大发展前景的行业,市场将需要更多具有丰富测试技术和先进管理经验的测试技术员和项目经理。

2 软件开发项目测试的误区

软件测试从1990年左右进入中国,目前国内大的测评中心、大型企业已经完全掌握了软件测试的测试策略和测试方法。小企业普遍存在测试人员不懂什么是单元测试,怎样进行单元测试,很少能看懂代码的细节。而开发人员很少能够提供完整的详细设计报告、需求报告。导致单元测试,以拼凑测试报告为目的。

认知误区一:软件测试是软件开发的最后一道步骤,工程师们一般认为,软件实际项目要经过下面六个阶段:需求分析,概要设计,详细设计,软件编码,软件测试,软件。因而,认为软件测试只是编码后的一个孤立的阶段,这就是不了解软件测试流程的认知偏差。软件测试是一个系列的活动过程,是一个开放的体系,包括软件测试需求分析,测试计划设计,测试用例设计,执行测试。从而,软件测试应当贯穿于软件项目的整个生命周期,并不是软件开发后最后一道步骤。认知误区二:软件商用后如果发现质量问题,就武断认为是软件测试人员的工作失误。这种认识很狭隘,很是打击软件测试人员的工作积极性。软件测试只能确认软件存在错误,不能保证软件没有错误。因为从根本上讲,软件测试不可能发现全部错误,软件后的错误可能来自软件项目中的各个过程。认知误区三:软件测试对测试人员技术要求不高,任何人都可以做。很多工程师认为软件测试就是安装并运行程序,按按键盘的重复性工作。随着软件测试技术的不断改进和完善,新测试方法、新流程、新工具都在不断被开发出来。这就需要软件测试工程师掌握和学习很多专业测试新理念和新技能。认知误区四:只有编写程序的高手才是软件专家,而软件测试没有前途。由于我国软件行业整体研发能力比较低,软件开发过程不规范。不少软件项目的开发都还停留在“累加堆叠“阶段。项目开发依靠个别程序员决定,他们一人负责总体设计和代码编写,给人的印象是程序员是真正的牛人,完成了所有的软件项目开发工作。但在微软等世界知名软件企业里,软件测试人员的待遇和数量与一般程序员没有多少差异,优秀测试人员的待遇甚至比普通程序员要高的多。

3 嵌入式软件单元测试流程

单元测试是指对软件中的最小可测试单元进行检查和验证。单元是规格说明书中的最小单元,包括函数、子程序、程序。单元测试关注独立的函数功能,是测试过程中最低级别的测试活动。需要开发一个或多个测试用例执行单元测试。把代码问题缩小范围在开发阶段锁定Bug是单元测试的主旨要求,以下将介绍一种容易操作的嵌入式单元测试实战流程。

第一阶段,制定测试记录表,记录测试过程,和测试情况。测试记录表包含:源文件名,子函数名,用例标号,用例名称,用例个数,用例通过个数,语句覆盖率,分支覆盖率,MC/DC覆盖率,测试结果,问题描述,测试人员,测试时间。针对第一阶段的测试结果,此时需要大家分析出问题的代码,各抒己见,总结问题,给出解决方法。

第二阶段,解决部分测试用例failed问题,找出阻止生成用例的共性。常见问题汇总:局部变量未初始化,调用函数未声明,局部变量直接赋值,结构体嵌套、结构体指针、声明问题、声明位置问题,函数指针,大循环、死循环,绝对地址,指针变量,C语言程序中带有goto语句。解决办法:局部变量声明后,需要赋初值再使用。调用函数未声明,该问题发生在隔离测试阶段,属于代码书写不规范问题。解决方法:自定义的函数都需要在头文件中做统一声明。局部变量直接赋初值:该问题发生在测试用例无法生成阶段,属于代码书写不规范问题。解决方法,结构体局部变量,指针变量需要先声明后赋初值。结构体嵌套、结构体指针、声明问题、声明位置问题:该问题也属于代码书写不规范问题。解决方法:根据MISRA代码书写规范,结构体需要放在头文件中统一声明。大循环、死循环:单元测试需要有程序结束的出口。解决方法:把大循环改为小循环,注释掉死循环(if(1)、for(; ;),while(1))。绝对地址:单元测试不连接真实的硬件设备。遇到寄存器等绝对地址时,需要对寄存器做变量处理。指针变量:需要声明一个同类的数组,然后把数组的首地址,赋给指针变量。函数指针:需要虚构一个函数实体,取函数地地址赋给函数指针,完成映射。C语言程序中带有goto语句:需要改变程序结构,增加判断语句,去除所有的goto语句,以便确保C语言程序的稳定性。

测试第三阶段:基本圈复杂度高于MISRA阀值要求的函数,先考虑把复杂函数改为几个小函数。改不了的由开发人员写声明以及具体原因,再按照路径分支来设计测试用例。汇总测试结果,提交测试问题报告单,并提交行业标准测试报告。

4 结束语

文章简述了软件测试的基本概念,澄清了软件测试工程实践中的几个误区,依据单元测试实践的具体案例,介绍了一种高效、容易操作的嵌入式单元测试的流程。

参考文献

[1]胡丹,杜新华.基于目标机的嵌入式软件单元测试[J].电子测量技术,2006(2).

[2]赵正海,王宁.跟踪雷达“指示引导”功能软件测试方法研究[J].现代电子技术,2013(36).

[3]于园园.软件测试技术与测试管理研究[J].江苏科技信息,2016(7).

[4]王琨.嵌入式计算机软件测试关键技术探讨[J].科技创新与应用,2016(7).

[5]张金环,田洪涛.浅析设备软件测试与质量保证[J].电子工业专用备,2016,45(1).

作者简介:张军(1988-),男,陕西武功人,工学硕士,助理工程师,主要研究方向:雷达信号处理算法、数字中频收发机和嵌入式软件测试。