CN109976963A - 一种基于通用平台的bmc测试系统实现的方法和装置 - Google Patents

一种基于通用平台的bmc测试系统实现的方法和装置 Download PDF

Info

Publication number
CN109976963A
CN109976963A CN201910241010.7A CN201910241010A CN109976963A CN 109976963 A CN109976963 A CN 109976963A CN 201910241010 A CN201910241010 A CN 201910241010A CN 109976963 A CN109976963 A CN 109976963A
Authority
CN
China
Prior art keywords
bmc
test
realized
subsystem
general
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910241010.7A
Other languages
English (en)
Inventor
安黎京
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Wave Intelligent Technology Co Ltd
Original Assignee
Suzhou Wave Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Wave Intelligent Technology Co Ltd filed Critical Suzhou Wave Intelligent Technology Co Ltd
Priority to CN201910241010.7A priority Critical patent/CN109976963A/zh
Publication of CN109976963A publication Critical patent/CN109976963A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/261Functional testing by simulating additional hardware, e.g. fault simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明公开了一种基于通用平台的BMC测试系统实现的装置,包括:自动化测试子系统,用于BMC测试用例的激发;故障测试子系统,用于故障数据集的管理以及故障的激发;故障注入子系统,用于将故障注入到模拟驱动中;监控器驱动模拟子系统,用于实现BMC所访问硬件的模拟;可配置的编译系统,用于实现系统的代码能够在目标平台和测试平台能够通运行。本发明还公开了一种基于通用平台的BMC测试系统实现的方法。本发明所公开的方法和装置,实现了不限于服务器硬件,可以及时对BMC进行测试,不受硬件的约束,提高效率,可避免因硬件原因导致无法保证BMC功能的情况。

Description

