《软件测试-黑盒总结教材》由会员分享,可在线阅读,更多相关《软件测试-黑盒总结教材(14页珍藏版)》请在金锄头文库上搜索。
1、主讲:张轶 软件测试技术 C7二楼 QQ:3824644 黑盒测试总结 黑盒测试的基本概念 常用的黑盒测试方法 测试方法的选择 黑盒测试的基本概念 什么是黑盒测试? 黑盒测试也称功能测试,它是通过测试来检测每个 功能是否都能正常使用。在测试中,把程序看作一 个不能打开的黑盒子,在完全不考虑程序内部结构 和内部特性的情况下,在程序接口进行测试,它只 检查程序功能是否按照需求规格说明书的规定正常 使用,程序是否能适当地接收输入数据而产生正确 的输出信息。黑盒测试着眼于程序外部结构,不考 虑内部逻辑结构,主要针对软件界面和软件功能进 行测试。 作用 黑盒测试法注重于测试软件的功能需求 ,主要试图发现
2、下列几类错误。 功能不正确或遗漏; 界面错误; 数据库访问错误; 性能错误; 初始化和终止错误等。 黑盒测试是以用户的角度,从输入数据 与输出数据的对应关系出发进行测试的 。很明显,如果外部特性本身设计有问 题或规格说明的规定有误,用黑盒测试 方法是发现不了的。 相关概念 测试 用例 冗余 遗漏 测试做得什么时候停止? 我们什么时候停止我们的项目?我们应 该在我们达到目标的时候停止。可是, 目标是什么?Aaron认为所谓目标,即测 试应该实现的可度量的要求,这个东西 更常见的叫法测试停止标准。 测试停止标准 在计划阶段尽早订立测试停止标准 测试停止标准应该获得项目负责人的确 认 测试停止标准应
3、该是可度量的 测试停止标准都是可以达到的 测试停止标准的检查者 测试标准应该包含的内容: 有效测试用例(功能)执行率达到X%? 单元测试代码行覆盖率达到X%? 单元测试用例通过率X%? 单元测试用例设计通过评审 核心模块(A,;B,D等模块)测试覆盖 所发现缺陷均纳入缺陷管理系统 优先级最高的bug全部修复 其他bug全部被处理(修复,延迟并报告等处理方 式) 功能测试用例模块,功能点覆盖率达到? 实际工作中会出现的停止“标准” 新的需求变更过大,测试 活动应暂 停,待需求定义稳 定后继续 ; 测试 超过了预定时间 ,且测试时间 不可能继续 增加的情况下 应停止测试 ; 测试 成本增高(Bug
4、发现 率低于1个/周,此时所发现 缺陷低于 预定义的上限); 若开发暂 停,则相应测试 也应暂 停,并备份暂停点数据; 软件系统通过验 收测试 ; 软件项目在其开发生命周期内出现重大估算和进度偏差,需暂 停或终止时,测试应 随之暂停或终止,并备份暂停或终止点数 据; 项目负责 人申明停止项目; 团队 集体(开发,管理,测试 ,市场,销售人员)同意停止 项目(因市场及利益等原因); 测试方法 从理论上讲,黑盒测试只有采用穷举输入测试,把所 有可能的输入都作为测试情况考虑,才能查出程序中 所有的错误。实际上测试情况有无穷多个,人们不仅 要测试所有合法的输入,而且还要对那些不合法但可 能的输入进行测
5、试。这样看来,完全测试是不可能的 ,所以我们要进行有针对性的测试,通过制定测试案 例指导测试的实施,保证软件测试有组织、按步骤, 以及有计划地进行。黑盒测试行为必须能够加以量化 ,才能真正保证软件质量,而测试用例就是将测试行 为具体量化的方法之一。具体的黑盒测试用例设计方 法包括等价类划分法、边界值分析法、错误推测法、 因果图法、判定表驱动法、正交试验设计法、功能图 法、用例场景法等。 错误推测法 错误推测法的概念:基于经验和直觉推测程序中所有可能存在的 各种错误,从而有针对性的设计测试用例的方法。 错误推测方法的基本思想:列举出程序中所有可能有的错误和容 易发生错误的特殊情况,根据它们选择测
6、试用例。例如: 在单元测试时曾列出的许多在模块中常见的错误、以前产品测试 中曾经发现的错误等,这些就是经验的总结。 还有,输入数据和输出数据为0的情况、输入表格为空格或输入 表格只有一行等。这些都是容易发生错误的情况,可选择这些情 况下的例子作为测试用例。 测试方法的选择 通常,在确定测试方法时,应遵循以下原则: 根据程序的重要性和一旦发生故障将造成的损失来确 定测试等级和测试重点。 认真选择测试策略,以便能尽可能少的使用测试用例 ,发现尽可能多的程序错误。因为一次完整的软件测 试过后,如果程序中遗留的错误过多并且严重,则表 明该次测试是不足的,而测试不足则意味着让用户承 担隐藏错误带来的危险,但测试过度又会带来资源的 浪费。因此测试需要找到一个平衡点。 通常在确定测试策略时,有以下5条参考原则: (1)在任何情况下都必须采用边界值分析法。这种方法设计出的测 试用例发现程序错误的能力最强。 (2)必要时采用等价类划分法补充测试用例。 (3)采用错误推断法再追加测试用例。 (4)对照程序逻辑,检查已设计出的测试用例的逻辑覆盖 程度。 如果没有达到要求的覆盖标准,则应当再补充更多的测试用例。 (5)如果程序的功能说明中含有输入条件的组合情况,则应一开始 就选用因果图法。