测试分类和测试用例
-
一:软件测试分类
软件测试是一项复杂的系统工程,
从不同的角度考虑可以有不同的划分方法,<
/p>
对测试进行分类是为了更好的明确测试的过程,了解测试究竟要完成哪些工作,
尽量做到全面测试。
1
:按是否需要执行被测软件的角度
静态测试:
不利用计算机运行待测程序而应用其他手段实现测试
目的,
如代码审核、
无效的
死循环、多
余的变量等。可借用第三方测试工具,如:
PC-lint
:支
持几乎所有流行的编辑
环境和编译器,比如
Borland C
++
从
1.x
到
5.x
各个版本、
Borland C++ Build
p>
、
GCC
、
VC<
/p>
,
、
watco
m
C/C++
、
Source
insight
、
intel
C/C++
等等,
也支持
16/32/64
的平台环境。
动
态测试:通过运行被测试软件来达到目的。
2
:按阶段划分
单元测试:对软件中的基本组成单位进行的测试,如一个模块、一个过程等等。
<
/p>
集成测试:
在软件系统集成过程中所进行的测试,
其主要目的是检查软件单位之间的接口是
否正确。
<
/p>
系统测试:
对已经集成好的软件系统进行彻底的测试,
以验证软件系统的正确性和性能等满
足其规约所指定的要求,
检查软件的行为和输出是否正确并非一项简单的任务。
软件系统测
试方法很多,主要有功能测试、性能测试、随机测试等等。
验收测试:在向软件的购买者展示该软件系统满足其用户的需求。
回归测试:在软件维护阶段,对软件进行修改之后进行的测试。
Alpha
测试:在系统开发接近完成时对应用系统的测试;
Beta
测试:当开发和测试根本完成时所做的测试,而最终
的错误和问题需要在最终发行前
找到。一般由最终用户或其他人员员完成。
3.
按测试方法划分
<
/p>
白盒测试:
也称结构测试或逻辑驱动测试,
是指基于一个应用代码的内部逻辑知识,
即基于
覆盖全部代码
、
分支、
路径、
条件的测试。
白盒测试的主要方法有逻辑驱动、
基路测试等。
白
盒测试可以借助一些工具来完成如
J
unit Framework
,
Jtest
< br>等。
黑盒测试:
指不基于内部
设计和代码的任何知识,
而基于需求和功能性的测试,
黑盒测试
也
称功能测试或数据驱动测试,
它是在已知产品所应具有的功能
,
通过测试来检测每个功能是
否都能正常使用。
黑盒测试也可以借助一些工具,
如
WinRunner
,
QuickTestPro
,
Rational Robot
等。
灰盒测试:
介于白盒与黑盒之间,关注输出对于输入的正确性,同时也
关注内部表现。
结合
了白盒测试和黑盒测试的要素
.
它考虑了用户端、特定的系统知识和操作环境。
ALAC(Act-like-a-customer)
测试:
一种基于客户使用产品的知识开发出来的测试方法。
ALAC<
/p>
测试是基于复杂的软件产品有许多错误的原则。
最大的受益者是用
户,
缺陷查找和改正将针
对哪些客户最容易遇到的错误。
4.
按执行过程的划分
手动测试:由测试人员执行用例的过程,也是大部分公司的测试现状。
p>
自动化测试:
把以人为驱动的测试行为转化为机器执行的一种过程。
可分为工具自动化和代
码自动化。
适用
于需求不经常变动、
项目期足够长、预算足够、自动化代码复用率高等特点
的项目。
5.
其他常见的
测试方法有:功能测试、性能测试、压力测试、负载测试、易用性测试、安装
测试、界面
测试、文档测试、兼容性测试、安全性测试等
二
.
测试用例设计
等价类划分:
边界值分析
定义:
是对输入或输出的边界值进行测试的一种黑盒测试方
法。通常边界值的分析法是作为对等
价类划分法的补充
经验:大量的错
误是发生在输入或者输入范围的边界上,而不
是发生在输入输出范围的内部。因此针对各
种边界情况设计
测试用例,可以查出更多的错误。
举例:
对于要求输入范围是
1-
100
分的成绩测试的边界值就是:
-1
、
0
、
1
和
99
、
100
、
101
因果图方法
定义:
是一种利用图解法分析输入的各种组合情况,从而设计
测试用例的方法,它适合于检查程
序输入条件的各种组合情
况
举例:
有一个处理单价为
5
p>
毛钱的饮料的自动售货机软件测试
用例的设计。其规格说明如下:若
投入
5
毛钱或者
1
元钱的
硬币,按下【橙汁】或者【啤酒】的按钮,则相应的饮料就
< br>送出来。若售货机没有零钱找,则一个显示【零钱找完】的
红灯提醒亮起,
这时在投入
1
元硬币并按下
< br>【橙汁】
或者
【啤
酒】的按钮后
,饮料不送出来且
1
元的硬币退出来;若有零
< br>钱找,则显示【零钱找完】的红灯提醒灭掉,在送出相应饮
料的同时,再找
5
毛钱。
原因和结果:
原因:
1.
售货机有零钱找?
2.
投入
1
元硬币
3.
投入
5
毛硬币
4.
按下橙汁按钮
5.
按下啤酒按钮
结果:
1.
售货机【零钱找完】等亮?
2.
退还
1
元硬币
3.
退还
5
毛硬币
4.
送出橙汁
5.
送出啤酒
状态图(功能图)方法
定义:
是功能图
FD
形式化地表示程序的功能说明,并机械地
声称功能图的测试用例
举例:
通过对
QQ
登录界面的分析,我们可以把功能看成
4
个
输入项:
生成状态图
决策表(判定表驱动法):