Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4130624
  • 博文数量: 626
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 11080
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-23 13:08
文章分类

全部博文(626)

文章存档

2015年(72)

2014年(48)

2013年(506)

分类: IT业界

2013-09-13 09:22:48

章四 检查产品说明书


一、产品说明书的低层次测试技术
1、产品说明书属性检查清单
经过深思熟虑,可称为“一字不漏”的优秀产品说明书应具有8个重要的属性:
1)完整:是否有遗漏和丢失?完全吗?单独使用时是否包含所有内容?
2)准确:既定解决方案正确吗?目标定义明确吗?有没有错误?
3)精确、不含糊、清晰:描述是否一清二楚?是否有单独的解释?容易看懂和理解吗?
4)一致:产品功能是否自相矛盾,或与其它功能有无冲突?
5)贴切:描述功能的陈述是否必要?有没有多余信息?功能是否符合原来的客户要求?
6)合理:在规定的预算和进度下,以现有人力、工具和资源能否实现?
7)代码无关:产品说明书是否坚持定义产品,而不是定义其软件设计、架构和代码?
8)可测试性:功能是否测试?给测试员提供的建立验证操作的信息是否足够?
2、产品说明书术语检查清单
在审查产品说明书时,还有一个问题用语检查清单。问题用语通常表明功能没有仔细考虑——可能归结于前文所述的某一属性。
1)总是、每一种、所有、没有、从不:看到此类绝对肯定或否定的描述,需要确认是这样的。软件测试员要考虑违反这些情况的用例。
2)当然、因此、明显、显然、必然:这些话意图说服你接受假定情况,不要上当。
3)某些、有时、常常、通常、经常、大多、几乎:这些话太过模糊,“有时”发生作用的功能无法测试。
4)等等、诸如此类、依此类推、例如:以这样的词结束的功能清单无法测试。功能清单要绝对或者解释明确,以免让人对功能清单内容产生迷惑。
5)良好、迅速、廉价、高效、小、稳定:这些是无法量化的术语,无法测试的。必须进一步准确定义其含义。
6)处理、进行、拒绝、跳过、排除:这些用语可能会隐藏大量需要说明的功能。
7)如果...那么...:找出“如果...那么...”而缺少配套的“否则”结构的陈述。想想没有如果发生会怎样。

章五 带上眼罩测试软件


一、动态黑盒测试:不深入代码细节测试软件的方法。常被称为行为测试。
1、有效的动态测试需要关于软件行为的一些定义——也即需求文档或者产品说明书。
清楚了被测试软件的输入和输出之后,接下来要开始定义测试用例(test case)。测试用例是指进行测试时使用的特定输入,以及测试软件的过程步骤。
选择测试用例是软件测试员最重要的一项任务。不正确的选择可能导致测试量国大或者过小,甚至测试目标不对。准确评估风险,把无穷尽的可能性减少到可以控制的范围是成功的诀窍。
2、在没有产品说明书时使用探索测试。
了解软件、设计测试、执行测试同时执行。此时需要把软件当作产品说明书来对待,系统地逐项了解软件的功能、记录软件的执行情况、详述描述功能。
先用静态黑盒技术,再用动态黑盒技术。
二、通过性测试和失效性测试
1、测试软件有两种基本方法:通过性测试(test-to-pass)和失效性测试(test-to-fail)。
在进行通过性测试时,是确认软件至少能做什么,而不会考验其能力。
2、在设计和执行测试用例时,总是首先进行通过性测试。在破坏性测试之前看看软件基本功能是否能实现是很重要的,软件测试员可能会吃惊地发现仅仅正常使用软件就会发现那么多软件缺陷。
3、确信软件在普通情况下能正确运行之后,就可以采取各种手段搞垮软件来找出软件缺陷了。
纯粹为了破坏软件而设计和执行的测试用例称为失效性测试或错误强制测试。
失效性测试通常不会突然出现,它是蓄意攻击软件的薄弱环节。

阅读(773) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~