软件测试 第3章 测试用例设计 如何进行测试, 初学者:立即进行测试,希望找出所有错误,如同没有经过训练的开发工程师急于编写代码一样。

Slides:



Advertisements
Similar presentations
2.8 函数的微分 1 微分的定义 2 微分的几何意义 3 微分公式与微分运算法则 4 微分在近似计算中的应用.
Advertisements

1 计算机软件考试命题模式 计算机软件考试命题模式 张 淑 平 张 淑 平. 2  命题模式内容  组织管理模式 − 命题机构和人员组成 − 命题程序  试卷组成模式.
专题六 语文课程标准修订对“实验稿”作了哪些修改和调整
校第六届“新天瑞”杯创业计划大奖赛 赛前培训
第六 章数据库访问页 6.1 数据访问页视图 6.2 创建数据访问页 6.3 编辑数据访问页 6.4 查看数据访问页 退出.
证券投资技术分析.
案例2 胸卡的制作. 案例2 胸卡的制作 知识要点: 学习重点及制作思路 学习目的: 邀请函的制作步骤: 1.掌握邮件合并功能 2.掌握比较并合并文档方法 3.掌握页面插入背景图 4.熟练使用文本框 知识要点: 1.邮件合并功能 2.文档中插入域内容 3.文本框的使用 技能要点: 1.域、文档部件操作.
UI(用户界面)集训班 Illustrator 高级班.
会计学专业基础课堂之 基础会计(初级会计) 安徽财经大学会计学院.
基于解释性语言的手机跨平台架构 Sloan Yi. Qt MTK.
Oracle数据库 Oracle 子程序.
第一章 商品 第一节 价值创造 第二节 价值量 第三节 价值函数及其性质 第四节 商品经济的基本矛盾与利己利他经济人假设.
全国计算机等级考试 二级基础知识 第二章 程序设计基础.
在PHP和MYSQL中实现完美的中文显示
程序的形式验证 - 简介 中国科学院软件研究所 张文辉 1.
面向对象建模技术 软件工程系 林 琳.
走进编程 程序的顺序结构(二).
Visual Studio Team System 简介
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
Online job scheduling in Distributed Machine Learning Clusters
What have we learned?.
化学品清单 类型.
PaPaPa项目架构 By:Listen 我在这.
绿色圃中小学教育网 比例 比例的意义 绿色圃中小学教育网
程序设计工具实习 Software Program Tool
SOA – Experiment 2: Query Classification Web Service
何勉 新浪微博: Scrum框架及其背后的原则 原始图片 何勉 新浪微博:
录制回放工具使用说明 鲁晓宇
实用网络营销基础 冯英健 2006年8月6日 首页.
新一代安全网上银行 小组成员:杨志明 王晶 任毅 刘建中 关昊 刘超.
解决变化问题的自底向上 流程建模方法 严志民 徐玮.
C语言程序设计 主讲教师:陆幼利.
EBNF与操作语义 请用扩展的 BNF 描述 javascript语言里语句的结构;并用操作语义的方法描述对应的语义规则
简单介绍 用C++实现简单的模板数据结构 ArrayList(数组, 类似std::vector)
标准配色方案 背景 文本和线条 阴影 强调色 主色一 主色二 主色三 主色四 推荐应用顺序. 标准配色方案 背景 文本和线条 阴影 强调色 主色一 主色二 主色三 主色四 推荐应用顺序.
论文答辩PPT模板 答辩学生:橘子皮 指导老师:PPT工作室.
VisComposer 2019/4/17.
Harvard ManageMentor®
提供机构:XXXXXXXXX 机构级别:X级X等(无级别可不填写)
Cassandra应用及高性能客户端 董亚军 来自Newegg-NESC.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月13日.
工业机器人知识要点解析 (ABB机器人) 主讲人:王老师
1.2 有理数 第1课时 有理数 伏家营中学 付宝华.
Web安全基础教程
第4章 Excel电子表格制作软件 4.4 函数(一).
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
框架完整的 商业项目计划书 BUSINESS PLAN.
数据集的抽取式摘要 程龚, 徐丹云.
Logo 思维 力量 商务展示·企业内训.
LOGIX500软件入门 西安华光信息技术有限公司 2008年7月11日.
Chapter 18 使用GRASP的对象设计示例.
魏新宇 MATLAB/Simulink 与控制系统仿真 魏新宇
OpenStack vs CloudStack
敏捷开发下 问题驱动的软件测试设计 郑文强 测试架构师 阿尔卡特-朗讯.
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
本节内容 C语言的汇编表示 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
CMP 讲义 2018 CMP设计哲学及基础概念 CMP推荐的4层代码结构.
第六章 Excel的应用 五、EXCEL的数据库功能 1、Excel的数据库及其结构 2、Excel下的数据排序 (1)Excel的字段名行
基于列存储的RDF数据管理 朱敏
第8章 创建与使用图块 将一个或多个单一的实体对象整合为一个对象,这个对象就是图块。图块中的各实体可以具有各自的图层、线性、颜色等特征。在应用时,图块作为一个独立的、完整的对象进行操作,可以根据需要按一定比例和角度将图块插入到需要的位置。 2019/6/30.
本节内容 进程 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第四章 UNIX文件系统.
第十七讲 密码执行(1).
创建、启动和关闭Activity 本讲大纲: 1、创建Activity 2、配置Activity 3、启动和关闭Activity
LOGO 年中工作汇报PPT模板 在此处添加小标题 主讲人:宝藏PPT 201X.X.X.
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
DEV310 Microsoft Visual Studio 2005托管代码调试
IT 方法 INTOSAI IT 审计培训.
DEV243 Visual Studio Team System 测试深入探讨
学习目标 1、什么是列类型 2、列类型之数值类型.
Presentation transcript:

