引言:
什么是黑盒测试呢!?
像我一样的测试小白就会望文生义了:对黑盒子测试
那么黑盒子是什么!?
思考5秒后,得出了这样的答案:黑盒子就是黑色的盒子,嘿嘿!
正文:
1.黑盒测试的定义
黑盒测试以客户的视点进行,进行黑盒测试的测试工程师只知道输入值集合和预期的输出,不知道这些输入时如何被软件转化为输出的。
2.黑盒测试的意义
黑盒测试基于需求实施
黑盒测试即检查已描述的需求还检查隐含的需求
黑盒测试要包括最终用户视角
黑盒测试采用有效和无效输入
3.黑盒测试的时机
黑盒测试活动要求测试团队从项目生存周期的开始就介入
4.黑盒测试的方法
(1)基于需求的测试
需求包括已知需求和隐含需求
需求测试的前提是需求规格说明书(SRS)要经过仔细评审
对需求用“需求跟踪矩阵(RTM)”进行跟踪
(2)正面和负面测试
正面测试用于验证已知测试条件,负面测试用于通过未知条件把产品搞垮
正面测试和负面测试的差别在于它们的覆盖率计算方法,负面测试是没用穷尽的
(3)边界值分析
检查数据值对计算有影响的级差或不连续点,不连续点就是边界值,需要彻底测试
检查内部极限
包含在边界值测试内容中的还有在文档中已经说明的对硬件资源的限制
对于输入值和输出值都要进行边界值分析
(4)决策表
形成决策表的步骤:
1.确定决策变量
2.确定每个决策变量的可能取值
3.枚举每个变量允许值得组合
4.确定变量对于其他输入变量组合没有的取值,并用“—(无所谓)”符号表示
5.对于每个决策变量取值组合,列出行动或预期结果
6.形成表格
(5)等价划分
:用于确定少量能够产生尽可能多的不同输出条件的有代表性的输入值
产生同一个预期输出的一组输入值叫做一个划分
采用这种技术进行测试包括两个步骤
(a).针对产品的输入和输出取值的完备集,确定所有划分
(b).从每个划分中取出一个成员进行测试,以最大化覆盖率
(6)基于状态或基于图的测试
适用于:
1.应用程序可以用一组状态刻画
2.已经很好理解引发从一个状态到另一个状态迁移的数据值
3.已经很好理解每个状态内部对所接收数据的处理方法
(7)兼容性测试
确保产品功能对于不同基础设施组件能够一致地发挥作用的测试叫做兼容性测试
执行兼容性测试使用兼容表的通用常用技术有:
横向组合和智能采样
涉及产品本身部件的产品兼容性测试可以进一步分为
反向兼容测试和正向兼容测试
(8)用户文档测试
用户文档测试要保证文档与产品的相互一致
(9)领域测试
领域测试是测试人员运用自己的领域知识测试产品对于用户日常工作适合性的测试
黑盒测试方法小结