软件测试原则及方法学习笔记
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、软件测试的原则
软件测试从不同的角度出发会派生出两种不同的测试原则,从用户的角度出发,就是希望通过软件测试能充分暴露软件中存在的问题和缺陷,从而考虑是否可以接受该产品,从开发者的角度出发,就是希望测试能表明软件产品不存在错误,已经正确地实现了用户的需求,确立人们对软件质量的信心。
测试的原则就是从用户和开发者的角度出发进行软件产品测试的,通过测试,可以为用户提供放心的产品,并对优秀的产品进行认证。
为了达到上述的原则,那么需要注意以下几点:
1.应当把“尽早和不断的测试”作为开发者的座右铭
2.程序员应该避免检查自己的程序,测试工作应该由独立的专业的软件测试机构来完成。
3.设计测试用例时应该考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况下要制造极端状态和意外状态,比如网络异常中断、电源断电等情况。
4.一定要注意测试中的错误集中发生现象,这和程序员的编程水平和习惯有很大的关系。
5.对测试错误结果一定要有一个确认的过程,一般有A测试出来的错误,一定要有一个B来确认,严重的错误可以召开评审会进行讨论和分析。
6.制定严格的测试计划,并把测试时间安排的尽量宽松,不要希望在极短的时间内完成一个高水平的测试。
7.回归测试的关联性一定要引起充分的注意,修改一个错误而引起更多的错误出现的现象并不少见。
8.妥善保存一切测试过程文档,意义是不言而喻的,测试的重现性往往要靠测试文档
在测试实施之前,软件测试工程师必须确定将要采用的测试策略和测试方法,并以此为依据制定详细的测试案例。而一个好的测试策略和
测试方法必将给软件测试带来事半功倍的效果,它可以充分利用有限的人力和物力资源,高效率、高质量地完成测试。
那么,究竟如何才能确定一个好的测试策略和测试方法呢,一般来说,在确定测试方法时,应该遵循以下原则:
第一,要根据程序的重要性和一旦发生故障将造成的损失来确定它的测试等级和测试重点;
第二,要认真研究测试策略,以便能使用尽可能少的测试用例,发现尽可能多的程序错误,因为一次完整的软件测试过后,如果程序中遗留的错误过多并且很严重,则表明本次测试是失败的,是不足的,而测试不足意味着让用户承担隐藏错误带来的危险,同时反过来说如果过度测试则又会浪费许多宝贵的资源。我们需要在这两点上进行权衡,找到一个最佳平衡点。
测试依据:
《GB/T 25000.51-2010 软件工程 软件产品质量要求与评价(SQuaRE)商业现货(COTS)软件产品的质量要求和测试细则》
2、软件测试的基本方法
软件测试的方法和技术是多种多样的。对于软件测试技术,可以从不同的角度加以分类:从是否需要执行被测软件的角度,可分为静态测试和动态测试。从测试是否针对系统的内部结构和具体实现算法的角度来看,可分为白盒测试和黑盒测试。
黑盒测试
黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。
黑盒测试方法主要有等价类划分、边界值分析、错误推测法、因果图等,主要用于软件确认测试。“黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。
白盒测试
白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑覆盖、基本路径测试等,主要用于软件验证。
“白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。“白盒”法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。但即使每条路径都测试了仍然可能有错误。第一,穷举路径测试决不能查出程序违反了设计规范,即程序本身是个
错误的程序。第二,穷举路径测试不可能查出程序中因遗漏路径而出错。第三,穷举路径测试可能发现不了一些与数据相关的错误。
3、项目全生命周期管理平台工具
序号类型产品名产品描述
1测试流程与
方法IBM Rational Method
Composer
测试方法、流程
2测试过程管
理IBM Rational Quality
Manager Standard
Edition
包括需求、计划、用例、质
量报表、测试自动化
3HP Quality Center包括需求管理、计划管理、
执行管理、缺陷跟踪管理、
模板创建、负载均衡等功能
模块。
4测试需求管
理
IBM Rational DOORS管理软件需求
5测试资产管
理
IBM Rational ClearCase对资产进行版本化管理
6测试缺陷管
理IBM Rational
ClearQuest
实现缺陷的管理和追踪,并
生成多种报告
7
白盒测试--
静态测试IBM Rational Software
Analyzer
Developer Edition
基于规则的代码静态分析,
主要针对Java/J2EE
代码,也支持C/C++的代码
评审
8IBM Rational Logiscope基于规则的代码静
态分析,主要用于
支持C/C++代码,
也支持Java
9白盒测试--
动态测试IBM PurifyPlus
Enterprise Edition(包
括Purify/ PureCoverage
和Quantify三个组件)
包括内存访问错误检测;
代码覆盖、函数覆盖检测;
性能/嵌入式系统测试;
10安全性测试IBM Rational AppScan
Standard Edition 对基于Web的应用进行安全性测试