CN108572895B - 一种Linux下自动检查软硬件配置的稳定性测试方法 - Google Patents
一种Linux下自动检查软硬件配置的稳定性测试方法 Download PDFInfo
- Publication number
- CN108572895B CN108572895B CN201810280267.9A CN201810280267A CN108572895B CN 108572895 B CN108572895 B CN 108572895B CN 201810280267 A CN201810280267 A CN 201810280267A CN 108572895 B CN108572895 B CN 108572895B
- Authority
- CN
- China
- Prior art keywords
- test
- software
- log
- command
- linux
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000013112 stability test Methods 0.000 title claims abstract description 13
- 238000012360 testing method Methods 0.000 claims abstract description 122
- 230000002159 abnormal effect Effects 0.000 claims description 7
- 230000009191 jumping Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 238000012430 stability testing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
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/2247—Verification or detection of system hardware configuration
-
- 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/2273—Test methods
-
- 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/2284—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by power-on test, e.g. power-on self test [POST]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种Linux下自动检查软硬件配置的稳定性测试方法,所述的方法包括:步骤1:安装Linux OS和测试工具至待测机器;步骤2:使用bash SIT_REBOOT_TEST_LINUX.sh check命令启动测试,收集系统软硬件信息到相应log文件夹;步骤3:检查相应log确定软硬件信息与实际无误后,再使用命令执行相应的稳定性测试。该发明不仅可以自动检查软硬件配置,同时简化了测试执行过程,提升了测试效率。
Description
技术领域
本发明涉及服务器测试领域,更具体地说,涉及一种Linux下自动检查软硬件配置的稳定性测试方法。
背景技术
目前,在服务器领域,Linux系统相比于Windows系统更加稳定,占据了服务器系统的大半壁江山,因此,对于硬件制造商和使用者来说,Linux系统下服务器的稳定性是非常重要的因素。
当前服务器的稳定性测试,主要测试系统的长时间稳定运行能力,通过对用户实际使用场景的负载及应用场景分析,模拟真实的用户使用场景,并进行长时间的稳定运行,以保证产品在长时间运行方面可能存在的潜在问题的及时发现和有效解决。
上述的测试过程中,不能有效的检查每次系统开机时所有软硬件运行状况,存在一定的风险。
发明内容
为了解决上述问题,提供了一种Linux下自动检查软硬件配置的稳定性测试方法,不仅可以自动检查软硬件配置,同时简化了测试执行过程,提升了测试效率。
本发明实施例提供了一种Linux下自动检查软硬件配置的稳定性测试方法,所述的方法包括:
步骤1:安装Linux OS和测试工具至待测机器;
步骤2:使用bash SIT_REBOOT_TEST_LINUX.sh check命令启动测试,收集系统软硬件信息到相应log文件夹;
步骤3:检查相应log确定软硬件信息与实际无误后,再使用命令执行相应的稳定性测试。
进一步的,步骤3的具体实现过程为:
执行SIT_REBOOT_TEST_LINUX.sh命令;
判断命令中是否有参数,若有,首先检查参数配置生成配置文件,然后利用配置文件收集软硬件配置信息,最后根据测试类型type变量选择执行动作;若没有,检查到配置文件后,检查软硬件信息,并根据测试类型type变量选择执行动作。
进一步的,如果在判断命令中没有参数,且未检查到配置文件,将跳转到命令中有参数的执行流程中。
进一步的,检查参数配置生成配置文件的具体过程为:
检查第一参数值,
根据命令中的测试类型,选择相应的参数形成测试类型的变量,并将变量写入配置文件中。
进一步的,若命令中的测试类型为check,则读取第一参数形成测试类型type变量,并覆盖写入配置文件中;若命令中的测试类型为reboot或dc/ac,则首先读取第一参数形成测试类型type变量,然后通过输入或读取第二参数形成测试圈数loops变量,最后将测试类型type变量和测试圈数loops变量写入配置文件中;若命令中的测试类型不属于check或reboot或dc/ac中的任意一种,则中断测试。
进一步的,检查参数配置生成配置文件后,利用配置文件收集软硬件配置信息的具体过程为:
检查Linux OS下必要的测试工具是否安装,并在未安装时进行安装;
从当前目录及脚本运行命令中,获取该脚本执行的绝对路径,检查该脚本绝对路径运行命令是否已写入/root/.bashrc中,没有则不带参数写入绝对路径运行命令,设置该脚本在进Linux OS后自动执行;
将系统默认界面设置为文字界面,并设置autologin;
log目录中按照测试类型,检查$type-log目录是否存在,若是,则删除所有目录中的log文件;若否,则创建log目录;
将当前系统时间记录到log目录warmboot.log中;
收集系统所有软件和硬件配置信息,并分别保存到log目录的样本文件中。
进一步的,利用配置文件收集软硬件配置信息后,根据测试类型type变量选择执行动作的具体过程为:如果测试类型为reboot,则重启服务器后执行SIT_REBOOT_TEST_LINUX.sh命令;如果测试类型为dc/ac,则关机重开机后,执行SIT_REBOOT_TEST_LINUX.sh命令;如果测试类型为check,则不执行任何动作,直接返回执行SIT_REBOOT_TEST_LINUX.sh命令。
进一步的,检查软硬件信息的具体过程为:
从配置文件中获取测试类型记入type变量,并获取测试总圈数记入loops变量;
通过log目录warmboot.log获取测试已经运行的圈数,记入runloop变量;
读取当前系统时间记录到log目录warmboot.log中;
收集系统所有软件和硬件配置信息,并分别保存到log目录的样本文件中;
将保存的所有log文件分别与相应的样本文件比对,文件比对完全相同时,在屏幕显示相应模块check pass的信息;比对出现错误时,将当前时间写入log目录下的error目录下对应的errorlog,将当前测试圈数写入相应的errorlog,将错误内容写入相应的errorlog,并在屏幕显示相应模块check fail的信息;
根据warmboot.log在屏幕汇报当前运行次数;
在log目录下的error目录中逐一检查是否存在相应模块的errorlog,不存在则在屏幕显示相应检查未发现异常;存在的则在屏幕显示相应模块发现异常的次数。
进一步的,检查软硬件配置信息后,根据测试类型type变量选择执行动作的具体过程为:
检测type变量的测试类型,若为check,则完成整个动作;若为reboot或dc/ac,则比较renloop是否小于loops,若是,则根据type变量为reboot或dc/ac选择重启或关机后重开机,若否,则完成测试。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
本发明极大的提高了测试覆盖率,同时能极大的提高测试效率、降低人力投入,在每次稳定性测试进入OS时,自动检查软硬件配置是否变化,当某次稳定性测试进入OS后软件(mcinfo、bmc管理口信息、sensor状态、fru信息等模块)、硬件(CPU、内存、磁盘、所有PCI/PCIE设备信息、GPU、PSU、各种网络接口信息等模块)配置发生错误时自动记录错误发生的时间、测试次数、具体软硬件模块以及具体错误内容;每次进入OS下,屏幕打印本次软硬件配置检查结果,PASS部分使用绿色字体显示,错误部分使用红色字体显示并汇报错误内容;每次进入OS下,屏幕汇报测试开始后累计测试结果,历次均未出错的部分使用绿色字体显示,有出错的部分使用红色字体显示并汇报错误次数。
附图说明
图1是本发明实施例的方法流程图;
图2是本发明实施例步骤3的方法流程图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
如图1所示,本发明实施例提供了一种Linux下自动检查软硬件配置的稳定性测试方法,所述的方法包括:
步骤1:安装Linux OS和测试工具至待测机器,具体实现过程为:将待测机器与疲劳机正确连接;待测机器正确安装Linux OS,并将该测试工具拷贝到待测机器Linux OS下。
步骤2:使用bash SIT_REBOOT_TEST_LINUX.sh check命令启动测试,收集系统软硬件信息到相应log文件夹,测试人员在检查相应log确定软硬件信息与实际无误后,进入下一步。
步骤3:使用命令执行相应的稳定性测试。
如图2所示,步骤3的具体实现过程为:首先,执行SIT_REBOOT_TEST_LINUX.sh命令,然后判断命令中是否有参数,根据是否有参数进行不同的操作。如果在判断命令中没有参数,且未检查到配置文件,。
如果命令中有参数,首先检查参数配置生成配置文件,然后利用配置文件收集软硬件配置信息,具体过程为:检查第一参数值,根据命令中的测试类型,选择相应的参数形成测试类型的变量,并将变量写入配置文件中。
上述过程中,若命令中的测试类型为check,则读取第一参数形成测试类型type变量,并覆盖写入配置文件中;若命令中的测试类型为reboot或dc/ac,则首先读取第一参数形成测试类型type变量,然后通过输入或读取第二参数形成测试圈数loops变量,最后将测试类型type变量和测试圈数loops变量写入配置文件中;若命令中的测试类型不属于check或reboot或dc/ac中的任意一种,则中断测试。
利用配置文件收集软硬件配置信息的具体过程为:
检查Linux OS下必要的测试工具是否安装,并在未安装时进行安装。
从当前目录及脚本运行命令中,获取该脚本执行的绝对路径,检查该脚本绝对路径运行命令是否已写入/root/.bashrc中,没有则不带参数写入绝对路径运行命令,设置该脚本在进Linux OS后自动执行。
将系统默认界面设置为文字界面,并设置autologin。
log目录中按照测试类型,检查$type-log目录是否存在,若是,则删除所有目录中的log文件;若否,则创建log目录。
将当前系统时间记录到log目录warmboot.log中。
收集系统所有软件和硬件配置信息,并分别保存到log目录的样本文件中。
利用配置文件收集软硬件配置信息后,根据测试类型type变量选择执行动作,具体过程为:如果测试类型为reboot,则重启服务器后执行SIT_REBOOT_TEST_LINUX.sh命令;如果测试类型为dc/ac,则关机重开机后,执行SIT_REBOOT_TEST_LINUX.sh命令;如果测试类型为check,则不执行任何动作,直接返回执行SIT_REBOOT_TEST_LINUX.sh命令。
如果命令中没有参数,首先检查配置文件是否存在,如果不存在,将跳转到命令中有参数的执行流程中,如果存在,进入检查软硬件信息流程,并根据测试类型type变量选择执行动作。
在本申请中,检查软硬件信息的具体过程为:
从配置文件中获取测试类型记入type变量,并获取测试总圈数记入loops变量。
通过log目录warmboot.log获取测试已经运行的圈数,记入runloop变量。
读取当前系统时间记录到log目录warmboot.log中。
收集系统所有软件和硬件配置信息,并分别保存到log目录的样本文件中。
将保存的所有log文件分别与相应的样本文件比对,文件比对完全相同时,在屏幕显示相应模块check pass的信息;比对出现错误时,将当前时间写入log目录下的error目录下对应的errorlog,将当前测试圈数写入相应的errorlog,将错误内容写入相应的errorlog,并在屏幕显示相应模块check fail的信息。
根据warmboot.log在屏幕汇报当前运行次数。
在log目录下的error目录中逐一检查是否存在相应模块的errorlog,不存在则在屏幕显示相应检查未发现异常;存在的则在屏幕显示相应模块发现异常的次数。
检查软硬件配置信息后,需要根据测试类型type变量选择执行动作,具体过程为:检测type变量的测试类型,若为check,则完成整个动作;若为reboot或dc/ac,则比较renloop是否小于loops,若是,则根据type变量为reboot或dc/ac选择重启或关机后重开机,若否,则完成测试。
尽管说明书及附图和实施例对本发明创造已进行了详细的说明,但是,本领域技术人员应当理解,仍然可以对本发明创造进行修改或者等同替换;而一切不脱离本发明创造的精神和范围的技术方案及其改进,其均涵盖在本发明创造专利的保护范围当中。
Claims (1)
1.一种Linux下自动检查软硬件配置的稳定性测试方法,其特征是:所述的方法包括:
步骤1:安装Linux OS和测试工具至待测机器;
步骤2:使用bash SIT_REBOOT_TEST_LINUX.sh check命令启动测试,收集系统软硬件信息到相应log文件夹;
步骤3:检查相应log确定软硬件信息与实际无误后,再使用命令执行相应的稳定性测试;
步骤3的具体实现过程为:
执行SIT_REBOOT_TEST_LINUX.sh命令;
判断命令中是否有参数,若有,首先检查参数配置生成配置文件,然后利用配置文件收集软硬件配置信息,最后根据测试类型type变量选择执行动作;若没有,检查到配置文件后,检查软硬件信息,并根据测试类型type变量选择执行动作;如果在判断命令中没有参数,且未检查到配置文件,将跳转到命令中有参数的执行流程中;
检查参数配置生成配置文件的具体过程为:
检查第一参数值,
根据命令中的测试类型,选择相应的参数形成测试类型的变量,并将变量写入配置文件中;若命令中的测试类型为check,则读取第一参数形成测试类型type变量,并覆盖写入配置文件中;若命令中的测试类型为reboot或dc/ac,则首先读取第一参数形成测试类型type变量,然后通过输入或读取第二参数形成测试圈数loops变量,最后将测试类型type变量和测试圈数loops变量写入配置文件中;若命令中的测试类型不属于check或reboot或dc/ac中的任意一种,则中断测试;
检查参数配置生成配置文件后,利用配置文件收集软硬件配置信息的具体过程为:
检查Linux OS下必要的测试工具是否安装,并在未安装时进行安装;
从当前目录及脚本运行命令中,获取该脚本执行的绝对路径,检查该脚本绝对路径运行命令是否已写入/root/.bashrc中,没有则不带参数写入绝对路径运行命令,设置该脚本在进Linux OS后自动执行;
将系统默认界面设置为文字界面,并设置autologin;
log目录中按照测试类型,检查$type-log目录是否存在,若是,则删除所有目录中的log文件;若否,则创建log目录;
将当前系统时间记录到log目录warmboot.log中;
收集系统所有软件和硬件配置信息,并分别保存到log目录的样本文件中;
利用配置文件收集软硬件配置信息后,根据测试类型type变量选择执行动作的具体过程为:如果测试类型为reboot,则重启服务器后执行SIT_REBOOT_TEST_LINUX.sh命令;如果测试类型为dc/ac,则关机重开机后,执行SIT_REBOOT_TEST_LINUX.sh命令;如果测试类型为check,则不执行任何动作,直接返回执行SIT_REBOOT_TEST_LINUX.sh命令;
检查软硬件信息的具体过程为:
从配置文件中获取测试类型记入type变量,并获取测试总圈数记入loops变量;
通过log目录warmboot.log获取测试已经运行的圈数,记入runloop变量;
读取当前系统时间记录到log目录warmboot.log中;
收集系统所有软件和硬件配置信息,并分别保存到log目录的样本文件中;
将保存的所有log文件分别与相应的样本文件比对,文件比对完全相同时,在屏幕显示相应模块check pass的信息;比对出现错误时,将当前时间写入log目录下的error目录下对应的errorlog,将当前测试圈数写入相应的errorlog,将错误内容写入相应的errorlog,并在屏幕显示相应模块check fail的信息;
根据warmboot.log在屏幕汇报当前运行次数;
在log目录下的error目录中逐一检查是否存在相应模块的errorlog,不存在则在屏幕显示相应检查未发现异常;存在的则在屏幕显示相应模块发现异常的次数;
检查软硬件配置信息后,根据测试类型type变量选择执行动作的具体过程为:
检测type变量的测试类型,若为check,则完成整个动作;若为reboot或dc/ac,则比较renloop是否小于loops,若是,则根据type变量为reboot或dc/ac选择重启或关机后重开机,若否,则完成测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810280267.9A CN108572895B (zh) | 2018-04-02 | 2018-04-02 | 一种Linux下自动检查软硬件配置的稳定性测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810280267.9A CN108572895B (zh) | 2018-04-02 | 2018-04-02 | 一种Linux下自动检查软硬件配置的稳定性测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108572895A CN108572895A (zh) | 2018-09-25 |
CN108572895B true CN108572895B (zh) | 2021-07-30 |
Family
ID=63573964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810280267.9A Active CN108572895B (zh) | 2018-04-02 | 2018-04-02 | 一种Linux下自动检查软硬件配置的稳定性测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108572895B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491849B (zh) * | 2018-11-13 | 2022-06-21 | 郑州云海信息技术有限公司 | 一种linux系统下获取硬件配置信息的方法 |
CN109656542B (zh) * | 2018-12-10 | 2022-01-14 | 深圳市亿道数码技术有限公司 | Smbios信息核对方法及系统 |
CN112256505A (zh) * | 2020-10-16 | 2021-01-22 | 浪潮电子信息产业股份有限公司 | 一种服务器稳定性测试方法、装置及相关组件 |
CN113740781B (zh) * | 2021-08-30 | 2022-05-24 | 广州文远知行科技有限公司 | 一种接口松动检测方法、装置、交通工具及存储介质 |
CN115766393B (zh) * | 2022-10-14 | 2024-10-22 | 苏州浪潮智能科技有限公司 | 一种软硬件配置一致性检查方法、装置及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5255208A (en) * | 1991-08-08 | 1993-10-19 | Aeg Westinghouse Transportation Systems, Inc. | On-line processor based diagnostic system |
CN106502845A (zh) * | 2016-10-12 | 2017-03-15 | 郑州云海信息技术有限公司 | 一种对服务器做ac开关机的自动化测试方法 |
CN106598796A (zh) * | 2016-12-16 | 2017-04-26 | 郑州云海信息技术有限公司 | 一种测试reboot时硬件信息稳定性的方法 |
CN107590042A (zh) * | 2017-10-24 | 2018-01-16 | 郑州云海信息技术有限公司 | 一种基于Linux系统的服务器开关机测试方法与系统 |
CN107766189A (zh) * | 2017-10-13 | 2018-03-06 | 郑州云海信息技术有限公司 | 一种Windows系统下服务器自动重启稳定性的测试方法 |
-
2018
- 2018-04-02 CN CN201810280267.9A patent/CN108572895B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5255208A (en) * | 1991-08-08 | 1993-10-19 | Aeg Westinghouse Transportation Systems, Inc. | On-line processor based diagnostic system |
CN106502845A (zh) * | 2016-10-12 | 2017-03-15 | 郑州云海信息技术有限公司 | 一种对服务器做ac开关机的自动化测试方法 |
CN106598796A (zh) * | 2016-12-16 | 2017-04-26 | 郑州云海信息技术有限公司 | 一种测试reboot时硬件信息稳定性的方法 |
CN107766189A (zh) * | 2017-10-13 | 2018-03-06 | 郑州云海信息技术有限公司 | 一种Windows系统下服务器自动重启稳定性的测试方法 |
CN107590042A (zh) * | 2017-10-24 | 2018-01-16 | 郑州云海信息技术有限公司 | 一种基于Linux系统的服务器开关机测试方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108572895A (zh) | 2018-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108572895B (zh) | 一种Linux下自动检查软硬件配置的稳定性测试方法 | |
US20180357146A1 (en) | Completing functional testing | |
US9703694B2 (en) | Techniques for testing software | |
CN110704304B (zh) | 一种应用程序测试方法、装置、存储介质和服务器 | |
US20130311827A1 (en) | METHOD and APPARATUS for automatic testing of automation software | |
US10049031B2 (en) | Correlation of violating change sets in regression testing of computer software | |
JP7404839B2 (ja) | ソフトウェアプログラム不良位置の識別 | |
US10613969B2 (en) | Code coverage module with testing function identifier | |
US9842044B2 (en) | Commit sensitive tests | |
US8762781B2 (en) | Method and apparatus useful in manufacturing test case operations | |
US20070079288A1 (en) | System and method for capturing filtered execution history of executable program code | |
CN108153635B (zh) | 系统内存边缘测试方法、系统设备及计算机可读存储介质 | |
US11194704B2 (en) | System testing infrastructure using combinatorics | |
US11132286B1 (en) | Dynamic reordering of test case execution | |
CN112256560A (zh) | 应用程序测试方法、装置及电子设备 | |
CN111125990A (zh) | 一种寄生参数结果正确性的判断方法 | |
CN106656684B (zh) | 一种网格资源可靠性监控方法及装置 | |
US9057764B2 (en) | Detection of unchecked signals in circuit design verification | |
CN115757099A (zh) | 平台固件保护恢复功能自动测试方法和装置 | |
CN115480970A (zh) | 一种性能测试方法、装置、设备及存储介质 | |
US20070150866A1 (en) | Displaying parameters associated with call statements | |
CN110795142A (zh) | 一种配置文件的生成方法及装置 | |
CN110990181A (zh) | 一种自动化复现bios中选项概率性设置失败的方法及系统 | |
CN113722170B (zh) | 一种pfr功能测试方法、装置、设备及可读存储介质 | |
CN115878482A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |