一种IPMI固件自动化测试系统的利记博彩app

文档序号:11177049阅读:1000来源:国知局
一种IPMI固件自动化测试系统的制造方法与工艺

本发明公开一种自动化测试系统,涉及ipmi测试领域,具体地说是一种ipmi固件自动化测试系统。



背景技术:

ipmi技术标准随着其应用日益广泛,对基于ipmi技术的嵌入式软件的可靠性要求也越来越高,因此需要对ipmi固件进行非常严格的测试。目前已有的ipmi技术功能的测试软件存在很多局限性,如常见的ipmitool工具,它只是适用于ipmifirmwarelanchannel环境下的测试,并且测试人员需要具备相关的ipmi技术知识;icts(ipmiconformancetestsuite,ipmi一致性测试系统),主要针对的是intel标准、相关ipmi命令集的自动化测试,不支持其他oem厂商的平台以及相关ipmi特殊功能的测试验证,并且由于主机和目标机之间可能在操作系统、处理器等很多方面存在区别,这必然会增加ipmifirmware开发和测试的复杂性。而本发明提供一种ipmi固件自动化测试系统,根据嵌入式软件测试的特点和ipmi技术标准的特点,在不同测试阶段,通过分析比较,设计出适合嵌入式软件的自动测试系统,确定适合在ipmi远程访问卡和bmc之间进行软件自动测试的测试脚本,实现基于ipmi嵌入式系统的自动化测试,满足ipmifirmware基本功能测试、同步测试、带外数据命令转发机制测试、oem命令测试等需求。



技术实现要素:

本发明针对现有技术存在的不足和问题,提供一种ipmi固件自动化测试系统,本发明提出的具体方案是:

一种ipmi固件自动化测试系统,包括控制中心模块、数据测试处理模块、解析模块、远程访问卡、bmc;

控制中心模块,控制其他模块的正常运转;

数据测试处理模块,处理测试信息和数据,以及把命令请求封装并通过接口传输到目标平台的远程访问卡,同时处理所有接口信息和分析处理结果;

远程访问卡接收来自接口的命令请求,转发到bmc对命令进行响应,远程访问卡将应答通过接口发送回数据处理模块;

解析模块,解析测试脚本的语法规则,语言无误时,执行测试脚本。

所述控制中心模块主要包括kfc。

所述数据测试处理模块主要包括icts。

进行功能测试时,所述数据测试处理模块发送单条命令来获取需要的信息。

进行单元测试时,所述数据测试处理模块在不同的测试阶段,应用不同的通道。

单元测试具体测试过程是:选择一个测试单元,执行相关的测试脚本并处理脚本的语法解析程序,将测试脚本的返回结果与ipmi技术说明书中给出的标准输出对比。

进行集成测试时,所述数据测试处理模块组合不同通道下各个测试单元,定义集成测试脚本进行测试。

定义集成测试脚本流程为:设置需要集成测试的模块;装载集成测试程序以及初始化数据;设置测试通道,测试次数以及测试结果保存相关参数;调用kfc脚本并依次执行;然后输出结果文件,生成测试报告。

进行压力测试时,所述数据测试处理模块选择测试单元中容易出错的ipmi命令组,在不同通道下持续进行压力测试或者选择测试单元中稳定可靠的ipmi命令组,通过不同的通道下持续进行压力测试。

本发明的有益之处是:

本发明提供一种ipmi固件自动化测试系统,根据嵌入式软件测试的特点和ipmi技术标准的特点,在不同测试阶段,通过分析比较,设计出适合嵌入式软件的自动测试系统,确定适合在ipmi远程访问卡和bmc之间进行软件自动测试的测试脚本,实现基于ipmi嵌入式系统的自动化测试,满足ipmifirmware基本功能测试、同步测试、带外数据命令转发机制测试、oem命令测试等需求。

附图说明

图1本发明系统的框架示意图。

具体实施方式

结合附图,以具体实施来进一步解释本发明内容。

