计算机软件测试技术分析_第1页
计算机软件测试技术分析_第2页
计算机软件测试技术分析_第3页
计算机软件测试技术分析_第4页
计算机软件测试技术分析_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机软件测试技术分析 作者: xxxx 学号: XXxxx 摘要: 计算机软件测试技术被定义为一个计算机程序或系统属性为目标的任何一种技术活动,测试也是对软件质量的一种评估。 软件测试也为了提高软件的应用质量,对测试软件进行工程设计、实现维护和实施的整个工程生命周期。 本文对软件测试的基本定义和软件测试的必要性进行了研究和探讨,以供参考。 关键词: 计算机 软件测试 黑盒测试 软件功能的实现是通过软件编码和测试来实现。软件编码就是通常所说的编程,程序代码。实际上编码就是将具体的框架功能,加上算法利用计算机来实现。利用计算机把算法和语言翻译出来,计算机编程的质量主要取决于软件设计的质量。编码结

2、束后,需要对软件的具体功能进行严格的测试,通过测试看看软件在计划中、设计中、框架结构和编码是否有错误,遇到错误加以改正。1. 软件测试的具体目的和意义1.1. 计算机软件测试的目的 计算机软件测试的目的就是能够减少时间和人力、物力找出软件中存在的一些措施,加以改正。软件测试的范围包括: 软件计划 软件设计、软件编程代码,主要是代码这块是否存在错误,一旦代码出现错误,很容易导致软件功能出现错误。软件测试设计到软件开发周期中各个阶段的错误,测试也是多错误性质和位置进行纠正,在整个纠正的过程中可能会涉及到改正或重新规划文档活动。1.2. 计算机软件测试的缺陷 软件测试的缺陷指的就是软件系统的内部问题

3、,软件功能的故障是用户从外部观察的软件实现功能与客户需要有所差别。并不是每一个软件缺陷都能够导致软件发生故障,有的只是在不满足某种条件下才会发生软件瘫痪。2. 软件测试的基本原则 软件测试要举杯不完全原则,不完全原则就是指测试不完全,具有免疫性原则,软件测试必然剧透免疫性,测试人员完成的测试越来越多,其免疫功能就越强大,想要寻找软件的缺陷也是越困难。全程测试的原则,全程测试指的是不仅仅测试在程序完成之后,应该贯穿于整个软件开发的流程。80/20 原则,有80% 的软件缺陷存在于软件20%的空间中,软件缺陷的问题具有空间聚集性。3. 软件测试方法 根据测试的整个过程来确定是否需要运行被测试的程序

4、,一般测试方法分为两种:静态测试和动态测试。3.1. 静态测试方法 静态测试是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。对需求规格说明书,软件设计说明书、源程序结构分析、流程图分析、符号执行来找错。静态方法通过程序静态特性分析,找出欠缺和可疑之处。例如不匹配的参数、不是当的循环嵌套个分支嵌套,不允许的递归、未使用过的变量、空指针的引用和可疑的计算等。静态测试的方法主要有技术评审、代码走查、静态分析等。3.2. 动态测试 计算机软件测试中的动态测试就是通过运行的软件来检验软件的一些动态行为和软件的运行结果,是否是正确的。动态测试的根本特征就是软件程

5、序必须要真正的被运行,通过熟人测试数据,对其运行的根本情况进行分析。在所有的动态测试中可以包括两方面的因素:被测试软件和软件测试中应用到的数据。 动态测试技术具有以下特点:(1) 实际运行被测试程序,取得程序运行的真实情况,动态情况,进而进行分析。(2) 必须生成测试数据来运行程序,测试质量依赖于测试数据。(3) 生成测试数据,分析测试结果工作量大,使开展测试工作费时、费力。3.3. 黑盒测试 黑盒测试又称为功能测试或者是数据驱动测试。它是在已知的软件的前提下,通过测试来检验每一个功能是否是正常使用的。在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者

6、在程序接口进行测试,它只检查程序功能生死符按照需求规格说明书的规定正常使用,程序是否能够适当的接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。 黑盒测试方法主要有等价类划分、边界值划分、因果图、误推测方法等等。主要用于软件确认测试。3.4. 软件测试的具体过程 测试是开发过程中一个独立且非常重要的阶段,测试过程基本上与开发过程平行。 一个规范化的测试过程通常包括以下基本的测试活动。 (1) 拟定测试计划。在制定测试计划时,要充分考虑整个项目的开发时间和开发进童以及一些人为因素和客观条件等,使得测试计划是可行的。测试计划的内容主要有测试的内容、进度安排、测试所需的环

7、境和条件、测试培训安排等。 (2) 编制测试大纲。测试大纲是测试的依据。它明确详尽地规定了在测试中针对系统的每一项功能或特性所必须完成的基本测试项目和测试完成的标准。 (3) 根据测试大纲设计和生成测试用例。在设计测试用例的时候,可综合利用前面介绍的测试用例和设计技术,产生测试设计说明文档,其内容主要有被测项目、输人数据、测试过程、预期输出结果等。 (4) 实施测试。测试的实施阶段是由一系列的测试周期组成的。在每个测试周期中,测试人员和开发人员将依据预先编制好的测试大纲和准备好的测试用例,对被测软件或设备进行完整的测试。 (5) 生成测试报告。测试完成后,要形成相应的测试报告,主要对测试进行概