一种基于通用平台的BMC测试系统实现的方法和装置
技术领域
本发明涉及服务器技术领域,尤其涉及一种基于通用平台的BMC测试系统实现的方法,还涉及一种基于通用平台的BMC测试系统实现的装置。
背景技术
在当今互联网时代,各大行业和公司需要大量的服务器来支持自己的产品或平台。BMC是服务器的监控管理的芯片,负责监控整个机箱的实时状态,保证服务器的正常运行。BMC的测试面临着多种挑战,首先,BMC模拟需要专用的测试硬件平台,其功能需在芯片开发完成之后才能够进行,导致测试进度后延;其次,BMC测试过程中,需要频繁对系统进行重启,降低测试效率;另外,由于BMC芯片相对比较封闭,对外提供的接口有限,不利于对系统进行故障模拟。
基于上述背景,对于本领域技术人员而言,如何更好的突破上述限制,提升BMC自动化测试能力,提升BMC的开发测试效率,是亟需解决的技术问题。
发明内容
基于背景技术存在的技术问题,本发明提出了一种基于通用平台的BMC测试系统实现的方法装置,实现了不限于服务器硬件,可以及时对BMC进行测试,不受硬件的约束,提高效率,可避免因硬件原因导致无法保证BMC功能的情况。
本发明提出的一种基于通用平台的BMC测试系统实现的装置,包括:
自动化测试子系统,用于BMC测试用例的激发;
故障测试子系统,用于故障数据集的管理以及故障的激发;
故障注入子系统,用于将故障注入到模拟驱动中;
监控器驱动模拟子系统,用于实现BMC所访问硬件的模拟;
可配置的编译系统,用于实现系统的代码能够在目标平台和测试平台能够通运行。
优选地,自动化测试子系统在执行ipmi命令或者BMC其它访问接口之前,进行测试环境初始化:为对故障模拟子系统和监控器驱动模拟子系统的初始化、状态调整及故障注入,实现模拟系统外用户或者系统对BMC芯片的应用场景。
优选地,故障测试子系统将故障数据集存于数据库中,待故障数据集注入后,自动测试子系统所获取值应与故障注入值一致。
优选地,故障注入子系统接收故障测试子系统的故障数据,通过用户内核空间通信机制将数据传递到内核空间,进而通过系统预留的故障注入点,将数据注入到驱动模拟系统中。
优选地,监控器驱动模拟子系统代理BMC firmware对硬件操作接口的实现。
优选地,可配置的编译系统通过主编译脚本,根据编译选项选择不同的编译组件进行编译构建其系统。
优选地,可配置的编译系统基于GCC Make机制实现;在目标平台的场景下,可配置的编译系统调用BMC专用的交叉编译工具集进行编译;在测试场景下,可配置的编译系统调用通用的Gcc,结合通用的GlibC进行编译。
本发明还提出了一种基于通用平台的BMC测试系统实现的方法,包括以下步骤:
准备测试环境;
根据测试用例选择对应的测试数据;
故障激发;
将故障数据发送到故障注入模块;
确认是否完成准备,若是,则激发测试用例;
BMC访问层接收到请求指令;
根据BMC具体功能访问相关驱动;
请求传递到模拟驱动;
读取模拟数据;
返回结果。
本发明中提供的一种基于通用平台的BMC测试系统实现的方法和装置,可以在无硬件设备的情况下可以对BMC功能进行测试,得到准确的测试数据,正确的验证BMC的功能,节省人力和时间,也可以提高测试效率,减轻测试人员繁重的任务和负担。
附图说明
图1为本发明提出的一种基于通用平台的BMC测试系统实现的方法的流程图。
具体实施方式
如图1所示,图1为本发明提出的一种基于通用平台的BMC测试系统实现的方法的流程图。
下面结合附图和实施例对本发明进行详细的描述。
一种基于通用平台的BMC测试系统实现的方法,包括以下步骤:
准备测试环境;
根据测试用例选择对应的测试数据;
故障激发;
将故障数据发送到故障注入模块;
确认是否完成准备,若是,则激发测试用例;
BMC访问层接收到请求指令;
根据BMC具体功能访问相关驱动;
请求传递到模拟驱动;
读取模拟数据;
返回结果。
一种基于通用平台的BMC测试系统实现的装置,包括:
自动化测试子系统,用于BMC测试用例的激发;
故障测试子系统,用于故障数据集的管理以及故障的激发;
故障注入子系统,用于将故障注入到模拟驱动中;
监控器驱动模拟子系统,用于实现BMC所访问硬件的模拟;
可配置的编译系统,用于实现系统的代码能够在目标平台和测试平台能够通运行。
在进一步的实施方式中,自动化测试子系统在执行ipmi命令或者BMC其它访问接口之前,进行测试环境初始化:为对故障模拟子系统和监控器驱动模拟子系统的初始化、状态调整及故障注入,实现模拟系统外用户或者系统对BMC芯片的应用场景。
在进一步的实施方式中,故障测试子系统将故障数据集存于数据库中,待故障数据集注入后,自动测试子系统所获取值应与故障注入值一致。
在进一步的实施方式中,故障注入子系统接收故障测试子系统的故障数据,通过用户内核空间通信机制将数据传递到内核空间,进而通过系统预留的故障注入点,将数据注入到驱动模拟系统中。
在进一步的实施方式中,监控器驱动模拟子系统代理BMC firmware对硬件操作接口的实现。
在进一步的实施方式中,可配置的编译系统通过主编译脚本,根据编译选项选择不同的编译组件进行编译构建其系统。
在进一步的实施方式中,可配置的编译系统基于GCC Make机制实现;在目标平台的场景下,可配置的编译系统调用BMC专用的交叉编译工具集进行编译;在测试场景下,可配置的编译系统调用通用的Gcc,结合通用的GlibC进行编译。
上述实施方式中提供的一种基于通用平台的BMC测试系统实现的方法和装置,建立在BMC核心功能的分析基础上,通过以下机制实现了自动化测试框架:
1、建立多平台编绎系统,通过专用的测试编绎流程,使得BMC代码能够在通用的平台进行运行;
2、采用虚拟驱动技术,在保证测试平台与目标平台接口统一的环境下,能够通过软件模拟硬件的输出,使得整体测试流程不依赖于具体的硬件;所述需模拟的硬件包括但不限于I2C驱动、CPU、内存、串口;
3、在硬件层实现故障注入机制,便于测试打桩;
4、实现故障测试子系统,通过增量实现故障测试数据集,通过故障注入机制,按照需要模拟系统故障,以测试BMC芯片在故障场景下的预期输出。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

