当前位置:
文档之家› 探索性测试---《探索式软件测试》知识点汇总
探索性测试---《探索式软件测试》知识点汇总
2.深巷测试法:建议测试人员应该测试该使用情况列表中排在最下面的几
项特性。尝试将最流行和最不流行的特性放在一起混着测试。
漫游测试-旅馆区
当软件“休息”时,它实际上是非常忙碌的。
1.取消测试法:对提供取消选项的功能,或需要长时间才能完成的功能进 行取消操作。
2.懒汉测试法:做尽量少的工作。比如接受所有默认值,尽可能少填数据
性和功能。 3.旅游区:对新用户非常有吸引力,而老用户不再使用的特性和功能。 4.娱乐区:一些辅助特性和功能,用于精疲力竭之后的休闲娱乐。 5.旅馆区:当软件“休息”时,它实际上是非常忙碌的。
6.破旧区:很少被谈及的功能,可能存在非常令人讨厌的漏洞。
漫游测试-商业区
软件包装盒上描述的那些特性,及市场商业活动中或者销售演示中的各种特性。
测试实践
**项目或产品: 指南测试法:依据需求文档+原型设计,熟悉软件。 地标测试法:确认关键软件特性。
超模测试法:UI测试。
恶邻测试法:关注bug数多的模块或相关开发。 反叛测试法 :数量、税率、金额等字段。 取消测试法:各种参照。
谢谢大家!
1.指南测试法:通过阅读用户手册或需求文档等,严格遵照文档的建议执 行操作。热门区域(干净安全)-主要特性(实用可靠)
2.卖点测试法:热门景点一定有其吸引人的理由,同样,软件吸引客户的
特性就是卖点。 3.地标测试法:通过指南测试法和卖点测试法,确定关键的软件特性,也 就是地标。选完地标后,确认顺序。 4.极限测试法:向软件提出很多难以回答的问题。
等。
漫游测试-破旧区
很少被谈及的功能,可能存在非常令人讨厌的漏洞。
1.破坏者:试图利用每个可能的机会机会暗中破坏应用程序。 2.反叛测试法:要求输入最不可能的数据,或者已知的恶意输入。
逆向测试法:输入那些最不可能的数据。
歹徒测试法:突破限制,非法输入。 错序测试法:以错误的顺序做事情。
5.快递测试法:专注于数据。
漫游测试-历史区
从前版本遗留下来的代码,还有那些曾经出现过较多缺陷的特性和功能。
1.恶邻测试法:由于缺陷通常扎堆儿出现,因此产品缺陷多的地方值得反 复测试。
2.博物馆测试法:主要针对遗留代码,最初的开发人员已经离开了很长时
间,而且缺乏文档。
漫游测试-旅游区
有些特性和功能对新用户非常有吸引力,然而老用户不再使用他们。
不同测试对比
即兴测试与探索性测试
• 共同点:即兴发挥(利用直觉和经验,快速的测试软件,并不停的调整 测试策略)
• 不同点:后者是带着“反思”的测试,强调系统性和完整性。
不同测试对比
脚本测试与探索性测试
• 前者要求预先编写好测试脚本。(资源、灵活性、维护成本) • 后者是在测试过程中持续编写、修改、优化测试计划。(敏捷开发)
输入检查(输入值合法则接着处理,否则产生一条错误消息并中止处理)
异常处理代码 2)常规输入和非常规输入 常规输入(开发人员计划的输入,也是真实用户经常用到的输入) 非常规输入(在比较特殊的情况下才发生)
3)默认输入或用户提供的输入
4)使用输出来指导输入选择
局部探索性测试
2.代码路径 测试人员必须明确知道程序里可能有哪些分支,并理解哪些输入会导致 软件走这条分支而不是另一条。
全局探索性测试
设计整体测试计划和测试策略。 软件全局+整体方向
漫游测试
游客+新的城市
全局(整体):确定行程、饭店、住宿等 局部(细节):吃啥喝啥住哪等
漫游测试
1.商业区:软件包装盒上描述的那些特性,及市场商业活动中或者销售演 示中的各种特性。
2.历史区:从前版本遗留下来的代码,还有那些曾经出现过较多缺陷的特
两者结合,互补关系:前者提供测试框架,后者提高测试有效性。
局部探索性测试
在测试过程中,及时作出决定
具体步骤(细节)+明确指导 决策时间短+影响小
局部探索性测试
1.如何测试用户输入 1)合法输入和非法输入(大多数开发人员都不喜欢写错误处理代码) 输入筛选器(用于防止非法的输入值被传递给应用软件的功能代码)
1.长路径测试法:选择长的路径,把埋在应用程序最深处的界面作为测试 目标。
2.超模测试法:关心那些表面的东西。只测试界面。
漫游测试-娱乐区
软件也有一些辅助特性和功能,用于精疲力竭之后的休闲娱乐。
1.配角测试法:专注于某些特定的特性,它们虽然不是用户使用的主要特 性,但和那些主要的特性一同出现在显示器上。
路漫漫其修远兮,吾将上下而求索
浅析探索性测试
• 简介和概念
• 不同测试对比 • 局部探索性测试 • 全局探索性测试
– 漫游测试
• 测试实践
简介和概念
• 作为技术术语,探索性测试(Exploratory Testing)是测试专家Cem Kaner 博士在1983年提出的。
• 它是一种软件测试风格,它强调独立测试人员的个人自由和职责,为了 持续优化其工作的价值,将测试相关学习、测试设计、测试执行和测试 结果分析作为相互支持的活动,在整个项目过程中并行地执行。