软件测试 第3章 测试用例设计 如何进行测试, 初学者:立即进行测试,希望找出所有错误,如同没有经过训练的开发工程师急于编写代码一样。 第3章 测试用例设计 如何进行测试, 初学者:立即进行测试,希望找出所有错误,如同没有经过训练的开发工程师急于编写代码一样。 工程:软件开发是一个工程。 软件测试也是一个工程。

本章内容 3.1 什么是测试用例 3.2 为什么需要测试用例 3.3 测试用例的质量 3.4 测试用例的组织和使用 讲解了测试用例的概念,通过例子、小练习进一步了解了测试用例。清楚了测试用例是测试执行的基础这样一个事实。说**是执行的基础,可以看出测试用例的重要作用,我们从以下几个方面进行分析

测试用例的作用 重要参考依据 提高测试质量 有效性 复用性 客观性 可评估性和可管理性 知识传递 究竟有什么用处? 1。期望结构--评判的依据 2。用例设计编写的基础是建立在对需求和产品的特性了解的之上,只要如此才能发现更多缺陷 3。有效性:测试用例都是采用不同测试技术精心设计,如边界值、等价类、负面考虑、对重点部位重点关注,能有效地发现缺陷 4。复用性:软件开发新版本,同一个功能多次测试, 5。客观性:不同的人参照测试用例实施测试,就可以保证测试质量,减少人为因素的影响。 6。知识传递:软件本身可以对用例进行复用,执行测试的人也可以对用例进行复用。

本章内容 3.1 什么是测试用例 3.2 为什么需要测试用例 3.3 测试用例的质量 3.4 测试用例的组织和使用

测试用例的质量 3.3.1 测试用例的质量要求 3.3.2 测试用例书写标准 3.3.3 如何设计出高质量的测试用例 3.3.4 测试用例的评审 既然测试用例重要,那么我们如何设计出高质量的用例?之前,了解用例的质量要求?两个方面:整体和局部。

单个测试用例的质量要求 具有可操作性 具备所需的各项信息 各项信息描述准确、清楚 测试目标针对性强 验证点完备,而且没有太多的验证点 没有太多的操作步骤,例如不超过7步 符合正常业务惯例。 单个测试用例的质量要求集中在细节上。比如说文字的 操作性:设计时充分考虑可执行性,有明确的执行步骤可以重现缺陷 验证点完备,而且没有太多的验证点:也称检查点、测试点,可采用对待测问题定义优先级的方法,决定哪些需求点/问题点写成用例,哪些需求点/问题点只作为检查点出现

