技术领域
[0001] 本发明涉及一种测试系统和测试方法,特别涉及一种开关机测试系统和测试方法。
相关背景技术
[0002] 存储设备是由一片或多片PCM(Processor Control Module)外接一个或多个JBOD存储装置所构成,目前有SAS JBOD、FC JBOD等。JBOD(Just a Bunch Of Disks,磁盘簇)是在一个底板上安装的带有多个磁盘驱动器的存储装置。这些存储装置都系将多颗硬盘放在同一台存储设备上,且本身并不一定具备操作系统。这些存储设备可以由另一台具备操作系统的计算器通过HBA(Host Bus Adapter)卡连接,达到将数据读取及存储的目的。
[0003] 为了确保存储设备能够顺利开机并保证其开关机次数的可靠,需要执行开关机测试。已知的开关机测试方法是通过在一个开关机治具上设定参数如开关机间隔时间,由开关机治具送电给存储设备,由另一台有操作系统的计算机通过软件(如Putty或者Hyper-terminate)读取存储设备的信息并显示。
[0004] 但是,这种开关机测试技术的缺点有:第一,由于开关机治具不和计算机连接,开关机治具只按照设定的开关机间隔时间送电及断电给存储设备,因此不能保证存储设备上所有的硬盘在存储设备每次开关机时完全被侦测到;第二,虽然有的开关机治具虽然可以做到显示开关机的执行次数,但是常常会因为讯号传送到计算机的时间和开关机治具本身的秒数计算有误差,而造成计算机上显示的次数和开关机治具不一样,测试人员需要花费许多时间确定是计算机软件或是开关机治具的问题,不仅浪费人力及设备成本,也会影响测试的可靠度。
具体实施方式
[0016] 图1是本发明开关机测试系统的较佳实施方式下的方框图。该开关机测试系统10连接于一被测试装置20,可对被测试装置20进行开关机测试。所述被测试装置20可为存储设备,如SAS JBOD(Just a Bunch Of Disks,磁盘簇)、FC JBOD,或为服务器,以下将以存储设备为例进行说明。
[0017] 所述开关机测试系统10包括一开关机治具100、一单片机300及一计算机500。开关机治具100与存储设备20连接,用于送电及断电给存储设备20。所述单片机300连接所述开关机治具100及计算机500,用于接收计算机500的开关机命令控制开关机治具100送电及断电给存储设备20。
[0018] 所述计算机500同时与存储设备20通过一HBA(Host Bus Adapter)卡连接。该HBA(Host Bus Adapter)卡用于读取存储设备20的信息,如存储设备20内的硬盘数量、配置、及是否每个硬盘都能被读取等等。所述计算机500上安装有一软体程序,请参阅图2,该软体程序包括:一输入设定模块5001、一开关机模块5003、一开关机测试模块5005、一参数判断模块5007以及一输出模块5009。
[0019] 所述输入设定模块5001在开关机测试系统10与存储设备20连接后,接收用户输入设定开关机测试的测试参数,如开关机测试的次数及开关机间隔时间等。例如,可设定开关机测试模块5001需要执行的开关机次数为500次,开关机间隔时间为1分钟。
[0020] 所述开关机模块5003自动依据设定的测试参数对单片机300发出开关机指令。
[0021] 所述开关机测试模块5005用于对存储设备执行开机测试,在开机测试过程中读取存储设备20的信息并测试,对测试结果进行记录,并在侦测开机及信息读取不成功时使测试结束,在侦测开机及信息读取成功时对存储设备执行关机测试。记录的测试结果可为每次开关机测试是否均可在设定时间间隔内正常开机及关机,及在开机成功后控制所述HBA卡读取的存储设备20的信息是否完全等。
[0022] 所述参数判断模块5007用于判断开关机测试次数是否达到设定的测试参数,如开关机测试的次数500次。具体为:参数判断模块5007可包括一计数器,在成功开关机一次时自动累加1次,并将累加后的次数与设定的开关机次数进行比较,从而判断累加后的次数是否达到设定的开关机次数。
[0023] 所述输出模块5009用于将开关机测试模块5005记录的测试结果输出,如打印输出或通过显示器显示。
[0024] 图3是本发明开关机测试方法的较佳实施方式的流程图。
[0025] 步骤S21中,所述输入设定模块5001在开关机测试系统10与存储设备20连接后,接收用户输入设定开关机测试的测试参数,包括开关机次数及开关机间隔时间。
[0026] 步骤S22中,所述开关机模块5003对单片机300发出开机指令。
[0027] 步骤S23中,所述单片机300接收计算机500的开机命令,控制开关机治具100送电给存储设备20,使存储设备20开机。
[0028] 步骤S24中,所述开关机测试模块5005控制所述HBA卡读取存储设备20的信息。
[0029] 步骤S25中,所述开关机测试模块5005测试读取的存储设备20的信息,判断是否在设定的开关机间隔时间内成功开机并将存储设备20的信息读取完全,并记录测试结果。若是,流程转至步骤S26,若否,测试流程结束。
[0030] 步骤S26中,所述开关机模块5003对单片机300发出关机指令。
[0031] 步骤S27中,所述单片机300接收计算机500的关机命令,控制开关机治具100给存储设备20断电,使存储设备20关机。
[0032] 步骤S28中,所述开关机测试模块5005判断是否成功关机,并记录测试结果。若是,流程转至步骤S29,若否,测试流程结束。
[0033] 步骤S29中,所述参数判断模块5007用于判断是否达到设定的开关机次数。若是,流程结束,若否,流程跳转至步骤S22。
[0034] 步骤S30中,所述输出模块5009将开关机测试模块5005记录的测试数据输出。
[0035] 通过以上方法,本发明开关机测试系统10通过计算机500控制开关机治具100送电及断电给测试装置20,可以使被测试装置20每次的开机测试及信息读取测试都成功后再执行关机测试,并使被测试装置20实际的测试开关机次数与计算机500的显示达成一致。