热搜: 心得体会  合同  年终总结
当前位置:首页 > 论文 > 论文范文

论文的格式模板范文大全

更新时间:2025-04-27 05:01:21 编辑:www.wenshu999.com

  论文怎么写?为了方便大家些论文,下面就为大家带来了论文访问供大家参考!

  软件测试技术发展模式探讨【1】

  摘要:随着计算机水平的不断提升,计算机网络盛行的今天,软件安全性是人人关心的焦点,本文在界定了软件测试概念内涵的基础上,分析了软件测试的全过程,重点展望了未来软件测试技术的发展发向。

  关键词:软件测试;概念;测试过程;发展展望

  一、软件测试的概念内涵

  软件测试是为了发现错误而执行程序甚至不用执行程序的过程。

  它既是软件开发的重要阶段,也占有软件工程的重大比例。

  软件测试的地位至关重要,直接关系着软件开发的质量,因此软件测试要讲究策略讲究效果。

  它是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度、完全度和质量的软件过程;是SQA的重要子域。

  二、软件测试过程分析

  软件测试是一个贯穿整个软件生命周期的活动,那种等待整个那系统开发完毕,再对其进行测试的想法是错误的,把测试放到软件开发的最后是很危险的,因为它很容易导致整个软件系统无法集成。

  另外,对软件的测试并不仅限于软件程序的本身,因为错误并不一定是代码引起的。

  很有可能是软件需求、软件系统的详细设计等阶段引起的。

  错误在初期也许只是范围很小的隐藏问题,但由于软件开发的各阶段的连续性,会使错误逐步扩展,如果早期的开发中出现的错误不能排除,将带到设计、编码、测试等各阶段,影响逐步扩大。

  所以对软件的测试还应该包括与软件有关的所有的文档。

  软件测试过程,可分为五个步骤:单元测试、子系统测试、系统测试、验收测试和平行运行。

  单元测试:测试的对象是针对软件中的单个模块或者过程,即测试软件中的基本组成单位。

  单元测试属于最基本的软件的动态测试部分,但是重要性却不容忽视。

  单元测试旨在检查基本单位是否正确。

  单元测试要求测试人员具有程序编码和设计知识,因此往往从事单元测试的人员是程序设计人员,往往需要开发测试驱动模块和桩模块来辅助完成单元测试。

  这就要求应用系统具有很好的体系结构。

  一个软件单元的正确性是相对于该单元的规约而言的。

  因此,单元测试以被测试单位的规约为基准。

  单元测试的主要方法有控制流测试、数据流测试、排错测试、分域测试等等。

  集成测试:把软件单元逐步组装成一个计算机软件配置项的过程叫“软件集成"。

  把软件逐步组装,同时一并进行测试,直到整个系统成为一体的有序进行的测试叫“集成测试&rdquo也叫“计算机软件部件测试”、“组装测试”或“综合测试”。

  确认测试:集成测试完成后,软件接口缺陷已经发现并纠正,这时可以对软件进行确认测试。

  确认测试是通过黑盒测试来验证软件功能及性能与要求规范是否一致。

  当发现与需求规范有差别,要列出一个缺陷表。

  系统测试:测试对象主要是针对软件开发后期形成的软件系统,因此测试务必系统彻底,着重检查系统性能是否达到开发要求,软件行为和输出是否精准。

  因此,系统测试应该按照测试计划进行,其输入、输出和其他动态运行行为应该与软件规约进行对比。

  软件系统测试方法很多,主要有功能测试、性能测试、随机测试等等。

  三、现有软件测试发展与展望

  软件测试是伴随着软件的产生而产生的。

  早期的软件测试较为狭隘,测试相当于“调试&rdquo由开发人员自己完成这部分工作。

  通常是形成代码、产品基本完成时才进行测试,对测试的投入非常的少。

  直到1957年,软件测试才成为一种发现软件缺陷的活动。

  由于缺乏软件工程的概念,测试仍旧是开发之后的事情。

  1972年在北卡罗来纳大学举行了首次软件测试正式会议,软件测试才被确定为一种研究方向。

  1979年,Glenford Myers的《The Art of Software Testing》(软件测试艺术)是测试领域的第一本重要专著。

  在这本书中,Myers以及其同事们将软件测试定义为“测试是为发现错误而执行的一个程序或者系统的过程”。

  到了20世纪80年代,软件测试不再单纯是发现错误的过程,而且包含了软件质量评价的内容。

  包含IEEE标准、美国ANSI标准以及ISO国际标准在内的各类标准相继被制定。

  20世纪90年代,测试工具逐渐得到了广大专家学者的广泛重视,开始盛行。

  测试被认为是为了度量和提高被测软件的质量,对测试软件进行工程设计、实施和维护的整个生命周期过程。

  最近20年来,软件测试技术随着计算机和软件技术的飞速发展取得了很大突破,包括V模型、W模型在内的测试模型被相继总结出来。

  然而软件测试技术仍旧是落后于软件开发技术的发展速度,这使得软件测试面临着很大的挑战,主要体现在软件测试任务重、规模和功能日益复杂,难以有效测试;面向对象测试技术发展有待成熟等。

  分析现今国内外的测试发展,可以看出自动化测试已经逐渐代替手工测试成为日后发展的主流趋势。

  随着软件系统的规模越来越大,整个系统的复杂性也越来越大,那么单纯的手工测试已经不适合这种大系统的测试了。

  首先手工测试的效率低下,其次有些测试是手工测试所无法完成的。

  为了解决手工测试效率低下和手工测试不能解决的一些测试等问题,自动化测试就应运而生了。

  软件自动化测试,顾名思义,就是执行一种自动的测试程序,控制被测软件的执行,模拟手动测试步骤,完成全自动或半自动测试。

  软件自动化测试具有较高的实效性,快捷地测试出软件性能,这能够有效地保证软件质量,并为软件的提前上线赢得时间。

  近几年,常见的自动化测试工具有Rational Robot、Win Runner、QuickTest Professional、Telelogic TAU等。

  TAU第二代包含三个最新的、最强大的技术用来加速大规模软件开发和测试:统一建模语言(UML)及它的许多最新修订版本中的特性,UML2.0;功能强大的测试语言TTCN-3和新的构造系统的方法:Model Driven Architecture(模型驱动构架)。

  这三个新的业界标准结合成TAU的已经过认可的软件开发平台,形成了一个系统,一个一流的稳定可靠的工具解决方案。

  TAU第二代是系统与软件开发解决方案的一个突破,它把业界从使用了太长时间的手工、易出错、以代码为中心的方法中释放出来,自然而然地迈向下一步,一个更加可视化、自动化及可靠的开发方法。

  Telelogic TAU/Tester是基于通用测试语言TTCN-3,用于自动化的系统和集成测试的强大工具。

  TAU/Tester以现代化的开发工具为基础,提供高层测试功能,支持整个测试生命周期,加速自动化测试。

  TAU/Tester可使用户特别关注于测试的开发,因为TTCN-3语言是独立于开发语言或测试设备的,且是抽象和可移植的。

  随着计算机技术的不断发展和普及,web测试、手机软件测试、嵌入式系统测试发展速度迅猛,引起了广大学者的广泛关注。

  B/S架构的大行其道,催生了人们对WEB应用测试的研究,WEB应用测试继承了传统测试方法,同时结合WEB应用的特点。

  比起任何其他类型的应用,Web应用运行在更多的硬件和软件平台上,这些平台的性质可在任何时间改变,完全不在Web应用开发人员的知识或控制之内。

  随着WEB应用的不断发展,也同样衍生出一些新的研究方向,如最近沸沸扬扬的云计算测试,针对SASS应用的测试等。

  出现手机软件测试这个研究分支,主要是因为手机在中国应用特别普遍,使用范围很广,围绕手机所出现的软件种类越来越丰富,有很多专门从事手机软件的开发公司,于是自然而然出现一批手机软件测试的工程师。

  同时由于手机软件的特殊性,如使用一些专门的操作系统,加上手机内存及CPU相对较小等特点,手机软件的测试有其部分特殊技术方法

  随着信息技术和工业领域的不断融合,嵌入式系统的应用越来越广泛,可以预言,嵌入式软件将有更为广泛的发展空间。

  对于嵌入式软件的测试也将有着很大的市场需求。

  嵌入式系统内存往往不丰富,开发成本偏高,往往与硬件直接相关系,。

  这些原因造成了嵌入式系统测试的难度,也造成了嵌入式软件的开发和测试与别的测试策略有着明显不同。

  随着计算机水平的不断提升,计算机网络盛行的今天,软件安全性是人人关心的焦点,因为它直接关系到我们的生活,也成为关系到金融、电力、交通、医疗、政府以及军事等各个领域的关键问题。

  尤其在当前黑客肆虐,病毒猖撅的网络环境下,越来越多的软件因为自身存在的安全漏洞,造成黑客以及病毒攻击的对象,给用户带来严重的安全隐患。

  软件安全漏洞造成的重大损失以及还在不断增长的漏洞数量使人们已经开始深刻认识到软件安全的重要性。

  从上世纪90年代,信息安全学者、计算机安全研究人员就开始了对计算机安全问题的研究,并且成为软件测试技术的一个重要分支。

  参考文献:

  [1]侯俐.软件测试技术[J].硅谷,2009,7

  [2]高加琼.软件测试现状及对策探讨[J].内江科技,2009,4

  [3]于海澍.计算机软件测试技术概述[J].科技资讯,2009,9

  [4]王萍.软件测试的重要性[J].软件导刊,2009,4

  软件回归测试及其实践【2】

  【摘 要】本文描述了软件回归测试的概念和进行回归测试的基本步骤,介绍了可用于回归测试的测试用例库的维护方法,给出了几种可以可保证回归测试效率和有效性的回归测试策略,总结了回归测试时应该注意的一些实际问题。

  【关键词】回归测试 测试用例 基线测试用例库

  一、概述

  在软件生命周期中的任何一个阶段,只要软件发生了改变,就可能给该软件带来问题。

  软件的改变可能是源于发现了错误并做了修改,也有可能是因为在集成或维护阶段加入了新的模块。

  当软件发生变化时,我们就必须重新测试现有的功能,以便确定修改是否达到了预期的目的,检查修改是否损害了原有的正常功能。

  同时,还需要补充新的测试用例来测试新的或被修改了的功能。

  为了验证修改的正确性及其影响就需要进行回归测试。

  回归测试在软件生命周期中扮演着重要的角色,因忽视回归测试而造成严重后果的例子不计其数,导致阿里亚娜5型火箭发射失败的软件缺陷就是由于复用的代码没有经过充分的回归测试造成的。

  回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试。

  在渐进和快速迭代开发中,新版本的连续发布使回归测试进行的更加频繁,而在极端编程方法中,更是要求每天都进行若干次回归测试。

  因此,通过选择正确的回归测试策略来改进回归测试的效率和有效性是非常有意义的。

  二、回归测试策略

  对于一个软件开发项目来说,项目的测试组在实施测试的过程中会将所开发的测试用例保存到“测试用例库”中,并对其进行维护和管理。

  当得到一个软件的基线版本时,用于基线版本测试的所有测试用例就形成了基线测试用例库。

  在需要进行回归测试的时候,就可以根据所选择的回归测试策略,从基线测试用例库中提取合适的测试用例组成回归测试包,通过运行回归测试包来实现回归测试。

  保存在基线测试用例库中的测试用例可能是自动测试脚本,也有可能是测试用例的手工实现过程。

  回归测试需要时间、经费和人力来计划、实施和管理。

  为了在给定的预算和进度下,尽可能有效率和有效力地进行回归测试,需要对测试用例库进行维护并依据一定的策略选择相应的回归测试包。