整体测试用例的质量要求 覆盖率。依据特定的测试目标的要求,尽可能覆盖所有的测试范围、功能特性和代码。 易用性。测试用例的设计思路清晰、组织结构层次合理,测试用例操作的连贯性好,使单个模块的测试用例执行顺畅。 易维护性。应该以很少的时间来完成测试测试用例的维护工作,包括添加、修改和删除测试用例。易用性和易读性,也有助于易维护性。 粒度适中。既能覆盖各个特定的场景,保证测试的效率;又能处理好不同数据输入的测试要求,提高测试用例的可维护性。 测试用例的整体可以看作是个体的集合,但是并非是简单数量上的增多。 1000不能保证完全测试,但是经过计划的100个用例可以在很大程度上满足测试的要求。 作为测试用例集合的整体质量,我们希望对软件产品所有的功能特性和非功能特性都进行测试,因此,重点关注的是覆盖率。 覆盖率可分为基于需求的、基于代码的测试覆盖 测试覆盖 = T(p,i,x,s) / RfT , 其中: T(p,i,x,s)是已计划的、已实施的、已执行的和成功的测试用例数,RfT 是测试需求 (Requirement for Test) 的总数 测试覆盖 = Ie / TIic ,其中:Ie 是用代码语句、代码分支、代码路径、数据状态判定点或数据元素名表示的已执行项目数。TIic (Total number of Items in the code) 是代码中的项目总数。 粒度适中:粒度过粗会导致测试点不够准确,操作步聚或期望结果不明确,还有个麻烦就是,发现很多bug都对应着一个用例,这样给缺陷管理和统计起来也带来麻烦,在项目后期的报告中不能清晰的统计缺陷。 而粒度过小,如每个测试点都对应一个或多个测试用例,测试用例的数量太大,管理维护工作量大,且限制人的思维。

测试用例书写标准 好 前边:整体和个体两个方面介绍了要求: 如果我们遵照这些要求进行了用例设计,最终在书写时候也要注意用例的各项要素要完备。 如何保证测试用例的高质量:首先从形式上讲,可遵守如表所示的各项要素

如何设计出高质量的测试用例 以需求为导向设计测试用例 责任到人 灵活的设计方法 测试用例设计不能局限于输入数据 尽量避免含糊的、冗长的或复杂的测试用例 尽量将具有相类似功能的测试用例抽象并归类 书写规范,看到的用例只是一个结果,要真正保证测试用例的质量,还要从 设计、评审、维护和执行等过程进行分析。 设计: 设计方法:黑盒:等价类划分、边界值划分、因果图分析和错误猜测, 白盒:语句覆盖、判定(分支)覆盖、条件覆盖、判定/条件覆盖、多重条件覆盖。 除了数据外,还有用例的结构、设计策略、设计思路等

测试用例的评审 分析其设计思路,是否符合业务逻辑、是否符合技术设计的逻辑、是否可以和系统架构、组件等建立起完全的映射关系? 在局部上,应有重有轻,抓住一些测试的难点、系统的关键点,从不同的角度向测试用例的设计者提问。 在细节上,检查是否遵守测试用例编写的规范或模板,是否漏掉每一元素、每项元素是否描述清楚 检查表,提问 需求和设计评审,对于用例来讲,同样是提高质量的有效手段之一。 从框架结构 -> 具体细节

评审的内容有以下几个方面: 1) 用例设计的结构安排是否清晰、合理,是否利于高效地对需求进行覆盖。 2) 优先级安排是否合理。 3) 是否覆盖测试需求上的所有功能点。 4) 用例是否具有很好可执行性。 5) 是否已经删除了冗余的用例。 6) 是否包含充分的负面测试用例。 7) 是否从用户层面来设计用户使用场景和使用流程的测试用例。 8) 是否简洁,复用性强。 具体的讲,从以下这些方面: 4.例如用例的前提条件、执行步骤、输入数据和期待结果是否清晰、正确;期待结果是否有明显的验证方法。 6.充分的定义,如果在这里使用2&8法则,那就是4倍于正面用例的数量,毕竟一个健壮的软件,其中80%的代码都是在“保护”20%的功能实现。 8.例如,可将重复度高的步骤或过程抽取出来定义为一些可复用标准步骤。

