我们怎么测试

上一篇 / 下一篇  2015-07-25 14:02:24

测试工作本质上是观察程序的运行行为是否和设想的相同,强调的是整个行为过程,而程序设计更多关注结构本身的结构,特别是面向对象的设计,强调类间调用,弱化了面向过程的概念。正是由于这两个不同的概念,测试人员在和开发人员沟通过程中,感觉始终鸡同鸭讲。那么同样是从需求分析得出的,为什么会有这么大的差别呢?

首先我们来看如下视图:

业务人员根据业务拓展需要,提出了业务需求,也就是集合S,而真正业务及系统影响的范围是U,剩下的U-S的部分其实就是日常的维护。

假设开发分析和程序设计完全一致,那也就是图中的集合PSP的部分就是需求已经说明并且已经实现的部分,在不引入缺陷的情况下,该部分被认为是令人满意的。S-P的部分则是需求已说明或已涵盖,但是程序没有设计的部分,这部分内容在业务测试的角度看,就是缺陷部分,而P-S则是程序根据需求拓展的部分,可能在未来业务的需要会起到一定作用。

从上面的分析来看,在只有一层的业务测试的情况下,真正有效的程序设计就是S-P的部分。

引入测试之后,情况发生了变化:

引入测试集合T之后,对图形发生了重大变化,由上面的分析就可以知道,真正有效的测试变成了SPT,这部分的功能得到了强化,能满足业务的需要。3=(TP)-S,这部分就是测试已经涉及,需求没有说明的部分,这部分可能正确也可能不正确,其实就是测试和开发争论但是始终没有结果的部分,4=(ST)-P,这部分是测试对于需求的覆盖,是无争议的缺陷,而7=T-(SP)存在无意义的测试设计。

因此,测试首要是了解需求提出的意图以及程序设计功能,适当保留7,以备拓展,严格把关1,尽早发现4,让业务尽快确立3,自身提高水准,发现2


TAG:

引用 删除 521sun   /   2015-07-31 16:13:34
5
 

评分:0

我来说两句

日历

« 2024-05-07  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 1894
  • 日志数: 2
  • 建立时间: 2015-07-17
  • 更新时间: 2016-01-09

RSS订阅

Open Toolbar