当前位置:文档之家› 软件测试原则及方法学习笔记

软件测试原则及方法学习笔记

1、软件测试的原则软件测试从不同的角度出发会派生出两种不同的测试原则,从用户的角度出发,就是希望通过软件测试能充分暴露软件中存在的问题和缺陷,从而考虑是否可以接受该产品,从开发者的角度出发,就是希望测试能表明软件产品不存在错误,已经正确地实现了用户的需求,确立人们对软件质量的信心。

测试的原则就是从用户和开发者的角度出发进行软件产品测试的,通过测试,可以为用户提供放心的产品,并对优秀的产品进行认证。

为了达到上述的原则,那么需要注意以下几点:1.应当把“尽早和不断的测试”作为开发者的座右铭2.程序员应该避免检查自己的程序,测试工作应该由独立的专业的软件测试机构来完成。

3.设计测试用例时应该考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况下要制造极端状态和意外状态,比如网络异常中断、电源断电等情况。

4.一定要注意测试中的错误集中发生现象,这和程序员的编程水平和习惯有很大的关系。

5.对测试错误结果一定要有一个确认的过程,一般有A测试出来的错误,一定要有一个B来确认,严重的错误可以召开评审会进行讨论和分析。

6.制定严格的测试计划,并把测试时间安排的尽量宽松,不要希望在极短的时间内完成一个高水平的测试。

7.回归测试的关联性一定要引起充分的注意,修改一个错误而引起更多的错误出现的现象并不少见。

8.妥善保存一切测试过程文档,意义是不言而喻的,测试的重现性往往要靠测试文档在测试实施之前,软件测试工程师必须确定将要采用的测试策略和测试方法,并以此为依据制定详细的测试案例。

而一个好的测试策略和测试方法必将给软件测试带来事半功倍的效果,它可以充分利用有限的人力和物力资源,高效率、高质量地完成测试。

那么,究竟如何才能确定一个好的测试策略和测试方法呢,一般来说,在确定测试方法时,应该遵循以下原则:第一,要根据程序的重要性和一旦发生故障将造成的损失来确定它的测试等级和测试重点;第二,要认真研究测试策略,以便能使用尽可能少的测试用例,发现尽可能多的程序错误,因为一次完整的软件测试过后,如果程序中遗留的错误过多并且很严重,则表明本次测试是失败的,是不足的,而测试不足意味着让用户承担隐藏错误带来的危险,同时反过来说如果过度测试则又会浪费许多宝贵的资源。

我们需要在这两点上进行权衡,找到一个最佳平衡点。

测试依据:《GB/T 25000.51-2010 软件工程 软件产品质量要求与评价(SQuaRE)商业现货(COTS)软件产品的质量要求和测试细则》2、软件测试的基本方法软件测试的方法和技术是多种多样的。

对于软件测试技术,可以从不同的角度加以分类:从是否需要执行被测软件的角度,可分为静态测试和动态测试。

从测试是否针对系统的内部结构和具体实现算法的角度来看,可分为白盒测试和黑盒测试。

黑盒测试黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。

黑盒测试方法主要有等价类划分、边界值分析、错误推测法、因果图等,主要用于软件确认测试。

“黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。

“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。

白盒测试白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑覆盖、基本路径测试等,主要用于软件验证。

“白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。

“白盒”法是穷举路径测试。

在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。

贯穿程序的独立路径数是天文数字。

但即使每条路径都测试了仍然可能有错误。

第一,穷举路径测试决不能查出程序违反了设计规范,即程序本身是个错误的程序。

第二,穷举路径测试不可能查出程序中因遗漏路径而出错。

第三,穷举路径测试可能发现不了一些与数据相关的错误。

3、项目全生命周期管理平台工具序号类型产品名产品描述1测试流程与方法IBM Rational MethodComposer测试方法、流程2测试过程管理IBM Rational QualityManager StandardEdition包括需求、计划、用例、质量报表、测试自动化3HP Quality Center包括需求管理、计划管理、执行管理、缺陷跟踪管理、模板创建、负载均衡等功能模块。

4测试需求管理IBM Rational DOORS管理软件需求5测试资产管理IBM Rational ClearCase对资产进行版本化管理6测试缺陷管理IBM RationalClearQuest实现缺陷的管理和追踪,并生成多种报告7白盒测试--静态测试IBM Rational SoftwareAnalyzerDeveloper Edition基于规则的代码静态分析,主要针对Java/J2EE代码,也支持C/C++的代码评审8IBM Rational Logiscope基于规则的代码静态分析,主要用于支持C/C++代码,也支持Java9白盒测试--动态测试IBM PurifyPlusEnterprise Edition(包括Purify/ PureCoverage和Quantify三个组件)包括内存访问错误检测;代码覆盖、函数覆盖检测;性能/嵌入式系统测试;10安全性测试IBM Rational AppScanStandard Edition 对基于Web的应用进行安全性测试11功能测试IBM RationalFunctional Tester 基于Web、Win32/Java 和.NET应用功能测试12HP QuickTestProfessional 含Java, Web, ActiveX, Oracle, .Net ,SAP等所有开发语言及协议插件13性能测试IBM RationalPerformance Tester基于Web应用的性能测试14HP LoadRunner9.2包含脚本录制工具、监控组件、Analyse等功能模块。

