读书笔记 《软件测试》 第二部分 基础测试-第5章 戴上眼罩测试

今天写了很多,但是发表的时候页面提示了一个错误,偏偏自己复制的内容由有问题。哎,郁闷阿。所以找了这个工具来写。

这一章主要是讲黑盒测试。主要讨论了一下几个问题:

 

  • 什么是动态黑盒测试
  • 如何通过等价类的划分减少测试用例的数量
  • 如何判断故障的边界条件
  • 使用良好的数据引入缺陷
  • 如何测试软件状态和状态转换
  • 如何使用重复、压迫和重负方法找出缺陷
  • 缺陷的一些秘密隐藏之处

 5.1 什么是动态黑盒测试。

动态:是指在软件运行情况下的测试。

黑盒:输入数据,测试结果,不考虑中间的处理过程。

5.2 通过性测试和失效性测试

通过性测试:确认软件至少可以做什么,不考虑其能力,不用项办法让其崩溃。

失效性测试:找出软件在那些情况下无法正常工作。

问题:为什么需要做通过性测试?

答案:做通过性测试是十分必要的,首先看其是否可以完成基本的功能。往往在通过性测试上就会发现很多缺陷。

5.3 等价类划分

如何选择测试用例是测试人员一个十分重要的工作,而选择用例的方法就是等价类划分。他把海量的测试用例减少到很少,但是这种减缩,必须是可控制,且仍然足以测试软件。所以说这种划分是有一定风险的。当然越有经验的人,划分的越合理。

5.4 数据测试 

划分测试用例的关键原则为:

边界条件

什么是边界条件


边界条件的类型:


一些可以参考的边界:
第一个/最后一个 最小值/最大值 开始/完成 超过/在内
空/满 最短/最长 最慢/最快 最早/最迟
最大/最小 最高/最低 相邻/最远


查找边界的方法:尝试在边界的情况下增加一个或者减少一个,找出边界。

次边界条件

次边界条件:用户无法看到,但是在软件内部,测试人员有必要检查的这些边界条件。

我认为这样的定义,是比较模糊的,大概是除去界,上的那些边界条件吧。不过一下子也想不到什么可以套在这个定义上的例子。书中的例子个人认为也比较没有说服力。 不过ASCII码和 UNICODE这个例子倒是不错,有时候是会出现这种错误,对输入的中文字符处理不好。

空值和无效数据

默认、空白、空值、零值、无

(程序员常忽视在什么都没有输入的时候 按Enter键,所提示的错误)

非法、错误、不正确、垃圾数据

(输入垃圾数据,这是一种失效性测试,没有什么具体的规则。用户在使用软件的时候不会为自己的随意操作负责)

5.5 状态测试

软件测试是指当前所处的条件或者模式。测试人员必须测试软件的状态和状态的转换。

第一次看这些的时候,是用自己接触过的具体来对照理解的。感觉这个状态是很难理解的一个东西,感觉自己现在做的MIS系统划分这些状态是没有什么必要的。但是对于书中的例子,确实比较好的,以画图软件来说,选择一个工具就进入了一个状态。软件是多样化的,思考的时候也要想到各种各样的软件,比如游戏软件,另一些软件,不要把自己固化在一MIS这个范围里。

测试软件的逻辑流程

建立软件转换图

图的制作可以用不同的方法做,没有固定的格式。但是应该表示出以下项目:

  • 软件可能进入的每一种独立状态
  • 从一种状态转入另一种状态所需要的条件
  • 进入或者退出某种状态试的设置条件及输出结果

 

减少要测试的状态及转换的数量

原则:

  • 每种状态都要访问一次
  • 测试常用的转化
  • 测试最不常用的分支
  • 测试所有错误状态及其返回(这里指测试对错误的处理)
  • 测试随即状态的转化

失败状态测试

竞争条件:在同别的程序产生竞争的情况下。
和时序错乱:

重复测试:不断重复的执行一个操作,甚至成千上万次。有时在一个操作处理一点时间后,性能会下降。比如内存泄露这样的问题。

压迫测试:使软件在不够理想的条件下运行。比如:CPU慢,内存少,网络条件差。

重负测试:提供条件给软件发挥,让其处理最大的能处理的数据。(时间也是一种重负测试)

 

5.6 其他黑盒测试技术

  • 像笨拙的用户那样做
  • 在已经找到软件缺陷的地方找找
  • 像黑客那样考虑问题
  • 凭借经验、直觉、和预感

本章只是测试的开始。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值