软件测试方法和技术

1.1 什么是软件测试

定义:是由“验证(Verification)”和“确认(Validation)”活动构成的整体:

  •  “验证”:检验软件是否已正确的实现了产品规格书所定义的系统功能和特性。
  •  “有效性确认”:确认软件是否满足用户真正的活动需求。

功能和特性的区别(the difference between functionality and features):

Functionality refers to how well something works. Features refer to what something can do. A Feature is a sub-system or facility that in included within a larger system. A Function is the action that can be performed within the system. Much Functionality is enabled through a Feature.

For instance, User Administration is a feature offered in Windows. Add User, Grant Privilege to User, Delete User, List Users, etc. are Functions enabled by the User Administration feature.

1.2 软件测试与软件开发的关系

软件测试方法和技术                       

图1 V模型呈现测试和开发

第二章 软件测试基本概念


 

2.1 软件缺陷

1.缺陷(bug):所谓软件缺陷,即为计算机或 程序中存在的某种破坏正常运行能力问题、错误所谓软件缺陷,其结果会导致软件产品在某种程度上不满足用户需要。

2.软件缺陷是如何产生的?

  •  技术问题:如算法错误、语法错误、计算和精读错误、接口参数传递不匹配。
  •  软件本身:如开发标准或流程不完善、文档错误
  •  团队工作:误解,沟通不充分。

3.软件缺陷的构成

 软件测试方法和技术

图2 软件缺陷构成示意图

2.3 软件测试的分类

 软件测试方法和技术

图3 软件测试三维空间

补充,按测试过程中软件是否被执行:分为静态测试、动态测试

表1 软件测试技术分类表

 软件测试方法和技术

常见测试

 软件测试方法和技术

2.4 测试阶段

 软件测试方法和技术

图4 测试阶段示意图

 

2.5 软件测试的工作范畴

 软件测试方法和技术

图5 测试工作流程图

第三章 软件测试方法


 返回

黑盒测试

边界值测试

大量测试实践表明,许多故障往往发生在输入定义域或者输出值域的边界上,而不是在其内部。

边界值分析法基本思想:选取正好等于、刚刚大于和刚刚小于边界值的数据最为测试数据

例子:假设有两个变量x1和x2的函数F,a<=x1<=b, c<=x2<=d.

软件测试方法和技术

软件测试方法和技术

 

边界值分析法局限性:变量独立且为物理量。

等价测试

等价类测试动机:希望进行完备的测试,又避免冗余。

 软件测试方法和技术

报表日期 

 软件测试方法和技术

三角形

软件测试方法和技术

 软件测试方法和技术

软件测试方法和技术 

基于决策表的测试

 软件测试方法和技术

软件测试方法和技术

 软件测试方法和技术 

 软件测试方法和技术

软件测试方法和技术

 软件测试方法和技术

NextDate函数

 软件测试方法和技术

软件测试方法和技术

 软件测试方法和技术

 软件测试方法和技术

 软件测试方法和技术

软件测试方法和技术

 软件测试方法和技术

 

白盒测试

语句覆盖

 软件测试方法和技术

 软件测试方法和技术

判定覆盖

 软件测试方法和技术

条件覆盖

 软件测试方法和技术

判定条件覆盖

 软件测试方法和技术

条件组合覆盖

 软件测试方法和技术

路径覆盖

 软件测试方法和技术

 软件测试方法和技术

 

 软件测试方法和技术

基本路径测试

 软件测试方法和技术

 软件测试方法和技术

 软件测试方法和技术

 软件测试方法和技术

 软件测试方法和技术

 软件测试方法和技术

关于循环的基本路径测试 

软件测试方法和技术

 软件测试方法和技术

  

参考

http://www.docin.com/p-234892805.html

http://www.docin.com/p-201537948.html



上一篇:Google地图(Map)API在J2ME中使用方法


下一篇:彻底搞懂动态代理(上)