15HP LoadRunner9.5(英文版)支持flex协议16LoadRunner WEB协议包WEB协议包,250并发用户许可。

支持Web(HTTP/HTTPS/HTML)、Web (Click and Script)、MediaPlayer (MMS)、RealPlayer等协议测试。

17HP Dignostic J2EE/.NET应用深层诊断工具。

工具技术及功能:测试流程与方法技术及功能(1)提供项目计划模板和成功经验帮助团队快速定义项目目标、规划项目资源和确定项目里程碑;(2)提供完整的IT生命周期管理过程,帮助业务和IT部门的有效合作,保持IT项目和业务发展目标一致,提高IT的整体投资汇报率;(3)提供功能强大的、可视化的、易用的过程定义工具,方便用户根据项目的实际需要,定制出自己的RUP式的软件项目管理过程;测试过程管理技术及功能IBM Rational Quality Manager Standard Edition(RQM)HP Quality Center(QC)测试过程能够完成从需求、计划、设计、实施、执行到测试结果分析、测试报告的自动生成整个测试生命周期的管理,包括:(1)能够完成通过测试需求覆盖率来评价测试完备性,并在测试需求发生变化后,可自动显示可能需要修改的测试用例;(2)能够完成基于目标的测试用例的层次化的分类管理和组织管理,批量地执行一组测试用例,从而可以有效地进行自动化的回归测试;(3)能够完成对自动执行测试用例和手工执行的测试用例的管理;(4)能够根据实际测试执行的情况,自动的生成各种测试分析报告。

需求管理技术及功能IBM Rational DOORS(DOORS)(1)Rational DOORS和软件生命周期工具易于集成,可以集成RQM 或者QC;(2)可以自定义需求体系结构;(3)可以自定义需求项目模板;(4)具备需求到测试的跟踪能力,将需求用例和测试用例关联起来,为软件开发提供全生命周期的跟踪能力;(5)具备需求的属性定制能力和查询能力;(6)具备需求管理流程定制、需求变更、需求审计能力。

测试资产管理技术及功能IBM Rational ClearCase(CC)(1)操作简单、方便,可以在Windows和Unix以及Linux等多种操作系统上运行,而且可以在多种操作系统环境下实现统一的软件配置管理流程。

还可以实现和多种主流集成开发环境(IDE)集成;(2)提供视图和工作空间的支持,开发和测试人员可以在独立的工作空间进行工作,而不受到其他开发人员的影响,同时可以及时地将自己的开发成果与其他人员共享,从而实现软件并行开发,提高软件开发的质量和效率;(3)提供独特的动态视图支持,可以不通过下载实时访问最新版本;(4)可以根据实际测试工作的需要确定基线和版本管理的策略,及时构建出满足产品开发需要的发布成果,实现产品的多版本并行开发,提高了产品交付使用的速度;(5)提供构建管理,一方面可以建立可执行代码和源代码之间的跟踪关系;另一方面可以通过自带命令进行构建,实现构建的自动化。

同时不同的视图间可以根据要求共享构建成果,提高了构建的效率和准确性;(6)提供丰富的扩展功能点,提供Trigger以及开发API,可以通过VB,Perl以及Java等实现自定义的扩展,满足客户化的需要;(7)提供多服务器配置功能,实现负载均衡,保证开发的高可靠性;提供CCRC可以通过HTTP协议进行优于浏览器的远程并行开发工作。

测试缺陷管理技术及功能IBM Rational ClearQuest (CQ)(1)能捕捉、跟踪并管理各种类型(缺陷、功能增强等)的变更请求,帮助开发团队以更高的效率交付出更高质量的产品;(2)提供灵活多样的定制功能,包括流程、用户界面和查询,适应各种团队的开发;(3)支持各种客户端界面,包括基于Web、本地客户端和Eclipse客户端方式,有效地提交变更请求;(4)各种图表制作和报告制作功能,为项目的宏观监控及微观调控提供有效的数据基础;(5)高度的集成性和可扩展性,可支持任意团队规模、成员位置或使用平台的项目,能与多种工具进行集成实现变更完整性,包括需求管理工具、资产管理工具、开发工具、项目管理工具等等。

相关主题