发布新日志

  • 学习笔记(13)——测试覆盖指标

    2007-05-28 20:14:02

    DD-路径测试被业界广泛接受,要求每个DD-路径都被遍历。

    DD-路径的依赖对偶,最常见的依赖关系是定义/引用关系,其中变量在一个DD-路径中定义,在另一个DD-路径中引用。

  • 路径测试(12)——DD路径

    2007-05-28 20:14:02

    接着介绍概念:

        链:是一条起始和终止节点不同的路径,并且每个节点都满足内度=1、外度=1。链的长度即边的数量。

    定义:

        DD-路径是程序图中的一条链,使得:

            情况1:由一个节点组成,内度=0。

            情况2:由一个节点组成,外度=0。

            情况3:由一个节点组成,内度>=2或外度>=2。

            情况4:由一个节点组成,内度=1或外度=1。

            情况5:长度>=1的最大链。

    DD-路径图: 给定采用命令式语言的一段程序,其DD-路径图是有向图。其中,节点表示程序图的DD-路径,边表示连续DD-路径之间的控制流。

     

  • 决策表技术的应用(11)——指导方针

    2007-05-28 20:14:02

    1.决策表技术适用于具有以下特征的应用程序

        if-then-else逻辑很突出

        输入变量之间存在逻辑关系

        涉及输入变量子集的计算

        输入与输出之间存在因果关系

        很高的圈复杂度

    2.决策表不能很好的伸缩。有多种解决方法——使用扩展条目决策表、代数简化表等。

    3.很好的使用迭代技术会达到事半功倍的效果

  • 学习笔记 (10)—— 基于决策表的测试

    2007-05-28 20:14:02

        首先介绍一下决策表的解构。

        决策表有四个部分

                       桩部分     |      条目部分


                      条件部分    |


                      行动部分    |

        以上是简图。我们可以引用条件桩、条件条目、行动桩、行动条目。条目部分中的一列是一条规则。规则指示在规则的条件部分中指示的条件环境下要采取什么行动。

        所有条件都是二叉条件的决策表叫做有限条目决策表。如果条件可以有多个值,则对应的决策表叫做扩展条目决策表。

     

  • 学习笔记 (9)

    2007-05-28 20:14:02

    等价类测试

    1.         弱一般等价类测试

    2.         强一般等价类测试

    3.         弱健壮等价类测试

    4.         强健壮等价类测试

    所谓弱、强是指是否以单、多缺陷为假设,一般、健壮是指是否检测无效值。

    基于决策表的测试

    所有条件都是二叉条件的决策表叫做有限条目决策表。如果条件可以有多个值,则对应的决策表叫做扩展条目决策表。

  • 学习笔记 (8)

    2007-05-28 20:14:02

    边界值分析:

           基本边界值分析可以用两种方式归纳:通过变量数量和通过值域的种类。

    边界值分析的关键基于一种假设,这种假设是说,失效极少是由两个(或多个)缺陷的同时发生引起的。

    边界值分析的局限性:没有考虑函数的性质和变量的语义含义。

    健壮性测试:在边界值测试的基础上又增加了两个测试值,一个是略超过最大值的取值,以及一个略小于最小值的取值。看看超过极值时系统会有什么表现。

    最坏情况测试:

           不是以单缺陷为基础,强调基于多个变量可能同时引发失效,因此含有n变量函数的最坏情况测试会产生5n次方个测试用例。

    健壮最坏情况测试包含了更多的测试用例。

    特殊值测试。

  • 学习笔记 (7)

    2007-05-28 20:14:02

    用于测试的图

    1.         程序图

    2.         有限状态机

    状态是节点,转移是边

    3.         状态图:是维恩图与有向图的结合。

  • 学习笔记 (6)

    2007-05-28 20:14:02

           有向图的路径与半路径

           路径:是一系列的边,使得对于该序列中的所有相邻边对偶来说,第一条边的终止节点是第二条边的初始节点。

           环路是一个在同一个节点上开始和结束的有向路径。

           半路径是一系列的边,使得对于该序列中至少有一个相邻边对偶来说第一条边的初始节点是第二条边的初始节点,或第一条边的终止节点是第二条边的终止节点。

           有向路径有时又叫做链。

           有向图的连结性:

    0-      连接,当且仅当ninj之间没有路径。

    1-      连接,当且仅当ninj之间有一条半路径,但是没有路径。

    2-      连接,当且仅但ninj之间有一条路径。

    3-      连接,当且仅当从ninj有一条路径,并且从njni有一条路径。

    有向图的强组件是3-连接节点的最大集合。

  • 学习笔记 (5)

    2007-05-28 20:14:02

           又要介绍概念了,其实连我自己都没有理解这些定义,居然还写出来实在是误人子弟了,所以大家如果看到不对的地方大可不必大惊小怪。去Google上搜一下保证有更好的解释。开始。

           图中节点的是以该节点最为端点的边的条数。

           图论与关联矩阵之间的关系:拥有m个节点和n条边的图G=(V,E)的关联矩阵是一种m*n的矩阵,其中第i行第j列的元素是1,当且仅当节点i是边j的一个端点,否则该元素是0。通过研究可以发现任何列的表项和为2,这是因为每条边恰好有两个端点;另外,行的和是节点的度。如果节点的度是0,则说这个节点是孤立的。

           相邻矩阵:拥有m个节点和n条边的图G=(V,E)的相邻矩阵是一种m*m矩阵,其中第i行第j列的元素是1,当且仅当节点i和节点j之间存在一条边,否则该元素是0。行的和是节点的度。

           图中的路径:是一系列的边,对于序列中的任何相邻边对ei,ej,边都拥有相同的(节点)端点。

        另一个概念,组件:图的组件是相连节点的最大集合。

        图的另一个性质,圈数:图G的圈数由V(G)=e-n+p给出,其中:eG的边数nG中的节点数pG中的组件数。

        下面介绍有向图,

        有向图中节点的内度,是将该节点作为终止节点的不同边的条数。有向图中节点的外度,是将该节点作为开始节点的不同边的条数。(呵呵,真是来而不往非礼也)。由此可见,一般图和有向图对于度的概念之间的联系是:deg(n)=indeg(n)+outdeg(n)

        节点的类型:内度为0的节点是源节点,外度为0的节点是吸收节点。内度不为0,并且外度不为0的节点是传递节点。既是源节点又是汇节点(吸收节点)的节点是孤立节点

  • 学习笔记 (4)

    2007-05-28 20:14:02

    缺陷的分类可以根据异常出现的频率来划分,下面是一个简单的例子:

    1.         轻微        词语拼写错误

    2.         中等        误导或重复信息

    3.         使人不悦    被截断的名称

    4.         影响使用    有些交易没有处理

    5.         严重        丢失交易

    6.         非常严重    不正确的交易处理

    7.         极为严重    经常出现“非常严重的”错误

    8.         无法忍受    数据库破坏

    9.         灾难性      系统停机

    10.     容易传染    扩展到其他系统的系统停机

  • 学习笔记 (3)

    2007-05-28 20:14:02

        如果特定的描述行为没有被编程实现就会出现漏洞缺陷,如果特定的程序行为没有被描述则会出现过错缺陷。

    所谓的特定的描述可以理解为项目计划书或软件的规格说明。

        有两种测试方法可以标示测试用例,即功能性测试和结构性测试。这两种方法都有一些不同的测试用例标示方法,常常叫做测试方法。

        功能性测试的两大优点:1.与软件如何实现无关,所以如果实现发生变化测试用例仍然可用, 2.测试用例可以与实现并行进行。缺点:测试用例之间可能存在严重的冗余,此外可能还会有未测试的软件漏洞。

        功能性测试的主流方法:边界值分析、健壮性分析、最坏情况分析、特殊值测试、输入(定义域)等价类、输出(值域)等价类和基于决策树的测试。

        结构性测试也就是我们通常所说的白盒测试,功能性测试通常称为黑盒测试。

       

  • 学习笔记 (2)

    2007-05-28 20:14:02

        软件测试最关心的两个方面应该是:输入和输出。

        输入实际上有两种类型:前提(在测试用例执行之前已经存在的环境)和由某种测试方法所标识的实际输入。

        输出也有两类:后果和实际输出。

        典型的测试用例信息:

    1. 测试用例的ID
    2. 目的
    3. 前提
    4. 输入
    5. 预期输出
    6. 后果
    7. 执行历史(日期、结果、版本、执行人)    
  • 笔记一 开始

    2007-05-28 20:14:02

        概念是武器,但是对于我这样一个彻底的世界和平维护者,要想拿起这样一个武器是经历了痛苦而漫长的一段的时间的,而且是相当长的一段时间。为了绝大多数人不在经历我这样一个过程,我决心开始记录拿起武器以及运用它的过程,下面我们就开始吧。

        缺陷——缺陷是错误的结果,也可以说是错误的表现,而表现时表示的模式。缺陷可以分为过错缺陷和遗漏缺陷。遗漏缺陷更难检测和解决。事实上有效的评审可以找出遗漏缺陷。

        失效——当缺陷执行时可以发生失效。

        测试——测试显然要处理错误、缺陷、失效和事故。测试有两个显著目标:找出失效,或演示正确的执行。

        一个测试的生命周期:

        需求规格说明->设计->编码-> 测试 -> 缺陷分类->缺陷隔离->缺陷解决

        前3个阶段是“引入程序错误”, 测试阶段是“找出程序错误”,后三个阶段是“清除程序错误”。其中测试过程还可以细分为独立的步骤:测试计划、测试用例开发、运行测试用例以及评估测试结果。

     

        好了,基本概念今天就介绍到这里,如果不懂也没关系。毕竟真知来源于实践,大家还是先做起来吧。哈哈。

数据统计

  • 访问量: 12491
  • 日志数: 13
  • 建立时间: 2006-12-26
  • 更新时间: 2007-02-05

RSS订阅

Open Toolbar