面向程序段的测试数据生成与优化调度工具的设计与实现

来源 :北京大学 | 被引量 : 0次 | 上传用户:ylws09
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件测试是保证软件质量和可靠性的一种重要技术。软件测试的开销在整个软件开发成本中占有重大比例,提高软件测试的效率对于降低软件成本具有重要的作用。在软件测试的过程中,测试数据的生成是比较困难并且代价较高的技术难题之一,这一过程传统上要通过手工完成,需要耗费大量的人力物力资源。如何有效地生成测试数据,以减轻测试人员的繁琐劳动,已经成为软件测试领域面临的一个重要问题。 在软件开发阶段,程序员往往面临对大量可疑代码段进行测试的工作。这些可疑代码既包括程序员主观上的判断,也包括借助一些辅助工具发现的结果。如何有效地生成测试数据来覆盖这些可疑代码,揭示其潜在的错误,对于提高程序员的开发效率、保证软件质量将起到至关重要的作用。 本文针对程序员开发阶段的特点,提出了一种面向程序段的测试数据自动生成方法。通过对输入程序进行语法分析,提取程序中所有分支条件信息;然后结合可疑代码段信息,从中抽取与其相关的条件信息;进而通过对程序进行静态分析,建立一系列相关的约束系统;最后求解各个约束系统,得到一组相应的测试数据集。 本文中同时给出了一种对测试数据进行优化调度的方法。对于生成的测试数据集,工具将根据一定的准则对其进行筛选,去除冗余,同时确定其执行的优先级顺序,以便更快地揭示代码中潜在的错误。工具将自动地完成测试执行,分析测试结果,生成测试报告,同时存储测试相关信息,以便用于回归测试。
其他文献
如今,软件在人们的社会生活中占据越来越重要的地位,软件的正确性也受到人们越来越多的重视。特别是随着敏捷开发、开源软件等快速迭代开发模式的出现,人们对软件的安全可信提出
随着现代软件工程和开发技术的发展,SOA技术以其灵活高效的优势赢得了普遍的支持,并已经在分布式计算方面形成了一场革命。而另一方面人们逐渐进入了Web2.0时代,AJAX技术成为Web
为了实现磁共振快速成像,一种可行的方法是减少K空间数据的采集量。然而,基于欠采样K空间数据进行磁共振图像重建的问题是一个病态的反问题。由于压缩感知理论的出现,基于稀疏性
在本体构建和应用过程中,知识表示的正确性、表达性,以及是否可被共享和复用,将直接影响到对本体的正确应用。本体评价作为把握上述问题的必要手段之一,目前已经得到越来越多的研
随着数据挖掘技术的日益发展,数据隐私和信息安全逐渐引起人们的关注。如何保护私有信息或敏感信息在挖掘过程中不被泄露,已经成为数据挖掘研究中的一个很有意义的研究课题。
大数据时代,分布式文件系统存储服务面临巨大的压力与挑战,元数据管理技术是新型分布式文件系统实现可扩展性的关键因素,近年来受到了工业界和学术界的普遍关注。相比于数据,元数
近年来,计算机软件规模迅速扩张,软件功能日渐复杂,给开发健壮的软件系统带来困难。尤其在大型软件开发中,容易引入程序缺陷与错误。自动或半自动的程序缺陷探查工具,为开发者提供
随着互联网技术的普及和发展,人们的工作与生活越来越依赖于安全可靠的网络环境,为了能够实时掌握网络动态、保证网络正常高速的运转,网络管理员进行网络监测就非常必要。然而网
目前的很多搜索需求已经从通用搜索转向关注于主题的搜索,但互联网主题信息所占比例小、分散度高,传统的搜索策略由于缺乏有效的内容预分析和过滤,爬取的无关主题网页过多,成为限
为铁路旅客提供准确、便捷、丰富、及时的服务信息是树立铁路以人为本服务理念的具体表现,也是铁路信息化建设要实现的目标之一。通过在火车站的考察发现触摸查询技术的应用不