当前位置:文档之家› 第2章 软件测试基础

第2章 软件测试基础


• 在黑盒测试中交叉使用白盒测试的方法。

2.6软件测试的最佳实践
2.6.1测试计划的制定(5W1H,六何分析法) Why、What、When、Where、Who、How • 为何测试 • 测试哪些方面,不同阶段的工作内容 • 测试不同阶段的起止时间 • 文档、缺陷的存放位置,测试环境 • 人员组成 • 如何去做,使用的测试工具及测试方法
源程序
分析
基本路径测试法 逻辑覆盖法
测试用例
被测程序 覆盖情况分析
执行路径
图2-1 白盒测试过程示意图
图2-2 黑盒测试示意图
案例:设计某购书网中“管理员信息维护”模块的场景 测试用例,管理员信息维护界面如图2-3,点击“Edit” 链接,进入编辑界面,如图2-4。
图2-3 管理员信息维护界面
图2-4 管理员信息编辑界面
案例分析: 第一步:确定基本流和备选流,如表2-1。
表2-1 基本流和备选流
基本流
备选流1 备选流2 备选流3
点击“管理员信息维护”Tab,点击 “Edit”链接,输入正确的管理员姓名、 用户名、登录密码,点击“UpDate”链接。 不点击“Edit”链接,直接点击“删除” 点击“Edit”链接,不点击“Update”点击 “Cancel” 点击“Edit”后,输入错误的用户信息, 点击“UpDate”链接
2)缺点 • 工作量大, 成本高。通常只用于单元测试, 有应用局限; • 无法检测代码中遗漏的路径和数据敏感性 错误; • 不能验证规格说明的正确性; • 不易生成测试数据(通常),必须编码完成才 能根据内部逻辑结构生成。
2.5.2黑盒测试的优缺点
1) 优点: • 测试人员不需要了解实现的细节,包括具体的编 程语言; • 测试员和程序员可以由不同的人员来担任; • 从用户的角度进行测试,容易被理解和接受; • 有助于暴露任何规格不一致或有歧义的问题; • 测试用例的设计可以在规格说明完成之后马上进 行(提早); • 适用于各阶段测试。
• 引言 • 测试概要
–编写目的(可加阅读指南)、项目背景和系统 简介、术语和缩写词、参考资料 –测试目的、范围、用例设计方法、测试环境配 置、测试方法和工具
• 测试结果及缺陷分析
–执行情况记录、测试时间、测试版本、覆盖分 析、缺陷统计与分析
• 测试结论
–是否充分、风险度量、目标是否达成、相关建 议
2)缺点 • 某些代码得不到测试; • 如果没有清晰、简洁的规格说明,难以设计测试 用例; • 如果测试人员不知道开发人员已经执行过该测试 用例,会存在不必要的重复测试;(不是同一人)
• 不能直接针对可能隐蔽了许多问题的特定程序段 进行测试; • 不易进行充分性测试。
• 2.5.3灰盒测试
• 介于白盒测试和黑盒测试之间,是现代测试的一种 理念。 • 在白盒测试中交叉使用黑盒测试的方法;
4
场景4-点击“Edit”后, 系统提示错误信息 输入错误的用户信息
2.5 白盒测试与黑盒测试的比较 2.5.1白盒测试的优缺点
• • • •
1)优点 可构成测试数据对特定程序部分测试,可 以检测代码中的每条分支和路径; 揭示隐藏在代码中的错误; 对代码的测试比较彻底; 有一定的充分性度量手段。 (覆盖率)
第三步:设计用例把数据填入用例表中,如表2-3
表2-3 测试用例
测试 用例ID 1 场景/条件 预期结果Βιβλιοθήκη 场景1-正常管理员信 息维护
输入正常
2
场景2-不点击“Edit” 链接,直接点击“删 除”
场景3-不点击 “Update”点击 “Cancel”
删除正常
3
取消保存上一步输入的信息 管理员姓名、用户名、登录密码变为 不可编辑状态, “UpDate”、 “Cancel”显示为“Edit”
取得需求文档:需求定义文档 需求规格说明文档 需求追踪矩阵
优先级高 新增或修改的功能 使用用例设计技术 80-20原则
确定测试策略:测试的范围 测试方法 测试入口 自动化测试策略
用例和功能对应 各种环境 因素的组合
确定测试系统:测试架构 测试环境 测试配置
2.6.3测试用例文档的编制
1、测试用例的设置
用例和功能对应
2、测试用例的设计
等价类划分法、边界值分析法、错误推测法、 因果图法、逻 辑覆盖法等。 考虑不周 丰富经验和精心设计。
3、测试用例的评审 软件版本更新 4、测试用例的修改更新 5、测试用例的管理 如:word、excel、数据库
反馈缺陷,用例有漏洞
第二步:根据基本流和备选流来确定场景, 如表2-2.
表2-2 确定场景
场景1-正常管理员信息维护 基本流 场景2-不点击“Edit”链接, 基本流 直接点击“删除” 场景3-不点击“Update”点 基本流 击“Cancel” 场景4-点击“Edit”后,输入 基本流 错误的用户信息 备选流1 备选流2 备选流3
预估测试工作量:确定任务 按人天和工作周来预估工作量 得到时间进度计划和里程碑 评估进度风险并制定风险化解计划
准备并复查测试计划:编写策略、系统、工作量和时间进度 文档与项目团队一起复查测试计划
2.6.2测试报告 • 测试报告是测试阶段最后的文档产出物。
如何打造测试团队?
• 2.6.4 选择合适的人才建设测试团队
• 一、确定测试团队在企业中的定位
– 隶属其他部门(如项目经理)还是独立? – 工期短时是否被弱化? 测试团队隶属 质量管理部门
产品组经理
项目经理 设计经理
开发经理
质量保证经理
流程经理
开发工程师
测试人员
烟囱型测试
团队定位
–测试员、开发人员及其它团队成员无法进行有效沟通, 将提高发布风险
洗衣机 洗衣服干净程度 耗电量 耗水量 噪音大小 突然断电造成的影响
• 包括产品质量和测试过程的评价,测试报告基于 测试中的数据采集以及对最终测试结果的分析。 • 一图胜千字
• 编写要素:
• 基本信息
–版本信息、声明信息(免责)
用户:结论(产品质量)
开发者:缺陷结果 项目管理者:测试成本 高层:图表、其它项目比较
2. 我国电话号码一般由两部分组成。
地区码:以0开头的3位或者4位数字。 电话号码:以非0、非1开头的7位或者8位数字。
应用程序会接受一切符合上述规定的电话号码, 而拒绝不符合规定的号码。试用等价类划分法 设计测试用例。
3. 针对自动售货机程序运用因果图法进行测试用 例设计。 自动售货机有两种东西(橙汁、可乐)供选择 (两个按钮),售价均为5角。售货机可以接受 5角钱或1元钱的硬币,需要找零钱。例如,投 入1元硬币买橙汁,如果售货机没有零钱找,则 退回1元硬币,并红灯显示“零钱找完”。

二、确定测试团队的规模 三、确定企业中需要的测试类型 (矩阵)
阶段 功能 安全测试 安装测试 性能测试 容量测试 功能测试 单元测试 集成测试 系统测试 验收测试

• 四、确定需要的测试阶段
– 尽量提早,返工难
• 不同阶段找出缺陷的耗时示意如下:
• 五、建立测试团队的内部组织结构
2.6.5 软件工程迭代开发过程
本章小结
• • • • • 白盒测试的概念和测试用例设计方法 黑盒测试的概念和测试用例设计方法 白盒测试和黑盒测试的比较 There is no “one true way”! 软件测试的最佳实践
– – – – 测试计划 测试报告 测试用例的设计 测试团队建设
习题
1. 假如某个系统的注册用户名要求由字母开头, 后跟字母或数字的任意组合构成,有效字符不 超过6个。 试确定有效等价类和无效等价类, 并据此设计测试用例。
相关主题