软件测试理论基础第三天(下)

1.流程分析法

流程分析法主要是针对测试场景类型属于流程测试场景的测试项下的测试子项进行设计,是从白盒测试设计方法中的路径覆盖分析法借鉴过来的一种方法。

    * 在白盒测试中,路径就是指函数代码的某个分支组合,路径覆盖法需要构造足够的用例覆盖函数的所有代码路径。

    * 在黑盒测试中,若将软件系统的某个流程看成路径的话,则可以针对该路径使用路径分析的方法设计测试用例。

优点

    * 降低了测试用例的设计难度,只要搞清楚各种流程,就可以设计出高质量的测试用例来,而不需要太多测试方面的经验;

    * 再测试时间叫紧迫的情况下,可以有的(di)放矢(有针对性的)选择测试用例,而不用完全根据经验来取舍。

流程分析的步骤

第一步:详细了解需求;

第二步:根据需求说明或界面原型,找出业务流程的各个页面以及各页面之间的流转关系;

第三步:画出业务流程(产品经理使用Axure软件制作);(一般不是自己画

第四步:写用例,覆盖所有的路径分支。

2.错误推断法

意思就是凭经验和直觉列出程序中所有可能的错误和容易发生错误的情况。

3.正交排列法

概述

正交测试法能够使用最小的测试过程集合获得最大的测试覆盖率。当可能的输入数据或者输入数据的组合数量很大时,由于不可能为每个输入组合都创建测试用例,可以采用这种方法。(简单来说就是测试过程很多的时候就使用正交排列法,在不减少测试覆盖率的情况下减少测试过程。)

正交表的概念

正交表:一种特制的标,一般的正交标记为:Ln(m的k次方)

n是表的行数,也就是需要测试组合的次数(这个去正交表里看)

k是表的列数,表示控件的个数(因素的个数,或因子个数)(几个选项框?)

m是每个控件包含的取值个数(各因素的水平数,即各因素的状态数)(每个选项框有几个选项?)

正交表使用方法总结

1.根据控件和取值数选择一个合适的正交表

2.列举取值编号,生成取值表

3.把取值表与选择的正交表进行映射

使用正交排排列法的局限性

    目前常见的正交排列表只有前面附录文件中给出的几种

    即使已有的正交排列表,基本都要求每个控件中取值的个数要相等,这在实际软件中很少遇到。

    没有现成的正交排列表怎么办?

通过正交排列法的学习,我们更多的应该学习到一种测试思想,也就是在从所有组合集合中选取测试数据时,应该均匀的选取其中的组合作为测试用例,而不要只在某个局部选取数据。

混合正交表

水平数不同

因素的水平数不相同

找不到现成的正交表,就只能使用工具来生成!


4.测试用例方法总结

通常,在确定测试方法时,应遵循以下原则:

根据程序的重要性和一旦发生故障将造成的损失来确定测试等级和测试重点。

认真选择测试策略,以便能尽可能少的使用测试用例,发现尽可能多的程序错误。

测得多了浪费资源,测得少了有些缺陷不能发现。结论:精选测试策略,以最少的测试用例发现更多的错误。

测试方法的选择

1.拿到一个测试任务时,先关注它的主要功能和业务流程、业务逻辑是否正确实现,考虑使用场景法。

2.需要输入数据的地方,考虑采用等价类划分法,包括输入条件和输出条件的等价划分,将无线测试变成有限测试。

3.在任何情况下都必须采用边界值分析法。这种方法设计出的测试用例发现程序错误的能力最强。

4.如果程序的功能说明中含有输入条件的组合情况,则一开始就应该考虑选用因果图和判定表法。

5.对于参数配置类的软件,需要考虑参数之间的组合情况,考虑使用正交排列法选择较少的组合方式(最少的测试用例获得最大的测试覆盖率)。

6.对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度。如果没有达到要求的覆盖标准,则应当再补充更多的测试用例。

测试用例的本质

测试用例的设计本质应该是在设计的过程中理解需求,检验需求,并把对软件系统的测试方法的思路记录下来,以便指导将来的测试。

----------------------------------

验证对需求的覆盖是软件测试的根本目的。

敏捷方法的“及时响应变更必遵循计划更有价值”这一原则体现出来。

测试用例评审

同行评审

用户评审

你可能感兴趣的:(软件测试理论基础第三天(下))