CN109976963A - 一种基于通用平台的bmc测试系统实现的方法和装置 - Google Patents
一种基于通用平台的bmc测试系统实现的方法和装置 Download PDFInfo
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 86
- 238000000034 method Methods 0.000 title claims abstract description 17
- 238000004088 simulation Methods 0.000 claims abstract description 14
- 230000005284 excitation Effects 0.000 claims abstract description 11
- 238000013480 data collection Methods 0.000 claims abstract description 9
- 238000002347 injection Methods 0.000 claims description 3
- 239000007924 injection Substances 0.000 claims description 3
- 238000004891 communication Methods 0.000 claims description 2
- 238000012806 monitoring device Methods 0.000 claims 1
- 230000006870 function Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional 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所访问硬件的模拟;
可配置的编译系统,用于实现系统的代码能够在目标平台和测试平台能够通运行。
优选地,自动化测试子系统在执行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具体功能访问相关驱动;
请求传递到模拟驱动;
读取模拟数据;
返回结果。
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)
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)
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语言的串口通用验证平台及方法 |
-
2019
- 2019-03-28 CN CN201910241010.7A patent/CN109976963A/zh active Pending
Patent Citations (4)
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)
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 |