测试用例的维护 随着产品版本的不断升级,软件测试用例也需要得到及时维护,有时还需要重构——对测试用例的结构进行调整,包括用例模块的合并和分解,确保每一个测试用例都是有效的 测试用例的维护是一项长期的工作,日积月累,测试用例的质量会得到很大的改善。

测试用例的执行(run case) 清晰而正确的理解测试用例 严格执行 从学习的流程讲,先接触执行,然后是编写。 执行用例=贯彻用例编写者的测试思想,不能曲解和误解。 记事本 != 写字板 严格执行,不能走样: 输入 != 粘贴,可以增加“粘贴”的测试用例 结果比较很重要,但是测试过程也一定要注意,遇到问题,立即停下,进行相应的记录。

3.4 测试用例的组织和使用 3.4.1 测试用例的创建 3.4.2 测试用例套件 3.4.3 测试用例的维护

测试用例的创建 建立合适的、可扩展的测试用例框架,从而借助这个框架能有效地组织众多的测试用例,包括对测试用例的分类、清晰的层次结构等 前 讲述了测试用例的质量要求,也学习了要从设计、评审、维护和执行等方面来保证测试用例的质量。 对于一个测试对象,我们如何来创建具体的测试用例呢? 先搭骨架后填肉的做法。

实例 书本中格式的调整: 测试套件:由一系列测试用例和与之关联的测试环境组合而构成的集合。 如何组套?按照程序功能模块、用例类型、用例优先级 给出了“功能测试”时候,哪些情况需要创建测试套件

小结 测试用例 测试用例的质量要求 测试用例的设计、评审、维护和执行 定义 要素 本章,定义:验证测试点而设计的 条件、步骤、期望和相关数据的集合。 要素:测试目标、环境、输入数据、步骤和期望结果 从个体和整体来说明了对测试用例的质量要求 从设计、评审、维护和执行方面说明了对用例质量保证的重要意义,当然 格式要注意遵守规范。

练习:QQ登录界面测试用例 将要求书写黑板: 1。多少个测试点(测试用例更多) 所有可以看到的东西、框、checkbox,按钮,标题, 2。优先级高的有哪些 3。帐户测试有哪些方面内容 4。帐号的控件为什么为列表框? 5。最大化按钮为什么不可用?

序号     操作                     期望结果             实际结果           是否通过   1:      除0操作                     报错                   报错                 pass   2:   最大值+1        3:   最大值+2   4:   最小值-1   5:   负数开方   6:   0开方   7:   正数开方   8:   小数开方   9:   退格键   10:CE功能   11:C功能   12:应用   MC   MR  …等时,MC上面的区域显示的值是否正确等   13:0的倒数   14:0/0           1-(-1)   15:优先级:     1+2*3             9          16:显示窗口不可编辑等等   17:连乘          4**8         应该得32             4//8          0.5

小游戏:一个纸杯的测试用例

一 需求:测试一个带广告图案的花纸杯 二 相关背景: 1.杯子特性: (1)杯子的容量: 能装多少升水,空杯,半杯,满杯 (2)杯子的型状: 圆型,上面口大,下面小。 (3)杯子的材料: 纸杯 (4)杯子的抗摔能力: 风吹是否会倒,摔一次是否会摔坏,摔多次是否会摔坏 (5)杯子的耐温性: 装冷水,冰水,热水 2.广告图案: (1)广告内容与图案碰水是否会掉色 (2)广告内容与图案是否合法 (3)广告内容与图案是否容易剥落

三 影响范围: 1.可用性: (1)装入液体多久后会漏水 (2)装入热水多久后可以变温,装入冰水多久后可以融化 2.安全性: (1)装入不同液体,是否会有化学反应。比如:可乐,咖啡等饮料 (2)装入热水杯子是不是会变型和异味 3.性能: (1)不同人群是否能适合杯子的型状,包括握杯的感觉和喝水的感觉 (2)不同人群是否能接受杯子的广告内容与图案