一种在linux系统下批量测试HDDLED的方法与流程

文档序号:11230291阅读:780来源:国知局
一种在linux系统下批量测试HDD LED的方法与流程

本发明涉及服务器硬盘测试领域,具体涉及一种在linux系统下批量测试hddled的方法。其目的是提供一种简便容易的硬盘led批量测试方法,用程序自动完成测试且测试步骤和结果存于log文件,减少了不必要的人机交互过程,节省人力、时间、成本等资源,同时测试的覆盖率极高,任何的问题产品都会被拦截下来并能准确定位问题及时解决问题。



背景技术:

随着it领域技术的不断发展,存储器作为大数据时代的主流产物,市场需求量越来越大。公司出货量越来越大,对于研发及生产的测试要求越来越高,企业注重生产速度的同时也要求品质有保障。产品符合生产标准且能够准时出货,不但关系到公司的信誉代表一个公司的生产能力,同时也影响着客户的满意度。做到这点,产品的高效测试是至关重要的一个环节,无论在研发阶段还是生产线生产阶段的测试,如何提高测试效率成了重头戏,同时,对成本的管控也一样重要,所以每个测试项目在尽可能提高测试效率同时还需要最大限度的节约成本。自动化的程度越高,越容易做到这点。

针对上述问题,本申请发明一种在linux系统下批量测试hddled的方法,该方法用于hddled的功能测试,使用方便,可以同时大批量的进行,并且每个测试步骤都有测试log产生。减少了不必要的人机交互过程。



技术实现要素:

本申请发明一种在linux系统下批量测试hddled的方法,该方法具体包括如下步骤:搭建测试环境,将多个待测hdd与服务器连接;在服务器linux系统下运行hddled自动测试程序;将测试步骤和结果记录在log文件中。

如上所述的在linux系统下批量测试hddled的方法,其特征还在于,将多个待测hdd与服务器连接具体是通过串口管理器串口连接。

如上所述的在linux系统下批量测试hddled的方法,其特征还在于,hddled自动测试程序具体包括以下内容:扫描hdd的i/o序列号,判决其类型并加载相应的驱动程序;对hdd的硬件进行检测;登录hdd的i/o串口;对hdd的数量进行检测;对hdd的firmware进行测试;对hddled进行测试。

如上所述的在linux系统下批量测试hddled的方法,其特征还在于,在hddled自动测试程序中,如果程序中断,记录log自动结束。

如上所述的在linux系统下批量测试hddled的方法,其特征还在于,在hddled自动测试程序中,如果出现异常,则打印错误信息,排除问题后重新测试。

附图说明

图1、本申请所述方法的工作示意图

图2、本申请所述方法的工作流程图

具体实施方式

本申请发明一种在linux系统下批量测试hddled的方法,该方法用于hddled的功能测试,整个过程都是由程序设计自动执行的,并将产生测试log打印在终端的同时也保存在服务器上,让测试有绝对的保障。

下面是按照本申请所述的方法的具体实施例。

1、搭建测试环境

如图1所示,准备好1pcs(件)服务器并安装linux操作系统,再将待测hdd装进存储器中,同时搭配jbodio(justabunchofdisks,磁盘簇);然后将服务器端接上1根串口转usb线,另一端连接到ubscom(串口管理器)上,再依次将存储器io的串口接上串口线,另一端同样连接到ubscom上;最后服务器端装好测试脚本。

挂载u盘mount/dev/sdb4/mnt;

将测试脚本复制到指定目录cp/mnt/hddled_test/usr/local/bin/neptune/。

注意,硬盘hdd型号必须统一,本发明最多可以同时测试72pcs。

2、在linux操作系统下执行自动化程式

加执行权限chmod+xhddled_test;

执行命令./hddled_test;

3、扫描存储器中i/o的序列号,log会自动写在以时间命名的文件夹中,路径可以自己通过配置文件指定;

程序中断log自动结束;

print″pleasescanuiomsn[]:″;

chomp($uiom_sn=<stdin>);

my$output_filename=″20160106hdd_led_res.log″;

4、扫描存储器中i/o的pn(pn端口引脚),程序根据pn自动判断i/o类型并自动加载驱动程序,加载成功程序继续,加载失败打印error,处理异常后重新执行程序;

subload_driver;

if($fc){`modprobemptfc`}--fc类型的i/o

if($sas){`modprobemptsas`}---sas类型的i/o

5、硬件检测

程序通过sas(serialattachedscsi串行连接scsi)接口线抓取信息,自动判断服务器与存储器的连接状态及各个模块的在位状况(包括hdd,sas线连接状态,io的状态),如果状态都是ok的程序会继续运行,如果程序判断出存储器端及服务器端有异常则会在终端报错“testfail”,同时打印error信息,排除问题后继续重新测试;

subget_device

my($encl)=@-;

my@sg_map=`sg_map-x-i`;

6、程序自动登录io串口

登串口:

7、通过sas线自动检测hdd数量,如果hdd数量有异常,程序会终止测试并在终端打印异常信息;排除问题后继续重新测试。

$hddqty=getconfig($uut_name.″.jbod.hdd.qty″);

8、程序通过串口线自动检测每块hdd对应哪个hdd插槽;

9、自动检测hddfirmware(固件,就是写入erom可擦写只读存储器或eeprom电可擦可编程只读存储器中的程序),如果hddfirmware异常,测试停止更换一块新的hdd后重新测试;

10、开始hddled测试,测试pass则测试结束,测试fail,排除异常后重新测试;

下面是部分实例的具体代码

hddled测试:

该软件程序为linux下perl语言所编写,可应用于大多数hdd产品。在提高测试准速度和准确性的同时又有极高的覆盖率又有完成的测试log保存,很大程度上提高生产速度,并且不会有人为配置时可能出现的错误、漏失等错误。该方法操作简单,实用性较强,对于我们的一些问题分析及定位、生产提速等有很好的作用。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1