测试任务的并行化研究

来源 :长春工业大学 | 被引量 : 0次 | 上传用户:yjxff520
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在保证软件产品质量方面,软件测试是一种非常重要的手段,其可以增强软件产品的可靠性,但同时它也非常耗费人力和时间。类簇级测试又称集成测试,它是面向对象软件测试中不可或缺的部分,因为类簇中各类之间关系的正确实现是靠它来进行检查的。类簇测试需要对大量的类及类间交互做测试,使用传统的顺序测试方式,次只能测试一个待测对象,需要花费大量的时间。在类簇级测试中应用多线程技术,可以在多核系统中创建多个执行线程,以并行的方式执行集成测试用例。多线程技术可以使处理器资源得到充分的利用,从而会有效缩短软件测试所需的时间。传统的并行化集成测试策略是基于程序功能分解的方法,将较大的程序分解成多个相互独立的子任务,然后对子任务进行并行化处理。而面向对象程序的组成单位是类,类具有继承、封装和多态等特性,面向对象程序不再具有层次结构,各类之间的静态调用关系形成错综复杂的网。这使得传统的基于程序分解的并行化测试任务方法不再适用于类簇级测试。对类集成测试任务并行化就是让彼此间没有联系的类可以在多线程控制下同时进行测试,类簇测试顺序是研究中的重要的问题之一。采用适当的类簇测试顺序进行测试,可以有效降低构造测试桩花费的代价。类之间具有继承、聚集和关联等关系,复杂的类簇关系往往会形成有向的环路。为了确定测试的起始位置需要先将环路打破,关联关系是所有关系中耦合程度最弱的,因此,本文采取打破关联关系的边。为了计算打破的关联关系边的关联程度,使用类间耦合度量的方式计算构造的测试桩复杂度,并提出一种综合考虑节点度数、环路数和测试桩复杂度的破环方法。再对消除环路的对象关系图进行并行性分析,同时设计了两种并行算法,一种是分层并行算法,一种是扩展分层并行算法。前者在同一层中类节点测试任务执行时间相近的情况下效率最高,后者避免了分层算法中同一层节点相互等待而浪费时间,又考虑了线程数目对测试时间的影响。
其他文献
近年来核心网带宽迅速增长,接入网的发展却很慢,“最后一公里”仍然是高速局域网和核心网之间的瓶颈。由于成本低廉、接入范围广、支持多种业务接入等优势,以太网无源光网络
报表作为一种信息组织和分析的手段,在企业级的信息管理过程中起着不可或缺的作用,内容和形式也呈现多样性。任何企业都需要制作一定数量和格式的报表。在当前的网络已经成为
企业信息化的投资已经成为当今企业管理的一个严峻问题。一方面,企业信息化规模的增大促使其逐渐成为提高企业价值和发展潜力、提高企业核心竞争能力的有效手段和途径。另一方
广域网下充斥着大量复杂的数据和大量复杂的用户访问行为。传统的网络文件系统一般采用中心化的文件系统服务器,可扩展性差,导致局部出现性能瓶颈。另一方面,广域网中存在大
在多媒体信息量飞速增长的今天,从包含有汉字信息的图片、视频等媒介中,进行汉字笔迹的自动识别,成为目前研究的热点。笔划提取是汉字笔迹识别的一个重要步骤。由于手写汉字
随着(电子商务)办公自动化系统在各大企事业单位的普及应用和发展,企业处理业务的传统模式正面临着极大的挑战。标准业务系统正是在这种情况下,根据质监局标准化的业务需求所
随着搜索引擎用户量大规模的增长,对于搜索引擎服务质量和性能提出了挑战。基于用户搜索行为过程中产生的大量搜索日志,相继展开了优化搜索引擎的多方向研究。其中,查询推荐是其
随着软件系统的不断发展演化,其规模和复杂性逐渐增长,同时软件质量持续降低,开发和维护成本日益加大,长期以来便形成了支撑企业核心业务的遗产系统,针对这种情况便有人提出了代码
频繁项集的挖掘技术在如今的数据“爆炸”时代,有着越来越重要的地位,它是解决实际问题的一种非常重要的手段。很多学者在最近20年中提出了许多有关挖掘频繁项集的相关算法以
随着海量的、面向广域网的存储系统的出现,其内部存储资源的复杂性远远超过传统的存储系统。它拥有更多的存储资源、资源异构性突出,并且资源分布更广泛。因此构建面向广域网