Claims (8)

1.一种基于通用平台的BMC测试系统实现的装置,其特征在于,包括:
自动化测试子系统,用于BMC测试用例的激发;
故障测试子系统,用于故障数据集的管理以及故障的激发;
故障注入子系统,用于将故障注入到模拟驱动中;
监控器驱动模拟子系统,用于实现BMC所访问硬件的模拟;
可配置的编译系统,用于实现系统的代码能够在目标平台和测试平台能够通运行。
2.根据权利要求1所述的基于通用平台的BMC测试系统实现的装置,其特征在于,自动化测试子系统在执行ipmi命令或者BMC其它访问接口之前,进行测试环境初始化:为对故障模拟子系统和监控器驱动模拟子系统的初始化、状态调整及故障注入,实现模拟系统外用户或者系统对BMC芯片的应用场景。
3.根据权利要求1所述的基于通用平台的BMC测试系统实现的装置,其特征在于,故障测试子系统将故障数据集存于数据库中,待故障数据集注入后,自动测试子系统所获取值应与故障注入值一致。
4.根据权利要求1所述的基于通用平台的BMC测试系统实现的装置,其特征在于,故障注入子系统接收故障测试子系统的故障数据,通过用户内核空间通信机制将数据传递到内核空间,进而通过系统预留的故障注入点,将数据注入到驱动模拟系统中。
5.根据权利要求1所述的基于通用平台的BMC测试系统实现的装置,其特征在于,监控器驱动模拟子系统代理BMC firmware对硬件操作接口的实现。
6.根据权利要求1所述的基于通用平台的BMC测试系统实现的装置,其特征在于,可配置的编译系统通过主编译脚本,根据编译选项选择不同的编译组件进行编译构建其系统。
7.根据权利要求6所述的基于通用平台的BMC测试系统实现的装置,其特征在于,可配置的编译系统基于GCC Make机制实现;在目标平台的场景下,可配置的编译系统调用BMC专用的交叉编译工具集进行编译;在测试场景下,可配置的编译系统调用通用的Gcc,结合通用的GlibC进行编译。
8.一种基于通用平台的BMC测试系统实现的方法,其特征在于,包括以下步骤:
准备测试环境;
根据测试用例选择对应的测试数据;
故障激发;
将故障数据发送到故障注入模块;
确认是否完成准备,若是,则激发测试用例;
BMC访问层接收到请求指令;
根据BMC具体功能访问相关驱动;
请求传递到模拟驱动;
读取模拟数据;
返回结果。
CN201910241010.7A 2019-03-28 2019-03-28 一种基于通用平台的bmc测试系统实现的方法和装置 Pending CN109976963A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910241010.7A CN109976963A (zh) 2019-03-28 2019-03-28 一种基于通用平台的bmc测试系统实现的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910241010.7A CN109976963A (zh) 2019-03-28 2019-03-28 一种基于通用平台的bmc测试系统实现的方法和装置

Publications (1)

Publication Number Publication Date
CN109976963A true CN109976963A (zh) 2019-07-05

Family

ID=67081133

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910241010.7A Pending CN109976963A (zh) 2019-03-28 2019-03-28 一种基于通用平台的bmc测试系统实现的方法和装置

Country Status (1)

