a测试用例的自动生成.pptx

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
会计学;随机测试数据生成方法; 自适应随机生成方法 统计测试 约束求解方法; 符号执行技术; 基于有哪些信誉好的足球投注网站的测试数据生成方法。;随机测试是通过在输入域中通过随机选择的方式来产生测试数据。测试人员按自己的想法随手产生的测试用例也可以认为是随机测试。 随机测试无处不在:几乎所有的测试数据生成方法最终都需要结合随机测试方法,以产生较好的测试数据分布。 优点: 1)简单:不需要过多的信息;不需要开发复杂的程序;一般而言,算法复杂度为o(n)。 2)适应性广,几乎可以用于???有的测试方案中。(因为不需要过多的信息)。 3)开销低,可以作为其他测试方法的补充。(算法复杂度已经到了最低的极限)。;缺点: 1)测试数据发现程序失效的效率较低; 2)难以确定测试的效果和停止测试的时机; 3)需要大量开销来计算所产生大量的测试数据的预期输出。(Oracle问题) 随机测试的用途 1)在没有足够的信息支持其他测试方法时; 2)如果能够有办法不使用预期结果进行测试的验证,如:冒烟测试、参考测试、蜕化测试等; 3)作为其他测试方法的支持; 4)在刚开始进行测试时,初步发现错误。;随机测试的实现:对于简单的程序输入,如整数、实数等,可以直接产生随机数据。其他数据类型,需要进行数据的映射和转换。 复杂数据类型的随机数据生成 1)对被测软件的输入空间进行建模,为测试数据的随机生成创造条件。 2)产生随机数,映射到输入空间的某个点,将该点转换为一个测试数据。;输入空间建模问题: 1)每一个可能的输入在空间中都有一个对应的点;空间中每一个点都对应一个输入。 2)注意各种类型的数据在空间中分布的情况。例如,避免过多地生成失效数据。 3)注意计算机产生的随机数是实数,需要建立一种简单、方便的映射算法,把随机生成的数据(可能是多个数据)映射为输入数据。 4)所建立的空间模型,和程序需要的数据可能有差异,如忽略了某些重要的约束条件,需要对生成的测试数据进行再加工。 ;例:为某个输入为二叉树的程序构造测试用例 1)二叉树的先根序列和中根序列将唯一确定一棵二叉树;因此可以将二叉树的空间结构映射为一个1,...,n的随机序列。这个随机序列对应一棵二叉树的中根序列,而这棵二叉树的先根序列是1,...,n。 2)生成过程分为三个步骤,首先随机生成一个整数n,代表树的结点数目;生成长度为n的随机序列;根据随机序列构造一个二叉树。;在很久以前,有人(Mayers)认为随机测试是效率最低的方法,因为它没有使用任何信息。 由于随机测试的简单特性,依然在各种测试中广泛应用。 后来有人比较分割测试(Partition testing)和随机测试的效率,发现不恰当的分割测试比随机测试的效果还差。 分割测试和随机测试比较的简单介绍。;随机测试所生成的测试数据在发现错误方面是低效率的。为此,有各种改进的方法。主要的思想是:根据某些信息,为随机测试提供生成的指导。 自适应随机测试(Adaptive Random Testing):根据失效输入一般会集中出现在输入空间的某个局部区域的特征,提出将测试用例尽量均匀地分布在整个输入空间,从而提高测试用例发现错误的效率。 概率测试:根据用户的需求,为对输入空间进行划分,不同部分用不同的概率产生测试用例。 统计测试:先使用随机测试,当进行到一定程度时停止,再使用其他测试方法产生测试用例。;在被测程序中,失效输入通常会集中在输入空间的某几个地方,被称为失效区域。失效区域形状被归类为3种。;自适应随机测试的基本思想:每当生成一个新的测试用例的时候,尽量远离原有的测试用例。 一些具体办法: 1)基于距离的,FSCS(Fixed size of candidate set),先随机生成几个测试用例(候选集),计算这些测试用例和已经生成的测试用例的距离,选择距离最大的那个作为新的测试用例。 2)基于排除域的,RRT(Rejected Region testing),在每一个已生成的测试用例的附近指定一块排除域,随机产生一个测试用例,如果这个测试用例不在任何一个排除域中,那么它就成为新的测试用例。;一些具体的方法 3)基于分割的,利用已生成的测试用例把整个输入空间分割成若干个部分,从最大的那个部分中选择测试用例。 4)基于概率函数的,通过设定概率函数,将距离现有的测试用例较远的输入空间的点的概率设大,越近的越小。;自适应随机测试的优点 与随机测试相比,能够大幅度提高所生成测试用例的效率; 不需要额外增加信息。因为自适应随机测试运用的是测试中的一般规律。 自适应随机测试的缺点 计算复杂度大幅度提高:通常达到O(n2)甚至更高。 在实践应用中效果不好。;在自适应随机测试研究中得到的一个重要结论:即使我们知道失效区域的形状、大小、方向等信息,但我们不知道失效区域的位置。那么我们无

文档评论(0)

kuailelaifenxian + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体太仓市沙溪镇牛文库商务信息咨询服务部
IP属地上海
统一社会信用代码/组织机构代码
92320585MA1WRHUU8N

1亿VIP精品文档

相关文档