本发明提供一种ipmi固件自动化测试系统,可采用h测试模型,包括控制中心模块、数据测试处理模块、解析模块、远程访问卡、bmc;其中控制中心模块主要包括kfc(kernelfirmwarechecker,内核固件检验),数据测试处理模块主要包括icts框架,

控制中心模块,控制其他模块的正常运转;

数据测试处理模块,处理测试信息和数据,以及把命令请求封装并通过网络/串行接口传输到目标平台的远程访问卡,同时处理所有接口信息和分析处理结果;

远程访问卡接收来自网络/串行接口的命令请求,并将需要转发到bmc的命令转发至bmc,bmc对命令进行响应,远程访问卡将应答通过接口发送回数据处理模块;远程访问卡和bmc之间通过i2c进行通信;

解析模块,解析测试脚本的语法规则,语言无误时,执行测试脚本。

测试系统在运行过程中,用户通过写测试脚本来定制需要进行的测试,并需填写必要的配置参数。测试系统的输出结果需要和ipmi技术规范比较,一般来说,bmc返回的补充码不是0x00的话,说明其测试用例是没通过的。反之,如果从bmc返回的应答数据与预期一致,则其测试用例通过。

测试系统主要针对ipmi命令功能测试、单元测试、集成测试和压力测试。

针对功能测试时,数据测试处理模块的icts自带了测试用例,用户可以利用命令行工具cmdtool来发送单条命令来获取需要的信息。如果命令的补充码不是0x00,则表示bmc处理这些命令有误,需进一步查找原因。

针对单元测试时,数据测试处理模块采用测试单元自动化功能和消息模块相关的一系列ipmi命令,对ipmifirmware分别进行测试。在不同的测试阶段,应用不同的通道,测试结果会不同,从而通过多种方式验证了ipmifirmware的可靠性。具体测试过程是:选择一个测试单元,执行相关的测试脚本并处理脚本的语法解析程序,将测试脚本的返回结果与ipmi技术说明书中给出的标准输出对比,将不符合的结果进行分析、记录、分类和通报。

针对集成测试时,数据测试处理模块组合不同通道下各个测试单元,编写集成测试程序脚本,通过集成测试程序对其进行测试,检查各单元之间的接口是否存在问题。具体集成过程如下:通过不同通道,将所有的测试单元通过集成自动化测试程序验证ipmi功能的正确性。其中集成测试程序流程如下:首先设置需要集成测试的模块;然后装载集成测试程序以及初始化数据;然后设置测试通道,测试次数以及测试结果保存相关参数;然后调用kfc脚本并依次执行;然后输出结果文件,生成测试报告。

针对压力测试时,选择单元测试中容易出错的ipmi命令组,在不同通道下持续进行压力测试,确保ipmi功能的准确性;选择单元测试中稳定可靠的ipmi命令组,通过不同的通道下持续进行压力测试,确保ipmi功能的稳定性。

测试系统将测试结果以log文件格式输出,文件中记录了发送消息的命令、bmc的应答数据,在每个测试模块后会有通道、模块、命令名、测试用例和测试结果等信息。



技术特征:

技术总结
本发明公开一种IPMI固件自动化测试系统,涉及IPMI测试领域;包括控制中心模块、数据测试处理模块、解析模块、远程访问卡、BMC;控制中心模块,控制其他模块的正常运转;数据测试处理模块,处理测试信息和数据,以及把命令请求封装并通过接口传输到目标平台的远程访问卡,同时处理所有接口信息和分析处理结果;远程访问卡接收来自接口的命令请求,转发到BMC对命令进行响应,远程访问卡将应答通过接口发送回数据处理模块;解析模块,解析测试脚本的语法规则,语言无误时,执行测试脚本。

技术研发人员:刘维霞;赵瑞东;陈乃阔;孙超
受保护的技术使用者:山东超越数控电子有限公司
技术研发日:2017.06.09
技术公布日:2017.10.03
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1