专利名称:一种过滤测试用例的方法及装置的制作方法
技术领域:
本发明涉及软件安全性测试技术领域,特别涉及一种过滤测试用例的方法及装置。
背景技术:
软件(包括应用程序、协议等)的安全性测试实际上是在软件输入空间中的一种 探测。软件的输入空间由该软件的所有可能的输入、或所有可能的输入的组合构成。穷举是 验证软件行为正确性的一种最极端的方法,然而,穷举对大部分案例来说不具备可操作性, 因为通常情况下,软件程序的输入空间非常巨大,甚至可能是无穷大。相比于穷举的方法来 说,模糊测试(Fuzz Testing)作为一种随机样本方法,是一种更具可行性的黑盒测试方法。模糊测试是一种软件测试技术,该技术构造一些随机或半随机的数据(称为 fuzz)作为被测试软件程序的输入,并观察被测试软件程序的工作状况。作为一种黑盒测试 工具,模糊测试通常用于大型软件开发项目。模糊测试被认为能够提高软件的安全性,这是 因为模糊测试总是能检测出一些测试人员未能发现的缺陷,这些缺陷往往会被软件测试 工程师所忽略。目前,最常用的模糊测试是基于字符的,基于字符的模糊测试提供随机数据流 (从文件或其它数据流中提供,例如从套接字中提供)作为被测软件程序的输入,基于字 符的模糊测试正广泛应用于协议或网络服务器的安全性测试。模糊测试的优势在于进行测试的成本相对较低、且完全可以自动实现;并且,模 糊测试经常能找出比较严重、且可被利用的缺陷(bug),这些bug可被攻击者加以利用。本质上来说,模糊测试是采用在被测软件程序的输入空间中随机分布的大量的测 试用例进行测试的。参与测试的测试用例越多,测试就越彻底。但是,采用大量测试用例对 被测软件程序进行测试将耗费较长时间;并且,由于大量相近似或等价的测试用例的存在 使得所找出的大部分安全漏洞是重复的,导致现有模糊测试比较浪费时间、且效率低下。
发明内容
有鉴于此,本发明的主要目的在于提供一种过滤测试用例的方法,以提高模糊测 试的效率。本发明的另一个目的在于提供一种过滤测试用例的装置,以提高模糊测试的效率。为达到上述目的,本发明提供了一种过滤测试用例的方法,该方法包括确定各个测试用例的安全特征;根据所述确定的各个测试用例的安全特征对测试用例进行过滤,将安全特征相同 的测试用例仅保留一个。较佳地,所述测试用例的安全特征可以采用安全特征向量表示,所述安全特征向 量可以包括长度特性分量和内容特性分量;
所述确定各个测试用例的安全特征可以包括根据各个测试用例的长度确定各个 测试用例的长度特性分量,根据各个测试用例的内容确定各个测试用例的内容特性分量。进一步地,所述安全特征向量的内容特性分量中可以包括时间特性分量和特殊 字符分量;所述根据各个测试用例的内容确定各个测试用例的内容特性分量可以包括根据 各个测试用例的内容的周期性、重复性或统计特性确定各个测试用例的时间特性分量,根 据各个测试用例的内容中所包含的特殊字符确定各个测试用例的特殊字符分量。较佳地,所述根据各个测试用例的长度确定各个测试用例的长度特性分量可以 为将测试用例的比特数或字节数确定为所述测试用例的长度特性分量的取值。较佳地,所述根据各个测试用例的内容的周期性、重复性或统计特性确定各个测 试用例的时间特性分量可以为将测试用例作为离散序列,计算所述离散序列的频率特性, 将所述频率特性确定为所述测试用例的时间特性分量的取值;或统计测试用例中特殊字符 重复出现的时间特性,将所述时间特性确定为所述测试用例的时间特性分量的取值。较佳地,所述根据各个测试用例的内容中所包含的特殊字符确定各个测试用例的 特殊字符分量可以为将测试用例中所包含的特殊字符以及对应的子串确定为所述测试用 例的特殊字符分量的取值。较佳地,判断两个测试用例的安全特征是否相同的方式可以为判断所述两个测 试用例的安全特征向量是否长度特性分量的取值相等、时间特性分量的取值相等、且特殊 字符分量的取值相等,如果是,则判定所述两个测试用例的安全特征相同。本发明还提供了一种过滤测试用例的装置,该装置包括安全特征计算模块210,用于确定各个测试用例的安全特征;过滤模块220,用于根据安全特征计算模块210所确定的各个测试用例的安全特 征对测试用例进行过滤,将安全特征相同的测试用例仅保留一个。较佳地,所述测试用例的安全特征可以采用安全特征向量表示,所述安全特征向 量可以包括长度特性分量和内容特性分量;所述安全特征计算模块210中可以进一步包括长度特性计算子模块211和内容 特性计算子模块212;所述长度特性计算子模块211,可以用于根据各个测试用例的长度确定各个测试 用例的长度特性分量;所述内容特性计算子模块212,可以用于根据各个测试用例的内容确定各个测试 用例的内容特性分量。进一步地,所述安全特征向量的内容特性分量中可以包括时间特性分量和特殊 字符分量;所述内容特性计算子模块212中可以进一步包括时间特性计算单元213和特殊 字符计算单元214;所述时间特性计算单元213,可以用于根据各个测试用例的内容的周期性、重复性 或统计特性确定各个测试用例的时间特性分量;所述特殊字符计算单元214,可以用于根据各个测试用例的内容中所包含的特殊 字符确定各个测试用例的特殊字符分量。
较佳地,所述长度特性计算子模块211,可以用于将测试用例的比特数或字节数确 定为所述测试用例的长度特性分量的取值。较佳地,所述时间特性计算单元213,可以用于将测试用例作为离散序列,计算所 述离散序列的频率特性,将所述频率特性确定为所述测试用例的时间特性分量的取值;或 用于统计测试用例中特殊字符重复出现的时间特性,将所述时间特性确定为所述测试用例 的时间特性分量的取值。较佳地,所述特殊字符计算单元214,可以用于将测试用例中所包含的特殊字符以 及对应的子串确定为所述测试用例的特殊字符分量的取值。较佳地,所述过滤模块220,可以于将测试用例两两进行比较,在两个测试用例的 安全特征向量的长度特性分量的取值、时间特性分量的取值和特殊字符分量的取值均相等 时,判定所述两个测试用例的安全特征相同。由上述技术方案可见,本发明通过计算各个测试用例的安全特征,并根据各个测 试用例的安全特征对测试用例进行过滤,将安全特征相同的测试用例仅保留一个,从而避 免了对大量相近似或等价的测试用例进行测试,节约了进行测试的时间,大大提高了模糊 测试的效率。
下面将通过参照附图详细描述本发明的示例性实施例,使本领域的普通技术人员 更清楚本发明的上述及其他特征和优点,附图中图1为本发明过滤测试用例的方法的流程示意图;图2为本发明过滤测试用例的装置的组成结构示意图。
具体实施例方式为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对 本发明进一步详细说明。参与测试的测试用例之间的差异越大,能够找出的安全漏洞越多,因此,如何评估 测试用例之间的相似度成为提高模糊测试效率的关键。本发明的主要思想是提出安全特征的概念,通过计算测试用例的安全特征,并据 此将测试用例划分成不同的安全等价类;由于属于同一安全等价类的测试用例是等价的, 因此,在进行模糊测试时从每一个安全等价类中只选择一个测试用例进行测试,从而避免 了对每一个安全等价类中的每一个测试用例进行测试,达到大大提高模糊测试效率的目 的。图1为本发明过滤测试用例的方法的流程示意图。参见图1,该方法包括步骤101 确定各个测试用例的安全特征。这里,首先需要定义测试用例的安全特征,该安全特征可用于将测试用例分成不 同的安全等价类。属于同一安全等价类的测试用例对被测目标系统进行测试,将导致相同 的结果,因此,某一测试用例是否属于某一安全等价类取决于安全特征如何定义和计算。尽管模糊测试是一种黑盒安全测试,它没有任何机会获取到被测软件程序的设计 文档或执行文件(源代码)以用于安全测试,但是,关于如何挖掘出安全漏洞的知识在决定哪些安全特征需要被纳入安全等价类的分类过程时确仍然非常有用。目前,主要有如下四类安全漏洞攻击方法,这些安全漏洞攻击可能从不同途径危 及系统的安全1、缓冲区溢出攻击这是当某个进程试图在超出定长缓存边界的区域存储数据时 发生的一种异常情况,其结果是额外的数据覆盖邻近内存区域中的数据。被覆盖的数据可 能是其它缓存中的数据、变量或程序流数据,因此,该覆盖可能引发程序行为异常、内存拒 绝访问、程序终止(崩溃)或结果错误等。尤其是如果该覆盖是由恶意用户恶意实施的,可 能破坏系统的安全性。特意设置的用于执行恶意代码的输入或令软件程序无意识地执行的 输入均可引发缓冲区溢出。因此,缓冲区溢出引发许多软件漏洞,并成为许多漏洞滥用工具 的基础。2、代码注入攻击它是对计算机bug的一种探测,这是由处理无效数据引起的。代 码注入攻击可被攻击者用以向软件程序中引入(或注入)代码,从而改变软件程序的执行 过程。代码注入攻击的结果可能非常严重,例如代码注入攻击曾被一些计算机蠕虫用于传 播病毒,SQL注入攻击是另一种声名狼藉的代码注入,其攻击目标是数据库。3、格式化字符串攻击格式化字符串攻击可导致软件程序崩溃或执行有害代码。 在执行格式化操作的某些C函数中,例如在printfO函数中,将未进行过滤的用户输入用 作格式化字符串参数可以引发格式化字符串攻击。恶意用户可能利用% 8和% 1格式化标 记,从堆栈或内存的其它位置中打印数据。恶意用户也可能采用% η格式化标记向任意的 位置写入任意的数据,这样就可以利用printfO函数或其它具备类似功能的函数将一定 数目的格式化字节写入堆栈中的某个地址。4、特权升级攻击特权升级攻击是利用软件程序中的bug或设计错误,获取对被 保护、不允许普通应用程序或用户访问的资源的访问权限。其结果是软件程序以比软件程 序开发人员或系统管理员意欲给予的更高的特权实施操作。在某些情况下,高特权软件程 序假定凡是提供给它的输入都是符合其接口标准的输入,而不对其输入进行验证。此时,攻 击者就可能探测是否存在这种缺陷,使未被授权的代码利用该软件程序的特权运行。基于对上述四种安全漏洞机制的深入分析,可将这四种类型的安全漏洞分为两 组,这两组分别与软件程序的输入的两种不同的特性相关。1)与长度相关的安全漏洞,例如缓存区溢出攻击。2)与内容相关的安全漏洞,包括代码注入攻击、格式化字符串攻击和特权升级 攻击。基于上述分类,本发明引入如⑴式所示的安全特征向量V来表示测试用例的安 全特征。该安全特征向量V用于表征和计算被测目标系统的输入数据(即测试用例)的 长度和内容特性。V = (L, C)(1)(1)式中,L表示测试用例的长度特性分量。在具体计算时,可以根据测试用例的 长度确定该长度特性分量的取值,例如将测试用例的比特数或字节数作为该测试用例的 长度特征分量的取值。C表示测试用例的内容特性分量。与长度特性分量不同的是,测试用例的内容特 性分量描述起来非常复杂。本申请的发明人通过分析与输入数据的内容特性相关的安全漏
7洞,例如代码注入攻击、格式化字符串攻击和特权升级攻击,发现这些攻击的共性是它 们都包含特殊字符(即除字母与数字之外的字符)。例如输入串“cat/etc/password” 曾在代码注入攻击中被用作输入,用以获取Unix、Linux等系统中的用户信息。这里,注入 的输入中包含特殊字符‘/’。对于其它的与内容相关的安全漏洞,用于攻击的输入数据可能 包含其它特殊字符,例如‘%’、‘\’等。原因在于几乎所有的系统均对某些特殊字符赋予 一定的语义,用以触发一些操作,因此,通过这些特殊字符注入输入更易于找出并利用目标 系统中潜在的安全漏洞。此外,采用随机的方法、基于预定义或类型的方法所产生测试用例可看作是由字 符组成的时间序列,那么,反映这些测试用例的周期性、重复性或统计特性的时间特性也可 以用于描述它的内容特性。这里,时间特性可以是频率、自相关参数等。基于上述分析,本发明将内容特性参数C表示为如(2)式所示的2元组C = (f, S)(2)(2)式中,f表示测试用例的内容的时间特性分量。它的计算方法可以是将 测试用例看作一个由字符构成的离散序列,并采用离散傅立叶变换(DFT =Discrete FourierTransform)计算其频率特性,将该频率特性作为时间特性分量的取值;或者统计 特殊字符重复出现的时间特性,例如特殊字符‘/’出现了多少次、出现了多长时间等,将 该时间特性确定为该测试用例的时间特性分量的取值。如果两个测试用例的f相等,那么, 它们的时间特性分量相同。S为特殊字符分量,用于描述测试用例中包含哪个/哪些特殊字符以及对应的子 串。如果两个测试用例的s相等(包含相同的特殊字符和/或彼此之间对应的子串相同), 那么,它们的s特性相同。步骤102 根据所确定的各个测试用例的安全特征对测试用例进行过滤,将安全 特征相同的测试用例仅保留一个。通过步骤101,各个测试用例的安全特征得以确定,如果两个测试用例的安全特征 相同,表明这两个测试用例是等价的测试用例,择一进行模糊测试即可,因此,本步骤中,将 根据各个测试用例的安全特征对测试用例进行过滤,对于安全特征相同的测试用例仅保留 一个。在具体实现时,可以按照如下步骤进行第1步设置有效测试集S,该有效测试集S用于存储所有经过处理的测试用例 (即属于不同安全等价类的测试用例),以及这些测试用例的安全特征向量,初始状态下, 有效测试集S为空。第2步对于每一个测试用例T,将该测试用例的安全特征向量V与有效测试集S 中每一个测试用例的安全特征向量V’进行比较如果存在V’ = V,即长度特性分量L的取值、时间特性分量f的取值、且特殊字 符分量s的取值均相等,那么,表示V对应的测试用例T与V’对应的测试用例T’属于相同 的安全等价类,例如它们对于探测目标系统的安全漏洞来说是等效的。由于T’已经处于 有效测试集S中,那么,T对于模糊测试来说就是冗余的,应当予以排除。如果不存在V’ =V,那么,表示测试用例T属于一个新的安全等价类,需要将该测 试用例T加入有效测试集S。执行上述操作之后完成了一个安全等价类分类处理,此时,有效测试集S中的每一个测试用例分别属于不同的安全等价类,具有相同安全特性的同一安全等价类中只选择 出一个测试用例,那些冗余或等价的测试用例被过滤掉,因此,有效测试集S可用于进行有 效的模糊测试。至此,结束本发明过滤测试用例的方法。本发明提出了一种过滤测试用例的方法,该方法通过计算测试用例的安全特征, 并据此排除冗余或等价的测试用例,从而确保了每个安全等价类中仅有一个测试用例被用 于进行模糊测试,而避免了采用相同安全等价类中的多个测试用例进行测试,从而大大提 高了模糊测试的效率。对应于上述过滤测试用例的方法,本发明还提出了一种过滤测试用例的装置,如 图2所示。图2中的过滤测试用例的装置包括安全特征计算模块210,用于确定各个测试用例的安全特征;过滤模块220,用于根据安全特征计算模块210所确定的各个测试用例的安全特 征对测试用例进行过滤,将安全特征相同的测试用例仅保留一个。较佳地,测试用例的安全特征可以采用安全特征向量表示,该安全特征向量包括 长度特性分量和内容特性分量;此时,图2所示装置中的安全特征计算模块210中进一步包 括长度特性计算子模块211和内容特性计算子模块212 ;其中长度特性计算子模块211,用于根据各个测试用例的长度确定各个测试用例的长 度特性分量;内容特性计算子模块212,用于根据各个测试用例的内容确定各个测试用例的内 容特性分量。较佳地,安全特征向量的内容特性分量中可以进一步包括时间特性分量和特殊 字符分量;此时,图2所示装置中的内容特性计算子模块212中可以进一步包括时间特性 计算单元213和特殊字符计算单元214 ;其中时间特性计算单元213,用于根据各个测试用例的内容的周期性、重复性或统计特 性确定各个测试用例的时间特性分量;特殊字符计算单元214,用于根据各个测试用例的内容中所包含的特殊字符确定 各个测试用例的特殊字符分量。较佳地,图2所示装置中的长度特性计算子模块211,用于将测试用例的比特数或 字节数确定为该测试用例的长度特性分量的取值。较佳地,图2所示装置中的时间特性计算单元213,用于将测试用例作为离散序 列,计算该离散序列的频率特性,将该频率特性确定为该测试用例的时间特性分量的取值; 或用于统计测试用例中特殊字符重复出现的时间特性,将该时间特性确定为该测试用例的 时间特性分量的取值。较佳地,图2所示装置中的特殊字符计算单元214,用于将测试用例中所包含的特 殊字符以及对应的子串确定为该测试用例的特殊字符分量的取值。较佳地,图2所示装置中的过滤模块220,用于将测试用例两两进行比较,在两个 测试用例的安全特征向量的长度特性分量的取值、时间特性分量的取值和特殊字符分量的 取值均相等时,判定这两个测试用例的安全特征相同。以下通过一个具体实施例对本发明进行详细说明
本实施例中以字符串型的测试用例为例,详细介绍本发明过滤测试用例的方法。 频率被当作测试用例的时间特性分量。本实施例中过滤测试用例的方法按照如下步骤进 行第1步使用一个列表存储有效测试集S,该列表中包含属于不同安全等价类的 测试用例、以及这些测试用例的安全特征向量。初始状态下,有效测试集S为空。第2步在模糊测试中,将采用随机的方法、基于预定义的方法、或基于类型的方 法产生大量测试用例。对于每一个测试用例T,本实施例将按照如下(a) (d)计算其安全 特征向量V:(a)根据测试用例中包含的字符数确定测试用例T的长度,将该长度作为该测试 用例的安全特征向量V中的长度特性分量L。(b)在频域计算测试用例的时间特性。本实施例以频域为例,在实际应用中,也可 以采用其它时间特性,或者特殊字符的时域特性。将T表示为T = T
T[1]...T[1]...T[L-1]其中T[1]表示测试用例T中的第1个字符,0 ^ 1 ^ L-I0然后利用离散傅立叶变换计算字符序列T的频域特性,如(3)式所示
L-\ Jkf{k] = DFT[T[l]\ = Σ T[1]Wl,0 彡 k 彡 L-I(3)
1=0(3)式中,『f = ~jkl~I。采用快速傅立叶变换可以加速上述计算的实施。在进行频域变换计算之后,包含测试用例T的频域特性的f[k]就是测试用例T的 内容特性分量C的时间特性分量f。由于f与T的长度相等,可能需要大量存储空间来存储有效测试集S中所有测试 用例的f。为了节省存储空间,可以采用压缩或采样的方法进行处理。以下举两个例子进行 说明第一个例子首先将每m个f[k]进行累加,如(4)式所示
m /’[y] = Σ/L/ X W + /], 0 彡 j 彡 n-l(4)
/=1(4)式中…=「丄/ ^,1"为根据实际应用的需要由用户设置的值。令f,=f,[j](5)将f ’作为测试用例T的时间参数f进行保存。第二个例子仅采用f的高频部分作为样本,如(6)式所示ι' = f[m], f[m+l],…,f[L_l](6)同样地,(6)式中的m也是根据实际应用的需要由用户进行设置。(c)计算与特殊字符相关的内容特性分量S。根据频率特性f,可以获取在T中重 复出现的子串,将特殊字符在该子串中的位置记录为S。另一种方法是直接使用测试用例T 中存在的特殊字符,以及它出现的位置作为S。
(d)通过计算L、f、s,确定当前测试用例T的安全特征向量V = (L,C)以及C = (f,s)。然后将V与有效测试集S中的每一个测试用例对应的特征向量V’进行比较。如果 存在一个V’ = V,那么,T对于模糊测试来说就是冗余的,应当予以排除。如果不存在V’ = V,那么,表示测试用例T属于一个新的安全等价类,需要将该测试用例T加入有效测试集S。重复上述第2步中的操作直至过滤完所有测试用例。由上述实施例可见,本发明通过计算各个测试用例的安全特征,并根据各个测试 用例的安全特征对测试用例进行过滤,将安全特征相同的测试用例仅保留一个,从而避免 了对大量相近似或等价的测试用例进行测试,节约了进行测试的时间,大大提高了模糊测 试的效率。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在 本发明的精神和原则之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范 围之内。
权利要求
一种过滤测试用例的方法,其特征在于,包括确定各个测试用例的安全特征;根据所述确定的各个测试用例的安全特征对测试用例进行过滤,将安全特征相同的测试用例仅保留一个。
2.根据权利要求1所述的方法,其特征在于所述测试用例的安全特征采用安全特征向量表示,所述安全特征向量包括长度特性 分量和内容特性分量;所述确定各个测试用例的安全特征包括根据各个测试用例的长度确定各个测试用例 的长度特性分量,根据各个测试用例的内容确定各个测试用例的内容特性分量。
3.根据权利要求2所述的方法,其特征在于所述安全特征向量的内容特性分量中进一步包括时间特性分量和特殊字符分量;所述根据各个测试用例的内容确定各个测试用例的内容特性分量包括根据各个测试 用例的内容的周期性、重复性或统计特性确定各个测试用例的时间特性分量,根据各个测 试用例的内容中所包含的特殊字符确定各个测试用例的特殊字符分量。
4.根据权利要求3所述的方法,其特征在于所述根据各个测试用例的长度确定各个测试用例的长度特性分量为将测试用例的比 特数或字节数确定为所述测试用例的长度特性分量的取值。
5.根据权利要求3所述的方法,其特征在于所述根据各个测试用例的内容的周期性、重复性或统计特性确定各个测试用例的时间 特性分量为将测试用例作为离散序列,计算所述离散序列的频率特性,将所述频率特性确 定为所述测试用例的时间特性分量的取值;或统计测试用例中特殊字符重复出现的时间特 性,将所述时间特性确定为所述测试用例的时间特性分量的取值。
6.根据权利要求3所述的方法,其特征在于所述根据各个测试用例的内容中所包含的特殊字符确定各个测试用例的特殊字符分 量为将测试用例中所包含的特殊字符以及对应的子串确定为所述测试用例的特殊字符分 量的取值。
7.根据权利要求3至6任一项所述的方法,其特征在于,判断两个测试用例的安全特征 是否相同的方式为判断所述两个测试用例的安全特征向量是否长度特性分量的取值相等、时间特性分量 的取值相等、且特殊字符分量的取值相等,如果是,则判定所述两个测试用例的安全特征相 同。
8.—种过滤测试用例的装置,其特征在于,包括安全特征计算模块(210),用于确定各个测试用例的安全特征;过滤模块(220),用于根据安全特征计算模块(210)所确定的各个测试用例的安全特 征对测试用例进行过滤,将安全特征相同的测试用例仅保留一个。
9.根据权利要求8所述的装置,其特征在于所述测试用例的安全特征采用安全特征向量表示,所述安全特征向量包括长度特性 分量和内容特性分量;所述安全特征计算模块(210)中进一步包括长度特性计算子模块(211)和内容特性计算子模块(212);所述长度特性计算子模块(211),用于根据各个测试用例的长度确定各个测试用例的 长度特性分量;所述内容特性计算子模块(212),用于根据各个测试用例的内容确定各个测试用例的 内容特性分量。
10.根据权利要求9所述的装置,其特征在于所述安全特征向量的内容特性分量中进一步包括时间特性分量和特殊字符分量;所述内容特性计算子模块(212)中进一步包括时间特性计算单元(213)和特殊字符 计算单元(214);所述时间特性计算单元(213),用于根据各个测试用例的内容的周期性、重复性或统计 特性确定各个测试用例的时间特性分量;所述特殊字符计算单元(214),用于根据各个测试用例的内容中所包含的特殊字符确 定各个测试用例的特殊字符分量。
11.根据权利要求10所述的装置,其特征在于所述长度特性计算子模块(211),用于将测试用例的比特数或字节数确定为所述测试 用例的长度特性分量的取值。
12.根据权利要求10所述的装置,其特征在于所述时间特性计算单元(213),用于将测试用例作为离散序列,计算所述离散序列的频 率特性,将所述频率特性确定为所述测试用例的时间特性分量的取值;或用于统计测试用 例中特殊字符重复出现的时间特性,将所述时间特性确定为所述测试用例的时间特性分量 的取值。
13.根据权利要求10所述的装置,其特征在于所述特殊字符计算单元(214),用于将测试用例中所包含的特殊字符以及对应的子串 确定为所述测试用例的特殊字符分量的取值。
14.根据权利要求10至13任一项所述的装置,其特征在于所述过滤模块(220),用于将测试用例两两进行比较,在两个测试用例的安全特征向量 的长度特性分量的取值、时间特性分量的取值和特殊字符分量的取值均相等时,判定所述 两个测试用例的安全特征相同。
全文摘要
本发明公开了一种过滤测试用例的方法,该方法首先确定各个测试用例的安全特征;然后根据所述确定的各个测试用例的安全特征对测试用例进行过滤,将安全特征相同的测试用例仅保留一个。本发明还公开了一种过滤测试用例的装置。应用本发明能够大大提高模糊测试的效率。
文档编号G06F11/36GK101901183SQ20091014382
公开日2010年12月1日 申请日期2009年5月31日 优先权日2009年5月31日
发明者唐文 申请人:西门子(中国)有限公司