Autotest自动化测试框架的研究软.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Autotest自动化测试框架的研究软

Autotest自动化测试框架的研究软   摘要:Autotest是一个开源自动化测试框架,能够大规模、完全自动化地完成Linux底层系统测试,处理测试过程中出现的内核错误、硬件死机、网络故障等。Autotest易于集成现有的内核和硬件测试,便于测试人员编写简单的测试用例和加入分析工具进行测试结果分析。Autotest框架实现分布式处理大量Linux内核测试,不仅能充分测试Linux内核和硬件的稳定性、可靠性和健壮性,还能有效提高测试效率。   关键词关键词:自动化测试;Linux内核;分布式;开源框架   DOIDOI:10.11907/rjdk.161123   中图分类号:TP306文献标识码:A文章编号文章编号2016)007001403   随着软件行业的日益成熟,软件自动化测试成为保障软件质量、加速软件开发的重要手段。现存的自动化测试框架主要是针对上层软件的测试,被测对象与底层平台分离,需假设底层平台稳定可靠。而当底层平台本身成为被测对象时,以上假设将不成立。目前针对底层系统的自动化测试技术还不成熟。因此,内核测试一般采用人工方式,测试效率较低。   Autotest是完全自动化开源测试框架,针对包括内核和硬件的底层系统进行测试,提供终端到终端的自动化功能和性能测试,使测试者能够在不了解内部框架的情况下,简单进行基本测试和集成测试。Autotest设计之初是为了解决开源的Linux系统测试不足的需求,随着功能的不断拓展,Autotest能够执行许多不同的测试,增加新的结果分析工具,集成已存在的测试框架,展现了强大的包容性、扩展性和易用性。   1几种测试框架介绍   1.1AutoBench   IBM Autobench是针对Linux系统的开源测试框架,基于httperf的Perl脚本编写而成,构建和引导测试脚本运行。通过该框架,用户能够便捷地设置测试用例的执行环境和参数,并行执行测试。但是,该框架的测试控制机制和错误处理机制不够健全,扩展性和维护性较差,不利于用户二次开发。   1.2Linux Test Project   Linux Test Project(LTP)是目前较为流行的Linux功能测试和性能测试框架,主要用来测试Linux内核基本特性。它提供测试套件,用户能够验证Linux的可靠性、耐用性和稳定性,亦可针对不同的测试目的和LTP中的接口函数进一步开发新测试用例。但是,它缺乏对测试结果的分析以及对日志的解析工作,本质仅是多个测试的集合,因此LTP并不能作为通用和完全自动化测试内核的框架。   1.3Xentest   Xentest是一个专门针对Xen虚拟化测试的自动化测试框架,通过在Xen上运行Linux下的标准测试套件对底层虚拟化进行测试。但Xentest只能紧密围绕Xen,不能成为内核或硬件测试的通用框架。   1.4Crackerjack   CrackerJack是一个完整的内核自动化测试框架,主要目标是通过回归测试寻找不同内核版本间不相容的API。它是一个很有价值的测试工具,但是功能太过狭隘。   1.5其它工具   Linux自动化测试框架研究逐渐深入。张达运等提出一种基于Lua的Linux内核测试工具,降低了Linux内核及驱动接口测试的编程难度。韩涛等设计一种Linux下自动化测试执行管理工具,通过对测试过程和测试资源进行管理,提高了测试效率。   2Autotest框架研究   2.1总体架构   Autotest采用分层结构以满足不同规模集群的测试需求。Autotest框架从上到下主要分为4层,如图1所示。   (1)用户接口:包括Web接口、命令行接口和DJANGO。作用是便于用户与Autotest交互,包括管理作业、管理Client主机、查看结果等。   (3)Serve端:包括调度数据库和AutoServ服务。主要任务是分配和调度测试作业执行。调度数据库用于选择要执行的作业,开启Autoserv进程;Autoserv用于管理Client中运行的作业、检查Client工作状态、修复失效的Client节点、管理作业的执行情况等。   (4)Client端:实际执行测试。执行单个测试任务或者作为集群中的一个测试节点执行测试。   Autotest框架工作流程如图2所示。测试Linux系统发布新版本,首先将测试任务导入AutoServ测试作业队列中;AutoServ负责将测试任务下达到Client端,在Client端安装测试环境,如Linux新版本等,并执行测试任务;测试结束后将结果发送到结果分析工具中分析,如存在缺陷则为系统打补丁。整个过程中Client端作为Autotest系统的最底层,在单个机器上

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档