Country Link
CN (1) CN109976963A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110888804A (zh) * 2019-11-11 2020-03-17 网联清算有限公司 接口测试方法以及接口测试平台
CN110990290A (zh) * 2019-12-13 2020-04-10 浪潮软件集团有限公司 一种通用大数据平台稳定性测试系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103019921A (zh) * 2011-09-20 2013-04-03 中国人民解放军63928部队 一种基于故障注入的操作系统容错性测试系统及其方法
CN104536303A (zh) * 2014-12-11 2015-04-22 中国航空工业集团公司第六三一研究所 一种故障注入方法
CN107301101A (zh) * 2017-06-22 2017-10-27 郑州云海信息技术有限公司 一种存储故障注入方法及系统
CN107451026A (zh) * 2017-07-27 2017-12-08 郑州云海信息技术有限公司 一种基于sv语言的串口通用验证平台及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103019921A (zh) * 2011-09-20 2013-04-03 中国人民解放军63928部队 一种基于故障注入的操作系统容错性测试系统及其方法
CN104536303A (zh) * 2014-12-11 2015-04-22 中国航空工业集团公司第六三一研究所 一种故障注入方法
CN107301101A (zh) * 2017-06-22 2017-10-27 郑州云海信息技术有限公司 一种存储故障注入方法及系统
CN107451026A (zh) * 2017-07-27 2017-12-08 郑州云海信息技术有限公司 一种基于sv语言的串口通用验证平台及方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110888804A (zh) * 2019-11-11 2020-03-17 网联清算有限公司 接口测试方法以及接口测试平台
CN110888804B (zh) * 2019-11-11 2022-02-01 网联清算有限公司 接口测试方法以及接口测试平台
CN110990290A (zh) * 2019-12-13 2020-04-10 浪潮软件集团有限公司 一种通用大数据平台稳定性测试系统及方法
CN110990290B (zh) * 2019-12-13 2023-06-06 浪潮软件集团有限公司 一种通用大数据平台稳定性测试系统及方法

Similar Documents

Publication Publication Date Title
CN103365770B (zh) 移动终端软件测试系统及软件测试方法
CN107463473B (zh) 基于uvm和fpga的芯片软硬件仿真环境
CN106940428B (zh) 芯片验证方法、装置及系统
CN106445811B (zh) 一种基于SecureCRT的自动化测试系统及方法
US7480826B2 (en) Test executive with external process isolation for user code modules
CN104750603B (zh) 一种多核dsp软件仿真器及其物理层软件测试方法
US10209306B2 (en) Methods and systems for generating functional test patterns for manufacture test
CN110865971A (zh) Soc芯片的验证系统及其方法
CN106599343A (zh) 一种提高仿真效率的soc系统验证方法和装置
CN103150188B (zh) 非x86指令集计算机的x86兼容显卡快速初始化方法
CN104125504B (zh) 一种基于持续集成的部署方法、装置及系统
CN107239271A (zh) 开发文档生成方法及装置
US10176077B2 (en) Generating breakpoints for cross-layer debugging
CN105260208A (zh) 一种服务器自动批量刷新raid卡驱动的方法
US20150070367A1 (en) Shader Program Profiler
CN103488513B (zh) 设备即插即用通用驱动方法
CN110321292A (zh) 芯片测试方法、装置、电子设备及计算机可读存储介质
CN115656792B (zh) 芯片可测性设计的测试方法及测试平台
CN109976963A (zh) 一种基于通用平台的bmc测试系统实现的方法和装置
CN109460359A (zh) 一种用于嵌入式设备的软件版本测试方法及系统
CN115684896A (zh) 芯片可测性设计测试方法、测试平台及其生成方法及装置
CN115794639B (zh) 基于流程的可视化测试及可视化仿真模拟测试系统和方法
CN104678292B (zh) 一种复杂可编程逻辑器件cpld测试方法和装置
CN107122280A (zh) Dut基础测试的自动化测试方法和系统
CN109753308B (zh) 指令通路验证系统及指令通路监测方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190705

RJ01 Rejection of invention patent application after publication