测试人员应该掌握的测试理论

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

测试人员须掌握的测试理论知识点

需求评审

需求评审是需求分析的最后一步,主要是对功能的正确性,完整性和清晰性以及其他需求给予评价。

编制良好的需求说明书的原则:

1功能与实现的分离;

2、要求使用面向处理的规格说明语言;

3、如果目标软件是一个大系统的一个元素,要描述目标软件与大系统中其他系统元素的交互方式;

4、规格说明必须包括系统的运行环境;

5、规格说明必须是一个认识的过程;

6、规格说明必须是可操作的;

7、必须容许不完备性并允许扩充;

8必须局部化和松散的耦合。

需求评审必须有负责人的结论意见和签字,除了分析人员外,用户、开发部的管理者,软件设计,实现和测试都应该参加评审工作。如果评审结果包括修改意见,该修改意见仍然需要再次评审。

设计评审

设计质量评审内容:

1、规格说明书是否符合用户需求;

2、评审软件的可靠性;

3、评审软件安全性的实现情况;

4评审软件的操作实现情况程序质量;

5评审软件的性能实现情况;

6、评审软件的可修改性、可扩充性、可互换性和可移植性;

7评审软件的可测试性;

8、评审软件是否具有可复用性。

程序质量评审内容:

1、软件的结构:功能结构,功能的通用性,模块的层次,模块结构,处理过程的结构。

2、与运行环境的接口:与硬件的接口,与用户的接口,与其他软件的接口。

3、变更的影响范围。

设计评审通常分两次进行,首先进行初步设计评审,是在设计过程中早期的评审,其次是设计结束时的评审。设计评审可以采用正式技术复审,正式技术复审包括“走查”“审查”“轮查”以及其他软件下载的技术评估。

软件生命周期测试策略

软件生命周期的测试策略一般的做法是,用黑盒设计基本的测试方案,在利用白盒补充一些必要的测试方案,用一些策略结合各种方法:

1、在任何情况下都应该使用边界值分析的方法;

2、必要时用等价划分法补充测试方案;

3、必要时用错误推测法补充测试方案;

4、输入如含有条件组合,一开始用因果图法;

5、对照程序逻辑,检查设计出的设计方案。

测试计划与设计

测试计划和设计应在设计阶段制定,测试计划主要包括内容,进度,条件,人员,测试用例的选取原则和测试结构允许的偏差范围等。测试设计是根据测试计划制定测试方案。测试设计过程的输出是各测试阶段使用的测试用例,测试设计的另一项内容是回归测试设计,确定回归测试的用例集。

测试用例包括如下6个元组:测试索引,测试环境,测试输入,测试操作,预期结果,评价标准。一个好的测试用例应该包括以下特征:

1、发现错误的可能性很高;

2、一个好的测试并不冗余;

3、一个好的测试应该是最佳品种,在一组相似的测试用例中应该选择最可能找到所有错误的测试;

4、每一个测试应该对立执行。

单元测试

单元测试又称模块测试,其目的在于发现各模块内部可能存在的各种差错,一般使用白盒法,以路径覆盖为最佳准则,且系统内多个模块可以并行地进行测试。

单元测试主要是对模块的5个基本特性进行测试和评价:

1模块接口;

2、局部数据结构;

3重要的执行路径;

4错误处理;

5、边界测试。

单元测试的步骤:

1、设计辅助测试模块;

2、编写测试数据;

3、进行多个单元的并行测试。

集成测试

集成测试也成组装测试,综合测试或者联合测试,是按照测试要求把通过单元测试的各个模块组装在一起之后进行的测试,以便发现与接口有关的各种错误。

集成测试主要考虑的问题:

1、数据经过接口是否会丢失;

2、一个模块对另一个模块是否造成不应有的影响;

3、几个子功能组合起来能否实现主功能;

4、误差不断累积是否达到不可接受的程度;

5、全局数据结构是否有问题。

集成测试分为非渐增式测试和渐增式测试两种,非渐增式测试也称一次性组装方式。渐增式测试又分为自顶向下结合(深度优先,宽度优先两种)和自底向上结合两种。

确认测试

确认测试又称为合格测试,主要是由使用用户参加测试,检验软件规格说明的技术标准的符合程度,是保证软件质量的最后关键环节。

系统测试

系统测试是将通过确认测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行一系列的组装测试和确认测试。

系统测试包括以下几个方面的测试内容:

1、恢复测试,主要检查系统的容错功能;

2、安全性测试,检验在系统中已经存在的系统安全性措施,保密性措施是否发挥作用;

3、强度测试,检查在系统运行环境下不正常到发生故障的时间内,系统可以运行到何种程度的测试;

4、性能测试,测试软件在被组装进系统的环境下运行时的性能。

验收测试

验收测试是以用户为主,软件开发人员和质量保证人员也应参加的测试,由用户参加设计测试用例。验收测试往往在系统测试完成后,项目最终交付前进行。

白盒测试基本技术

1、控制流图,是一种简化了的程序流程图。

2、代码覆盖率分析,主要包括逻辑覆盖法(语句覆盖,判定覆盖,条件覆盖,判定/条件覆盖,条件组合覆盖,修正的条件/判定覆盖)和路径覆盖法。

3、N-S图。

白盒测试方法

白盒测试方法总体上主要可以划分为静态测试和动态测试。

静态测试的方法主要包括:代码检查法,静态结构分析法,代码质量度量法。

动态测试包括功能确认与接口测试,覆盖率分析,性能分析,内存分析,动态测试通常在静态测试之后进行。

白盒的动态测试原则:

1、保证一个模块中的所有独立路径至少被使用一次;

2、对所有逻辑值均需要测试true和false;

3、在上下边界及可操作范围内运行所有循环;

4、检查内部数据结构以确保其有效性。

V(G)=e-n+2=判定节点数+1

黑盒测试用例设计方法

黑盒测试主要是为了发现以下几类错误:

1、是否有不正确或遗漏的功能;

2、在接口上输入是否能正确地接收,能否输出正确的结果;

3、是否数据结构错误或外部信息访问错误;

4、性能上是否能够满足要求;

5、是否有初始化或终止性错误。

黑盒测试用例设计方法有:等价类划分法,边值分析法,错误猜测法,因果图方法等。

测试用例的编写

面向对象测试用例设计

基于故障的测试;基于场景的测试;OO类的随机测试;类层次的分割测试;由行为模型导出的测试

黑盒测试方法选择策略

1、首先进行等价类划分,包括输入条件和输出条件的等价划分,将无限测试变成有限测试;

2、在任何情况下都必需使用边界值分析方法;

相关文档
最新文档