学习测试基础:测试基本概念

上一篇 / 下一篇  2010-12-29 15:02:04

一:什么是软件测试

   软件测试,目前定义混杂,没有统一的标准,但是最经典的定义是:在规定的条件下对程序进行操作,以发现错误,对软件质量进行评估的一个过程。
二:什么是软件质量

   软件质量包括:内部质量,外部质量,使用质量。软件质量:软件满足规定或潜在用户需求的能力。
三:软件测试与软件质量的区别

   质量保证(QA):主要工作是通过预防,检查与改进来保证软件质量。它所关注的是软件质量的检查与测量。着眼软件开发活动中的过程,步骤及产物,而不是对软件进行剖析进而找出问题。

   软件测试:测试关心的不是过程的活动,而是对过程的产物以及开发出的软件进行剖析。测试人员要“执行”软件,对过程中的产物—开发文档和源代码进行走查,运行,以找出问题,报告质量。测试人员也必须假设软件存在问题,所以所做的操作都是为了找出更多的问题,而不仅仅验证每一件事是正确的。
四:软件测试的内容

    根据测试定义,测试贯穿于整个软件生命周期中。在开发的不同阶段,需要测试不同的内容。包括文档,源代码,数据等。
五:软件测试的目的

    测试的目的,是想以最少的人力,物力和时间找出软件中潜在的各种错误与缺陷,通过修正各种错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患以及带来的商业风险。(注意这个问题的答案,经常会与软件测试的定义混淆)
六:软件测试的分类(面试问题)

    按开发阶段来分:单元测试,集成测试,系统测试,验收测试。

    按测试的实施单位来分:开发方测试,用户测试,第三方测试。

    按测试技术白盒测试黑盒测试,灰盒测试。
七:黑盒,白盒,灰盒测试概念

    白盒测试:知道产品内部工作过程,可通过测试来检测产品内部是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都能够按照预定要求正确工作,而不管产品的性能。它包括两种测试方法:静态测试和动态测试。静态测试时不通过执行程序而进行测试的技术,其关键功能是检查软件的表示和描述是否一致,没有冲突或者产生歧义。而动态测试需要软件的执行,当软件系统在模拟的或真实的环境中执行之前,之中,之后,对软件系统行为的分析是动态测试的主要特点。

    黑盒测试:是一种非常重要的测试策略,又称为功能测试。使用这种测试方法,将程序视为一个黑盒子。测试目标与程序内部机制和结构完全无关,而是将重点集中放在发现程序不按其规范正常运行的环境条件。

    灰盒测试:结合了白盒与黑盒的要素。关注输出对于输入的正确性,同时也关注内部表现,但不像白盒那样详细,完整,只是表征性的。
八:软件测试模型(面试常问到的问题)
V模型

用户需求

需求分析与系统设计

概要设计

详细设计

验收测试

编码

单元测试

集成测试

确认测试与系统测试

从这个图,可以直观的观察到测试过程的局限性,它把测试过程放在了需求分析,概要设计,详细设计与编码之后了,容易使人理解测试是软件开发的最后一个阶段,主要针对程序进行测试寻找错误了。而需求分析阶段隐藏的问题只能在最后才能发现。所以,这个图形,不能很好的反应软件测试贯穿整个开发的过程。(笔者个人认为这种图形,比较适合黑盒测试)
W模型

在V模型的基础上,演化出W模型。

用户需求&验收测试设计&&&&

验收测试

确认测试与系统测试

需求分析与系统设计

用户需求

编码

集成

实施

概要设计&集成测试设计

详细设计&单元测试设计

单元测试

集成测试

交付

详细设计

概要设计

需求分析与系统设计&验收测试设计

 

                                                                                                          

根据图形,很容易看出,W模型比V模型更科学,它伴随着整个开发过程,而且测试对象不仅仅是程序,同时也测试需求与设计。
H模型

 

测试准备            测试就绪点           测试执行           测试流程

其它流程

H模型:测试条件只要成熟,测试准备活动完成了,那么就可以执行测试活动。在H模型中,测试模型是一个独立的过程,贯穿于整个产品周期,与其他流程并发的进行。当某个测试时间点就绪时,软件测试即从测试准备阶段进入测试执行阶段。

封板
X模型

程序片段1

测试设计

工具配置

执行测试

工具配置

测试设计

程序片段n

工具配置

测试设计

执行测试

集成1……n

执行测试

编码完成

探索性测试

执行测试

 
九:软件测试生命周期:

    软件测试生命周期一般包括7个阶段:1)计划 2)分析,3)设计,4)构建,5)测试周期,6)最后测试和实施,7)实施后。

   

 
白盒测试方法

 

白盒测试方法包括动态和静态。

静态包括:代码检查,静态结构分析,代码质量度量等。代码检查又包括:代码走查,桌面检查,代码审查。

代码走查与检查都要求一个小组的人员来阅读或直观检查特定的程序。经常采用头脑风暴.

注意一点:头脑风暴,是测试,非调试。

头脑风暴的程序:

1:准备阶段

    确立问题,提前一周通知给参加人员,一遍又独立思考的时间。

2:头脑风暴

  主持人简明介绍讨论问题的内容,扼要介绍各种系统的设想和方案,然后激发参加者踊跃发言,一些有价值的设想,往往可以经过“思维共振”的“头脑风暴”,通过对两个,对个设想的综合迅速发展起来。

3:解决问题

    综合大家的意见后,进而提出最终解决问题的可行性方案。

代码走查总,3~4人一组,参加者其中之一是程序编写者,测试的工作主要是其他人。

代码走查与代码检查是对过去桌面


TAG:

 

评分:0

我来说两句

日历

« 2024-04-13  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 5108
  • 日志数: 11
  • 书签数: 2
  • 建立时间: 2010-10-09
  • 更新时间: 2011-04-01

RSS订阅

Open Toolbar