黑盒测试方法
http://www.cnblogs.com/Jackc/archive/2009/02/23/1396602.html
等价类划分:输入值
l 在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类.
l 在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类.
l 在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类.布尔量是一个二值枚举类型,一个布尔量具有两种状态:true和false。
l ·在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类.
l 例:输入条件说明输入字符为:中文、英文、阿拉伯文三种之一,则分别取这三种这三个值作为三个有效等价类,另外把三种字符之外的任何字符作为无效等价类。
l ·在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)
l ·在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类
边界值分析:输入值
l 大于或刚刚小于边界的值作为测试数据;
错误推断:
l 负数、空格、重复等经验性意外场景;
因果图:输入条件之间组合、限制
l 关系:恒等、非、或、与;
l 约束:异(ab不同时为1)、或(a、b和c中至少有一个必须是1)、唯一(ab必须有一个且仅有一个为1)
l 要求:a是1时,b必须是1
l 输出限制:a是1,则结果b强制为0。
采用因果图法设计测试用例的步骤:
l 分析软件规格说明描述中,那些是原因(即输入条件或输入条件的等价类),那些是结果(即输出条件),并给每个原因和结果赋予一个标识符。
l 分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的关系,根据这些关系,画出因果图。
l 由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现,为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。
l 把因果图转换为判定表。
l 把判定表的每一列拿出来作为依据,设计测试用例。
判定表驱动:针对不同逻辑条件的组合值,分别执行不同的操作。判定表很适合于处理这类问题。
正交试验:从大量的(实验)数据(测试例)中挑选适量的,有代表性的点(例)
功能图法:逻辑覆盖、路径覆盖理论,应用与流程图
场景法:基本主流程+备选流程
测试用例设计综合策略
1.Myers提出了使用各种测试方法的综合策略:
n 在任何情况下都必须使用边界值分析方法,经验表明用这种方法设计出测试用例发现程序错误的能力最强。
n 必要时用等价类划分方法补充一些测试用例。
n 推测法再追加一些测试用例。
n 对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度,如果没有达到要求的覆盖标准,应当再补充足够的测试用例。
n 如果程序的功能说明中含有输入条件的组合情况,则一开始就可选用因果图法。
2.测试用例的设计步骤】
n 构造根据设计规格得出的基本功能测试用例;
n 边界值测试用例;
n 状态转换测试用例;
n 错误猜测测试用例;
n 异常测试用例;
n 性能测试用例;
n 压力测试用例。
3.优化测试用例的方法
n 利用设计测试用例的8种方法不断的对测试用例进行分解与合并;
n 采用遗传算法理论进化测试用例;
n 在测试时利用发散思维构造测试用例;
黑盒测试准备阶段
1、需求阶段
l 分解系统基本功能模块,及各个功能之间的组成,在测试计划书中结合产品说明书对此系统功能块的测试目标进行详细的描述,保证系统重要功能块的覆盖面;
l 需求确认:总有一些A认为理所当然B却理解完全不同的需求点,测试人员在测试准备阶段找出需求中不明确、有遗漏的地方,整理成checklist列表,并进行同行评审;
l 同类需求的一致规范性。
2、测试策略/方案/计划
l 测试策略:测试成本与测试预期效果之间达到了最佳平衡。
要解决的问题是根据测试需求、资源配备及工程环境,因地制宜剪裁测试工作,形成测试工作的测试流程。5个人月的普通商用软件,重点应该抓系统测试(包括功能测试、性能测试及GUI测试等)及验收测试,而不宜铺排开来,面面俱到。30个人月的中型商用软件而言,一般应该认真完成需求验证、设计验证、单元测试、集成测试、系统测试及验收测试,而不宜只关注系统测试。
l 测试方案:测试策略的进一步细化。哪些需要测试、如何测试。
l 测试计划:将测试方案具体安排到项目的各个周期中,确定在项目各个周期中具体实施的测试工作。