8、要说明,列出测试的结论,指出缺陷和错误,另外,给出一些建议,如可采用的修改方法,各项修改预计的工作量及修改的负责人员。4. 软件测试的技术策略4.1. 单元测试 在单元测试中,由于被测试的软件模块处于整个软件结构的某一个位置,一般是被其他模块或组件调用的模块或组件,其本身并不能够单独的运行,因此需要对被测模块或组件进行驱动程序或存根程序的设计。驱动程序也是设计中的一个主程序,主要负责接收数据,把这些相关的测试结果,存根程序就是STNB,它是代替被测试的软件所调用的模块组件,也是一个虚拟的子程序。4.2. 集成测试(1) 非渐增的方式, 非渐增的方式也是一次性组装的方式,这种方式在所有的模块进行

9、单元测试之后,将所有的模块按照设计中的要求结构图连接起来,连接之后的程序作为一个整体进行测试。在一些小的测试项目中,可以使用非渐增的方式进行系统的集成测试,但是在一些大的项目中,这种集成测试并不合适,因此在目前一些软件测试中都会采用渐增的方式进行测试。(2) 渐增测试方式。渐增测试方式有事增值式组装方式,此种测试方式吧下一个要测试的模块同已经测试好的模块连接起来再次进行测试,测试完成之后把下一个测试的模块起来进行。模块测试在不断的增加,这种渐增方式与非渐增方式有很大的不同,他的集成方式是慢慢实现的。集成测试也是一点点来完成的,当渐增方式与模块都连接到程序中去时,按照不同的次序可以有两种策略进行

10、选择。4.3. 系统测试 系统测试的根本目的就是保证系统能够实现客户想要的,为了能够达到这样的目的,需要完成一系列的测试活动,这些活动包括系统的功能测试,系统的性能测试,对系统的验收和安装等测试。(1) 系统的功能测试,对系统功能测试也是需求测试的一种。主要对软件编程系统中功能性进行检测,按照客户的需求进行一一对照,找出存在的差异和问题,也就是检测系统是否能够满足客户所指定的功能。功能测试一般使用的方法是黑盒测试。(2) 性能测试。对于性能测试,是一些非功能性需求的问题,找出非功能性需求和系统要求之间的差异,如安全性,精度确定,运行速度等等。性能测试要 进行多项的测试活动。4.4. 用户验收测

11、试/确认测试(1) Alpha 测试 是由用户在开发者的场所来进行的,Alpha测试是在一个受控的环境中进行的。(2) Beta测试 由软件的最终用户在一个或多个用户场所来进行的,开发者通常不再现场,用户记录测试中遇到的问题并报告给开发者。5. 软件测试模型5.1. W模型 W模型由Evolutif公司提出,相对于V模型,W模型更科学。W模型是V模型的发展,强调的是测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样要测试。测试与开发是同步进行的,从而有利于尽早地发现问题。W模型也有局限性。W模型和V模型都把软件的开发视为需求、设计、编码等一系列串行的活动,无法支持迭代

12、、自发性以及变更调整。如下图所示: 图1 w模型5.2. V 模型 RAD(Rap Application Development,快速应用开发)模型是软件开发过程中的一个重要模型,由于其模型构图形似字母V,所以又称软件开发的V模型。它通过开发和测试同时进行的方式来缩短开发周期,提高开发效率。V模型大体可以划分为以下几个不同的阶段步骤:需求分析、概要设计、详细设计、软件编码、单元测试、集成测试、系统测试、验收测试。具体流程如下图所示:图2 v模型5.3. H 模型 H模型中, 软件测试过程活动完全独立,贯穿于整个产品的周期,与其他流程并发地进行,某个测试点准备就绪时,就可以从测试准备阶段进行到

13、测试执行阶段。软件测试可以尽早的进行,并且可以根据被测物的不同而分层次进行。H模型揭示了一个原理:软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地进行。H模型指出软件测试要尽早准备, 尽早执行。不同的测试活动可以是按照某个次序先后进行的,但也可能是反复的,只要某个测试达到准备就绪点,测试执行活动就可以开展。如下如图所示:图3 H模型5.4. X 模型 X模型的左边描述的是针对单独程序片段所进行的相互分离的编码和测试,此后将进行频繁的交接,通过集成最终成为可执行的程序,然后再对这些可执行程序进行测试。己通过集成测试的成品可以进行封装并提交给用户,也可以作为更大规模和范围内集成的一部分。多根并行的曲线表示变更可以在各个部分发生。由图中可见,X模型还定位了探索性测试,这是不进行事先计划的特殊类型的测试,这一方式往往能帮助有经验的测试人员在测试计划之外发现更多的软件错误。但这样可能对测试造成人力、物力和财力的浪费,对测试员的熟练程度要求比较高。具体流程如下图:图4 X模型6. 结论 软件测试是软件工程的一个基

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论