一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

存储器件测试异常处理方法、装置、电子设备及存储介质与流程

2022-04-27 10:42:26 来源:中国专利 TAG:


1.本发明实施例涉及存储器技术领域,尤其涉及一种存储器件测试异常处理方法、装置、电子设备及存储介质。


背景技术:

2.jenkins是一个开源软件项目,是基于java开发的一种持续集成工具,用于监控持续重复的工作。目前很多存储器件相关的测试也都是基于jenkins的框架搭建的自动化测试平台进行开发的,比如,存储器件中的固件新功能的开发、固件版本的定期发布、产品的回归测试、性能测试等等。当自动化测试平台对存储器件进行测试时,测试节点(test node)上会出现一些异常,这些异常大多会干扰下一个测试用例(test case)的测试,因此需要在下一个测试用例测试前将异常处理。然而目前,自动化测试平台采用的是一种静态的异常恢复策略,其无法依据测试中发生的各种情况作出正确的异常恢复。


技术实现要素:

3.有鉴于此,本发明实施例提供一种存储器件测试异常处理方法、装置、电子设备及存储介质,对待测存储器件测试过程中的异常进行处理,以正确地对测试中的异常进行处理,提高待测存储器件的使用率,减少了测试时间,且显著降低了人工恢复处理的复杂度。
4.本发明实施例的技术方案是这样实现的:
5.第一方面,本发明实施例提供一种存储器件测试异常处理方法,所述方法包括:
6.确定第一测试场景中与待测存储器件测试相关的一个或多个第一数据;
7.监测所述一个或多个第一数据;
8.基于所述一个或多个第一数据确定对所述待测存储器进行测试过程中出现的测试异常;
9.基于所述测试异常在异常恢复表中进行查找,确定对所述测试异常的一个或多个异常处理操作;
10.基于所述一个或多个异常处理操作对所述测试异常进行处理。
11.第二方面,本发明实施例还提供一种存储器件测试异常处理装置,
12.所述异常处理装置包括第一确定单元、监测单元、第二确定单元、查找单元和处理单元,其中;
13.所述第一确定单元,用于确定第一测试场景中与待测存储器件测试相关的一个或多个第一数据;
14.所述监测单元,用于监测所述一个或多个第一数据;
15.所述第二确定单元,用于基于所述一个或多个第一数据确定对所述待测存储器进行测试过程中出现的测试异常;
16.所述查找单元,用于基于所述测试异常在异常恢复表中进行查找,确定对所述测试异常的一个或多个异常处理操作;
17.所述处理单元,用于基于所述一个或多个异常处理操作对所述测试异常进行处理。
18.第三方面,本发明实施例还提供一种测试系统,所述测试系统基于jenkins搭建,包括jenkins服务器和一个或多个测试节点;其中,所述测试节点包括待测存储器件和耦合在所述待测存储器件的测试主机;
19.其中,所述jenkins服务器或所述一个或多个测试节点中的每一个测试主机包括上述的存储器件测试异常处理装置。
20.第三方面,本发明实施例还提供一种电子设备,所述电子设备包括存储器和处理器,其中,所述存储器中存储有指令;
21.所述处理器用于运行所述存储器中的指令,所述指令被处理器运行时,实现上述任一项所述的方法。
22.第四方面,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序处理器执行时,实现上述任一项所述的方法。
23.本发明实施例提供一种存储器件测试异常处理方法、装置、电子设备及存储介质。其中,所述方法包括:确定第一测试场景中与待测存储器件测试相关的一个或多个第一数据;监测所述一个或多个第一数据;基于所述一个或多个第一数据确定对所述待测存储器进行测试过程中出现的测试异常;基于所述测试异常在异常恢复表中进行查找,确定对所述测试异常的一个或多个异常处理操作;基于所述一个或多个异常处理操作对所述测试异常进行处理。本发明实施例提供的异常处理方法及装置,通过在相应的测试场景(第一测试场景)中定义一组与测试相关的数据(一个或多个第一数据),然后监测这组数据,基于这组数据确定在对待测存储器件测试器件是否出现异常,出现的是什么异常,再基于确定的异常在维持的异常恢复表中查找相应的一个或多个异常处理操作,基于这些异常处理操作予以自动处理确定的异常,不仅减少了测试时间,并且显著降低了人工恢复处理的复杂度。
附图说明
24.在不一定按比例绘制的附图中,相同的标号可以描述不同视图中的类似组件。具有不同字母后缀的相同数字可表示类似组件的不同实例。附图以实例而非限制的方式一般性地说明了本文档中讨论的各种实施例。
25.图1为本发明实施例提供的一种存储器件测试异常处理方法的流程示意图;
26.图2为本发明实施例的基于jenkins搭建的自动化测试系统的结构示意图;
27.图3为本发明实施例提供的一种存储器件测试异常处理方法的实现原理示意图;
28.图4为本发明实施例提供的一种存储器件测试异常处理方法运行在jenkins服务器侧的流程示意图;
29.图5为本发明实施例提供的一种存储器件测试异常处理方法运行在测试主机侧的流程示意图;
30.图6为本发明实施例提供的一种存储器件测试异常处理装置的结构示意图;
31.图7为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
32.以下参照附图更详细地描述本发明实施例的各个实施例。可以通过不同地配置或布置本发明实施例中的元件和特征以形成可作为任何所公开的实施例的变形的其它实施例。因此,本发明实施例不限于在本文中阐述的实施例。相反,提供所描述的实施例以使得本发明实施例是彻底和完整的,并且将本发明实施例的范围充分传达给本发明实施例所属技术领域的技术人员。应当注意的是,对“实施例”、“另一实施例”等的引用不一定表示仅一个实施例,并且对任何这样的短语的不同引用不一定针对相同的实施例。应当理解的是,尽管在本文中可以使用术语“第一”、“第二”、“第三”等来标识各种元件,但是这些元件不受这些术语的限制。这些术语用于将一个元件与另一个具有相同或者相似名称的元件区分开。因此,在不脱离本发明实施例的精神和范围的情况下,在一个实施例中的第一元件在另一实施例中也可以称为第二或三元件。
33.附图不一定按照比例绘制,并且在某些情况下,可以放大比例以清楚地示出实施例的特征。当元件称为连接或联接至另一个元件时,应该理解的是,前者可以直接连接或联接后者,或者可以经由二者之间的一个或多个中间元件电连接或电联接至后者。此外,还应当理解的是,当元件被称为在两元件“之间”时,该元件可以是两个元件之间唯一元件,或者也可以存在一个或多个中间元件。
34.在本文中所使用术语仅出于描述特定实施例的目的,并且不旨在限制本发明实施例。如本文中所使用的单数形式旨在包括复数形式,除非上下文另外明确指出。除非另外说明或者从上下文可以清楚地理解为单数形式,否者在本发明实施例和所附权利要求书中使用的冠词“一”和/或“一个”统称应该解释为表示“一个或多个”。应当进一步理解的是,本发明实施例中使用的术语“包括”、“包括有”、“包含”和“包含有”指定存在所述元件并且不排除存在或附加一个或更多其它元件。本发明实施例所使用的术语“和/或”包括一个或者多个相关联的所列项目的任意和所有组合。除非另外定义,否则本发明实施例使用的包括技术和科学技术的所有术语具有与本发明实施例所属领域的普通技术人员鉴于本发明实施例而通常理解的相同含义。应当进一步理解的是,除非本发明实施例明确定义,否则诸如在常用词典中定义的属于应解释为具有与其在本发明实施例和相关技术的环境中的含义一致的含义,而不应以理想化或过于形式化的方式解释。
35.在以下描述中,阐述了许多具体细节以提供对本发明实施例的透彻理解,可以在没有某些或者所有这些具体细节的情况下实践本发明实施例。在其它情况下,没有详细描述公知的处理结构和/或处理,以免不必要地模糊本发明实施例。还应当理解的是,在某些情况下,除非另外特别之处,否则对相关领域的技术人员显而易见的是,关于一个实施例描述的特征或元件可以被单独使用或者与另一实施例的其它特征或元件组合使用。在下文中,参考附图详细描述本发明实施例的各个实施例。以下描述集中在细节上以促进对本发明实施例的实施例的理解。可能省略了众所周知的技术细节,以免模糊本发明实施例的特征和方面。
36.如图1所示,其示出本发明实施例提供的一种存储器件测试异常处理方法的流程示意图。在图1中,所述测试异常处理方法包括:
37.s101:确定第一测试场景中与待测存储器件测试相关的一个或多个第一数据;
38.s102:监测所述一个或多个第一数据;
39.s103:基于所述一个或多个第一数据确定对所述待测存储器进行测试过程中出现的测试异常;
40.s104:基于所述测试异常在异常恢复表中进行查找,确定对所述测试异常的一个或多个异常处理操作;
41.s105:基于所述一个或多个异常处理操作对所述测试异常进行处理。
42.在实际应用过程中,所述测试异常处理方法可以应用于基于jenkins搭建的自动化测试系统,所述测试系统可以包括jenkins服务器和一个或多个测试节点;其中,所述测试节点包括待测存储器件和耦合在所述待测存储器件的测试主机。
43.该自动化测试系统可以完成存储器件相关的多种测试,比如背景技术中描述的存储器件中的固件新功能的开发、固件版本的定期发布、产品的回归测试、性能测试等等。在自动化测试平台对存储器件进行测试时,测试节点在运行过程中会出现一些异常,然而目前,自动化测试系统对于这些异常的处理方式通常采用一种静态的异常恢复策略,比如,一种恢复策略可以为,在测试中出现异常时,中断测试,先人为的将异常恢复后,再重新启动测试,这样明显增加了测试时间。还有一种做法可以是在测试前述预先手动预填处理要执行的脚本,比如,在该脚本中预填一些操作,比如,在执行该脚本时,若该脚本失败了,又不想停下一脚本的测试,可以在该脚本执行前,在该脚本中预填若该脚本执行失败时由jenkins服务器控制测试主机发送identify命令以检查向待测存储器件的驱动(drive)是否能正常响应,若能正常响应,则发送重启命令(比如,在待测存储器件存在接口pcie时,重启命令可以为pcie reset)给待测存储器件,以重新启动待测存储器件,进而进行下一脚本的测试。这两种方式,前一种是无法依据测试中发生的各种情况作出复杂的处理,比较浪费时间;后一种,因为脚本执行时出现异常的原因是多种多样的,恢复的策略也需要对症下药,才能做到理想的异常恢复,比如,若一个测试节点发生异常,若为待测存储器件的固件异常引起的掉盘现象,若是作重启操作,该异常还是无法恢复正常。
44.对于前述的测试系统,作为一种可选的搭建方式,其结构可以如图2所示。图2示出本发明实施例的基于jenkins搭建的自动化测试系统的结构示意图。在图2中,示例性的包括4个测试主机以及4个控制机,用于对4个待测存储器件,执行测试用例、监测、回收测试结果的目的。待测存储器件通过通信接口(比如,pcle接口)耦合到测试主机,以连接到该测试系统。在待测存储器件研发初期阶段,由于产品不稳定等因素会导致待测存储器件在某些测试用例下,无法响应耦合的测试主机发送的命令,而导致测试主机的系统蓝屏或测试主机死机。一旦出现这种情况,jenkins服务器就不能对测试主机进行访问或控制,在测试主机上运行的所有程序将随着死机而无法执行和返回结果,此时则需要人为使测试主机恢复,因此为了能够自动的控制测试主机,增加了控制机,以在某些测试情况下控制测试主机进行关机或重启等操作,其中控制机包含但不限于继电器,收发接口等能够用于实现对测试主机进行关机与重启等操作。这样,一旦jenkins服务器监测到测试主机出现蓝屏或者死机的情况下,jenkins服务器可以通过控制机对测试主机进行重启操作,待测试主机恢复进行操作系统(os)后,继续根据测试用例的需要进行测试。应该理解的是,对于jenkins服务器来说,可以访问控制机和/或测试主机。
45.需要说明的是,对于前述图2中的自动化测试系统,也可以称之为自动化测试平台,其中,在jenkins服务器还包含一个数据库,用于存放测试数据、测试结果。每一个测试
主机和待测存储器件在jenkins服务器侧称之为一个测试节点(node),换句话说,在jenkins服务器的应用软件中,每一个测试主机对应一个node,jenkins服务器通过该node对与相应测试主机连接的待测存储器件进行重复的测试。待测存储器件可以为任何类型的存储器件,比如,其可以为具有3d nand的存储器件;还可以是支持nvme协议的ssd等等。
46.在一些实施例中,所述测试异常处理方法可以运行在所述jenkins服务器侧或所述测试节点侧。
47.需要说明的是,本发明实施例提供的测试异常处理方法在实际实现时可以是一个程序进程,因此,其可以运行在所述jenkins服务器侧或所述测试节点侧,其中,所述测试异常处理方法运行在所述测试节点侧时,其实是运行在前述的测试主机上的。应该理解的是,结合图2所示的自动化测试系统,所述测试异常处理方法运行在jenkins服务器侧时,该测试异常处理方法需要监控所有测试节点,以对每一个测试节点在测试过程中出现的异常进行处理,具体如何监控,可以采用轮询的方式接收不同测试节点上与测试相关的数据,以确定每一个测试节点在测试过程中是否出现异常,进而在测试过程中出现异常予以恢复处理。在所述测试异常处理方法运行在测试节点的测试主机时,每一个测试主机上均应具有该测试异常处理方法的实现进程。
48.在一些实施例中,对于s101来说,所说的第一测试场景可以是指某一种测试场景,这里采用“第一”仅是为了方便描述,不用限制本发明实施例。在实际应用过程中,测试场景的划分可以依据测试人员的专业技术水平和/或待测存储器件的数量而定,比如,第一测试场景可以是针对待测存储器件的固件开发的回归测试,此时,由于对待测存储器件的固件开发的测试人员来说专业技术水平比较高,其对待测存储器件的测试过程中出现的异常的原因比较清楚,其能够准确的针对某一异常给出正确的恢复处理,此时,仅需监测与测试最相关的那些参数即可(需要监控少量的第一数据)。而比如对于第一测试场景为对大批量的待测存储器件进行产品性能测试时,此时,需要自动化程度比较高,那么,需要检测与测试相关的比较全面的一组数据,这样对于各种异常可以自动对应一种处理方式,进而提高了测试的效率,节约的测试时间。
49.基于前述描述,一方面来说,与待测存储器件测试相关的一个或多个第一数据可以与测试场景相关的,根据不同的测试场景可以定制不同的监控数据。另一方面,与待测存储器件测试相关的一个或多个第一数据可以是一组可扩展的、可定制的监控数据。具体如何确定依据实际情况而定。
50.在一些实施例中,所述一个或多个第一数据可以包括静态数据和/或动态数据,其中,所述静态数据包括与所述待测存储器件测试相关的软件信息和/或硬件信息;所述动态数据包括与所述待测存储器件测试相关的运行信息和/或日志信息。
51.需要说明的是,所述软件信息可以是指与待测存储器件耦合的测试主机和/或待测存储器件中运行的软件的信息,比如,操作系统版本、待测存储器件的版本、待测存储器件的驱动程序等等。所述硬件信息可以是指与待测存储器件耦合的测试主机和/或待测存储器件中使用的硬件的信息,比如,测试主机的cpu类型、cpu逻辑内核的个数、主板、内存、网卡、显卡、待测存储器件的类型等等。运行信息可以是指在对待测存储器件进行测试时,与待测存储耦合的测试主机和/或待测存储器件软件和/硬件的运行状态数据以及网络运行状态数据,比如,cpu所有内核的运行状态数据、待测存储器件的运行状态数据、网络带宽
的实时运行状态数据。
52.这里,日志信息可以是指jenkins搭建的自动化测试系统中,在对待测存储器件进行测试时,各种日志数据,比如,测试主机的操作系统的日志数据、tpy日志数据、存储性能开发套件(spdk,storage performance development kit)日志数据以及数据平面开发套件(dpdk,data plane development kit)日志数据等等。从另一角度来讲,确定的所述一个或多个第一数据中的每一个第一数据可以是静态数据或动态数据。
53.应该理解的是,前述描述的一个或多个第一数据可以是指测试主机侧在对待测存储器件进行测试时与其内核相关的数据。本发明实施例提供的测试异常处理方法,也就是,通过收集这些与测试主机和/或待测存储器件在测试过程中与内核相关的数据,并对这些数据进行分析,获得测试过程中出现的异常,并依据定制的恢复策略,自动的对异常进行恢复,以优化测试时间以及降低人工处理的复杂度。
54.在一些实施例中,所述监测所述一个或多个第一数据,可以包括:
55.按照相同和/或不同设定频率在本地监听和/或远程调用所述一个或多个第一数据。
56.这里描述的是,对于前述不同的第一数据,可以按照相同和/或不同设定频率在本地监听和/或远程调用,其表达了两层意思,第一层,对于第一数据的监测频率的描述:不同的第一数据按照相同或不同的设定频率进行监测,基于此,对于所述一个或者多个第一数据的监测频率可以采用完成不同的设定频率进行监测、可以采用部分相同的设定频率进行监测;还可以采用完全不同的设定频率进行监测;第二层,对于第一数据的监测方式:按照本地监听和/或远程调用的方式获得一个或多个第一数据,其中,每一个第一数据的监测方式可以相同也可以不同,具体每一个第一数据的监测方式与第一数据的存储位置以及本发明实施例提供的测试异常处理方法运行的位置有关。
57.依据前面的描述,对于监测所述一个或多个第一数据,举例来说,如表1所示,其列出了部分第一数据的监测频率和监测方式。
58.表1第一数据的监测频率和监测方式
[0059][0060]
也就是,本发明实施例所说的本地监听还是远程调用,是针对所监测的第一数据在测试过程中存储的位置以及本发明实施例提供的异常测试处理方法运行在哪侧而言的,若测试异常处理方法运行在jenkins服务器侧,而第一数据存储在测试主机侧,那么,jenkins服务器想要获取第一数据,则需要利用操作系统(比如,linux)远程调用的命令获得;若是第一数据存储在jenkins服务器侧,那么仅需要在jenkins服务器本地监听即可。若
测试异常处理方法运行在测试主机侧,而第一数据存储在测试主机侧,那么,仅需要测试主机在本地监听即可;若第一数据存储在jenkins服务器侧,需要测试主机利用操作系统(比如,linux)远程调用的命令获得。
[0061]
作为一种可选的实施例,对于s103,所述基于所述一个或多个第一数据确定对所述待测存储器进行测试过程中出现的测试异常,可以包括:
[0062]
基于所述一个或多个所述第一数据与标准数据库进行比对;
[0063]
基于比对结果确定对所述待测存储器进行测试过程中出现的测试异常;
[0064]
其中,所述标准数据库包括与所述一个或多个所述第一数据中的每一个所述第一数据对应的标准数据;所述标准数据用于反映在对所述待测存储器进行相同测试过程中未出现异常情况下与所述测试相关的数据。
[0065]
应该知道的是,若在某个测试过程,要判断待测存储器件是否出现异常,将在该测试过程中监测到的与测试相关的数据与在其他测试过程中没有异常情况下监测到的与测试相关的数据进行比对,若二者一致,则该测试过程中没有出现异常;若二者不一致,则该测试过程中有异常。
[0066]
这里,标准数据库可以包括所述一个或多个第一数据中每一个所述第一数据对应的标准数据,所述标准数据就是指未出现异常时各个测试过程中与所述测试相关的数据。在实际应用过程中,在对待测存储器件进行测试整个过程中,出现的异常可能不止一个。
[0067]
在一些实施例中,所述测试异常包括一个或多个。
[0068]
作为一种可选的实施例,在所述测试异常包括一个时,所述基于所述测试异常在异常恢复表中进行查找,确定对所述测试异常执行的一或多个处理操作,可以包括:
[0069]
生成用于表明所述测试异常的一个或多个测试异常事件;
[0070]
基于所述一个或多个测试异常事件在所述异常恢复表中进行查找,确定对所述测试异常执行的一或多个处理操作;
[0071]
其中,所述异常恢复表包含异常事件与异常处理操作之间的映射关系。
[0072]
作为另一可选的实施例,在所述测试异常包含多个时,所述基于所述测试异常在异常恢复表中进行查找,确定对所述测试异常执行的一或多个处理操作,包括:
[0073]
生成每一个测试异常对应的一个或多个所述测试异常事件;
[0074]
基于每一个对应的一个或多个所述测试异常事件在所述异常恢复表中进行查找,确定对每一个测试异常执行的一个或多个处理操作。
[0075]
上述描述的是,在基于前述的描述,确定了测试异常后,生成jenkins服务器或测试主机能够识别的用于表明所述测试异常的测试异常事件,然后,基于所述测试异常事件在存储的异常恢复表中进行查找,以确定对所述测试异常执行的一个或多个处理操作,从而对该测试异常进行处理,比如,恢复或告知管理人员。
[0076]
在实际应用过程中,所述异常恢复表可以是根据以往的经验定制的规则表,其包含异常事件与对异常事件处理的处理操作之间的映射关系,示例性的可以参考表2和表3。需要说明的是,在实际应用过程中,一个异常事件可以对应多个处理操作。多个异常事件也可以对应一个处理操作。
[0077]
基于前述的描述,在测试过程中,可能包含一个或多个测试异常,每一个测试异常对应一个异常事件,每一个异常事件可能对应一个或多个处理操作。
[0078]
应该理解的是,测试过程中,在同一时间,有可能出现多个测试异常。在出现多个测试异常时,需要根据测试异常对测试的影响程度设置测试异常对应的优先级,优先级较高的测试异常将优先被处理。
[0079]
其中,表2为异常事件与对异常事件处理的处理操作之间的映射关系表;表3为处理操作的描述表。
[0080]
表2异常事件与对异常事件处理的处理操作之间的映射关系表
[0081][0082]
表3处理操作的描述表
[0083][0084]
需要说明的是,表2和表3仅是示例性的说明该异常恢复表,其可以随着测试实际需要,不断添加更多的映射关系。其中,对于优先级来说,要根据实际测试的情况进行设置。
[0085]
在一些实施例中,所述基于所述一个或多个异常处理操作对所述测试异常进行处理,可以包括:执行所述一个或多个异常处理操作,以对所述测试异常进行处理。这里描述的就是,执行这些异常处理操作,以完成对所述测试异常的恢复处理。
[0086]
综上,本发明实施例提供的测试异常处理方法,其工作原理如图3所示,在于:在采用自动化测试系统进行自动化测试过程中,在jenkins服务器侧或测试节点侧运行一个能够恢复处理测试过程中的异常恢复处理进程(也就是本发明实施例提供的测试异常处理方法),对确定的一个或多个第一数据,按照各自的设定频率对每一个第一数据进行监测(也即读取数据);然后基于监测的所述一个或多个第一数据确定出现的测试异常,生成用于表明所述测试异常的一个或多个测试异常事件,然后,基于所述测试异常事件查找异常恢复表,获得对所述测试异常事件处理的一个或多个处理操作,执行所述一个或多个处理操作,
完成对异常的恢复或处理。基于这种处理,在测试节点发生异常后能够自动的对测试节点进行恢复,使其能马上重新投入测试或者及时邮件通知管理人员进行人工干预改进,从而提高了测试节点的使用率,减少了测试时间,并且能够显著降低人工恢复处理的复杂度。
[0087]
为了理解本发明实施例,下面以本发明实施例提供的测试异常处理方法运行在jenkins服务器侧如图4所示,其示出本发明实施例提供的一种存储器件测试异常处理方法运行在jenkins服务器侧的流程示意图;及运行在测试主机侧如图5所示,其示出本发明实施例提供的一种存储器件测试异常处理方法运行在测试主机侧的流程示意图,两种情况为例进行说明。
[0088]
在图4中,所述测试异常处理方法具体包括:
[0089]
s401:jenkins服务器侧确定在所述第一测试场景下与第一待测存储器件的第一测试相关的第一监控数据。所说的第一监控数据即为前述的一个或多个第一数据的具体实施例。
[0090]
s402:jenkins服务器发送测试命令,以启动所述第一测试;在所述第一测试过程中,监测所述第一待测存储器件的所述第一监控数据。按照前述描述的方式。
[0091]
s403:jenkins服务器基于所述第一监控数据确定对所述第一待测存储器件进行所述第一测试过程中出现的第一测试异常。具体的,将所述第一监控数据与标准数据库比对,基于比对结果确定出现的第一测试异常。
[0092]
s404:jenkins服务器基于所述第一测试异常在所述异常恢复表中进行查找,确定对所述第一测试异常的一个或多个第一异常处理操作。
[0093]
s405:jenkins服务器基于所述一个或多个第一异常处理操作对所述第一测试异常进行处理。
[0094]
需要说明的是,此处描述的测试异常处理方法是运行在jenkins服务器侧的一种具体实现方式,这里出现的步骤在前述已经描述一些实现方式,在此也同样适用,在此不再赘述。
[0095]
在图5中,所述测试异常处理方法具体包括:
[0096]
s501:测试节点的测试主机确定在第二测试场景下与第二待测存储器件的第二测试相关的第二监控数据。所说的第二监控数据即为前述的一个或多个第一数据的具体实施例。
[0097]
s402:测试主机接收测试命令,以启动所述第二测试;在所述第二测试过程中,监测所述第二待测存储器件的所述第二监控数据。按照前述描述的方式。
[0098]
s403:测试主机基于所述第二监控数据确定对所述第二待测存储器件进行所述第二测试过程中出现的第二测试异常。具体的,将所述第二监控数据与标准数据库比对,基于比对结果确定出现的第二测试异常。
[0099]
s404:测试主机基于所述第二测试异常在所述异常恢复表中进行查找,确定对所述第二测试异常的一个或多个第二异常处理操作。
[0100]
s405:测试主机基于所述一个或多个第二异常处理操作对所述第二测试异常进行处理。
[0101]
需要说明的是,此处描述的测试异常处理方法是运行在测试节点侧的一种具体实现方式,这里出现的步骤在前述已经描述一些实现方式,在此也同样适用,在此不再赘述。
这里出现的第二测试场景、第二待测存储器件、第二测试、第二监控数据、第二测试异常和第二异常仅是为方便描述本发明实施例提供的测试异常处理方法应用在测试节点侧时的一些处理步骤,与前述第一测试场景、第一待测存储器件、第一测试、第一监控数据、第一测试异常和第一异常含义类似,不用限制本发明。
[0102]
本发明实施例提供的测试异常处理方法,通过在相应的测试场景中确定一组与某一测试相关的监控数据;然后,在对待测存储器件进行该测试的过程中,监测这组监控数据,并基于这组监控数据确定出现的异常,生成异常事件;然后再基于确定的异常事件在维持的异常恢复表中查找相应的一个或多个异常处理操作,基于这些异常处理操作予以自动处理确定的异常。这样做的优点在于:根据各种有效监控数据的诊断,显著提高了测试节点上异常恢复的成功率,在测试过程中自适应的异常处理操作,降低了人工处理测试平台异常的复杂度和难度,并且自行恢复增加自动测试系统有效的测试时间,提高了自动化测试系统的效率。此外,恢复策略使用了扩展性的结构,具有较好的扩展性。
[0103]
基于相同的发明构思,如图6所示,本发明实施例还提供一种存储器件测试异常处理装置,所述异常处理装置60包括第一确定单元601、监测单元602、第二确定单元603、查找单元604和处理单元605,其中;
[0104]
所述第一确定单元601,用于确定第一测试场景中与待测存储器件测试相关的一个或多个第一数据;
[0105]
所述监测单元602,用于监测所述一个或多个第一数据;
[0106]
所述第二确定单元603,用于基于所述一个或多个第一数据确定对所述待测存储器进行测试过程中出现的测试异常;
[0107]
所述查找单元604,用于基于所述测试异常在异常恢复表中进行查找,确定对所述测试异常的一个或多个异常处理操作;
[0108]
所述处理单元605,用于基于所述一个或多个异常处理操作对所述测试异常进行处理。
[0109]
在一些实施例中,所述异常处理装置60可以包含在基于jenkins搭建的自动化测试系统,所述测试系统包括jenkins服务器和一个或多个测试节点;其中,所述测试节点包括待测存储器件和耦合在所述待测存储器件的测试主机。
[0110]
在一些实施例中,所述异常处理装置可以设置在所述jenkins服务器侧或所述测试节点侧。
[0111]
在一些实施例中,所述监测单元602,具体用于:按照相同和/或不同设定频率在本地监听和/或远程调用所述一个或多个第一数据。
[0112]
在一些实施例中,所述第二确定单元603,具体用于:基于所述一个或多个所述第一数据与标准数据库进行比对;基于比对结果确定对所述待测存储器进行测试过程中出现的测试异常;其中,所述标准数据库包括与所述一个或多个所述第一数据中的每一个所述第一数据对应的标准数据;所述标准数据用于反映在对所述待测存储器进行相同测试过程中未出现异常情况下与所述测试相关的数据。
[0113]
在一些实施例中,所述查找单元604,具体用于:生成用于表明所述测试异常的一个或多个测试异常事件;基于所述一个或多个测试异常事件在所述异常恢复表中进行查找,确定对所述测试异常执行的一或多个处理操作;其中,所述异常恢复表包含异常事件与
异常处理操作之间的映射关系。
[0114]
在一些实施例中,所述处理单元605,具体用于:执行所述一个或多个异常处理操作,以对所述测试异常进行处理。
[0115]
需要说明的是,本发明实施例提供的测试异常处理装置与前述的本发明实施例提供的测试异常处理方法属于同一发明构思,此处所出现的词语的含义在前述已经详细说明,在此不再赘述。
[0116]
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序处理器被处理器执行时实现上述方法实施例的步骤,而前述的存储介质包括:移动存储设备、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0117]
本发明实施例还提供一种电子设备,所述电子设备包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器用于运行所述计算机程序时,执行存储在存储器中的上述方法实施例的步骤。
[0118]
图7为本发明实施例提供的电子设备的一种硬件结构示意图,该电子设备70包括:至少一个处理器701、存储器702,可选的,电子设备70还可进一步包括至少一个通信接口703,电子设备70中的各个组件通过总线系统704耦合在一起,可理解,总线系统704用于实现这些组件之间的连接通信。总线系统704除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图7中将各种总线都标为总线系统704。
[0119]
可以理解,存储器702可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read-only memory)、可擦除可编程只读存储器(eprom,erasable programmable read-only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read-only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd-rom,compact disc read-only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random access memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,dynamic random access memory)、同步动态随机存取存储器(sdram,synchronous dynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronous dynamic random access memory)、增强型同步动态随机存取存储器(esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,sync link dynamic random access memory)、直接内存总线随机存取存储器(drram,direct rambus random access memory)。本发明实施例描述的存储器702旨在包括但不限于这些和任意其它适合类型的存储器。
[0120]
本发明实施例中的存储器702用于存储各种类型的数据以支持电子设备70的操作。这些数据的示例包括:用于在电子设备70上操作的任何计算机程序,如基于所述一个或多个第一数据确定对所述待测存储器进行测试过程中出现的测试异常的实现等,实现本发
明实施例方法的程序可以包含在存储器702中。
[0121]
上述本发明实施例揭示的方法可以应用于处理器701中,或者由处理器701实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成前述方法的步骤。
[0122]
在示例性实施例中,电子设备70可以被一个或多个应用专用集成电路(asic,application specific integrated circuit)、dsp、可编程逻辑器件(pld,programmable logic device)、复杂可编程逻辑器件(cpld,complex programmable logic device)、现场可编程门阵列(fpga,field-programmable gate array)、通用处理器、控制器、微控制器(mcu,micro controller unit)、微处理器(microprocessor)、或其他电子元件实现,用于执行上述方法。
[0123]
在本发明实施例所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。另外,在本发明实施例各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0124]
以上描述旨在是说明性的,而不是限制性的。例如,上述实例(或其一或多个方面)可以彼此组合使用。可使用其它实施例,诸如所属领域的普通技术人员在阅读以上描述时可使用的。应当理解,它将不用于解释或限制权利要求的范围或含义。此外,在以上详细描述中,可将各种特征组合在一起以简化本发明实施例。这不应当被解释为意味着未经要求保护的公开特征对于任何权利要求是必不可少的。相反,公开主题可在于少于特定公开实施例的所有特征。因此,随附权利要求由此被并入详细说明中,其中每一权利要求独立地作为单独的实施例,并且预期这些实施例可以以各种组合或置换而彼此组合。本发明实施例的范围应当参考随附权利要求以及这些权利要求所赋予的等同物的全部范围来确定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献