基于云平台的测试任务调度策略的研究

来源 :长春工业大学 | 被引量 : 0次 | 上传用户:darkak
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着软件行业的快速发展,软件的开发周期和开发成本越来越被重视,软件测试作为软件开发过程中的一个重要环节,不仅仅为软件产品提供质量把关,而且还能降低人力重复投入的风险,从而缩短开发周期、减少开发成本。云计算的出现与发展,为软件测试技术提供了新的方向,将测试任务迁移到云平台,在云环境下执行测试任务,不仅可以节省配置环境的成本,而且还极大的加快了测试任务的执行速度,减少测试时间的同时还减少了测试人员的冗余工作。在云平台上执行测试任务,高效的任务调度算法是必不可少的。优秀的调度算法可以提高整个系统的资源利用率,缩短任务的执行时间。目前云环境中的调度算法一般都存在着一些局限性,不能完全适应测试任务,因为测试任务不同于一般的任务,测试任务不仅本身带有不同的优先级别,而且测试任务之间还存在着依赖关系。尤其是在执行回归测试任务时,调度算法变得更为重要。因此本文针对云平台下的回归测试任务调度问题,对测试任务的调度策略进行了深入的研究。针对优先级不同的特性,提出了一种基于权重的调度算法Weight Scheduler,算法不仅考虑了测试任务的初始优先级,还可以根据集群的具体资源使用情况,调度测试任务;为了避免出现饥饿现象,对于等待时间较长的测试任务给予适当增长权重,使调度尽可能公平。对比的实验结果表明,Weight Scheduler调度算法比Hadoop自带调度算法Capacity Scheduler效率更高。针对任务间依赖关系,策略中首先对测试任务进行预处理,根据用户上传的测试任务抽象出DAG图。从DAG图中划分出路径,每条路径中的节点间有依赖,不同路径之间任务可并行。然后根据DAG图中路径,整合测试用例和修改测试脚本。考虑了脚本维护成本问题,实现了测试脚本的参数化。最后,将测试脚本和测试用例上传到Hadoop的HDFS文件系统。结合MapReduce编程模型,对修改后的测试脚本设计map函数和reduce函数,其中加入启动自动化测试工具语句,自动执行测试,回收测试结果。MapReduce的执行需要Weight Scheduler来控制,算法根据Hadoop云平台状态对测试任务进行调度。结合自动化测试工具Selenium在Hadoop上搭建云测试任务管理平台,以校内网站为被测目标进行了测试整个平台的实验。实验结果证明了本文研究算法的高效性以及调度策略的有效性,相比于单机执行测试任务,在云平台下节省了测试时间,加快了测试速度。
其他文献
随着我国经济的快速发展和全球信息化技术的不断提高,人们对生产和生活的品质要求也越来越髙。在即将到来的物联网时代,传统照明设备由于其控制状态单一、控制线路复杂、耗能多
社交网络的流行改变了人们的交流方式,越来越多的人喜欢在上面分享并获取各类信息,为了能有效地帮助用户发现其真正感兴趣的地点,出现了基于位置的社交网络(Location-Based S
绝缘子长期暴露在野外,在运行时很容易发生故障,因此需定期巡检。但输电线所经区域复杂,山区、平原等地形不一,利用传统的人工巡检方式,不仅工作量大而且条件艰苦。“十一五”期间,直升机广泛应用于输电线巡检中,同时怎样利用计算机视觉技术结合巡检数据,识别输电线路中的缺陷成为研究的重点。本文主要研究了航拍输电线路图像中绝缘子的分割和识别定位,为后期绝缘子故障识别提供了条件,同时对于实现直升机巡检输电线路的数
图像分割技术是图像工程中的关键步骤,从兴起的那刻就倍受科研界的关注。图像分割技术应用在图像工程学中的各个层次,其广泛的应用领域是其成为热点的重要原因。所谓的图像分
B超图像中肝硬化的识别在临床上对肝病的诊断具有重要意义,但是临床采集的图像中有噪声、尺度不一、病变边缘模糊、回声不均匀等因素。传统的图像识别技术在对肝硬化进行识别
作为一种重要的数据分析方法,聚类分析按照某种相似性度量将样本对象划分到不同的聚类中,并要求同一聚类中的样本相似性尽可能地大,而不同聚类中样本相似性尽可能地小。同时,
本体作为一种共享的概念化模型,在人工智能、知识工程、信息检索和语义网等许多领域中发挥着越来越重要的作用。手工构建本体是一件繁琐辛苦的任务,需要耗费大量时间和费用,且需
学位
随着社交网络的快速发展,网友花费在社交网络的时间越来越多,同时也对社交网络的依赖也越来越强。社交网络在巨多用户支持的背景下,怎么留的住用户,怎么基于这些用户提供更好
近年来互联网的发展给人们的生活带来了很大变化,特别是现在Web2.0方式下人们有了更丰富方便的网上生活,而作为互联网主力军的电子商务网站也是赶着互联网大潮不断地上升发展。