测试系统、方法和装置的制造方法_2

文档序号:9750617阅读:来源:国知局
相同,则确 定被测试设备已从虚拟机中释放。
[0078] 可选地,所述测试模块,还适于:
[0079] 所述实体机遍历其上所有的设备句柄,发现设备句柄的设备实例路径等于被测试 设备的设备标识时,将被测试设备的连接状态先置为断开disable,然后置为连接enable, 实现对被测试设备的插拔操作。
[0080] 可选地,在所述多个被测试设备同所述实体机的连接器接口物理连接、且分别与 所述实体机上设置的虚拟机建立初始连接时,还包括配置模块,适于:
[0081] 根据被测试设备的类型,为各虚拟机配置能够执行的测试任务,由各虚拟机将其 自身的信息、被配置的能够执行的测试任务以及所在的实体机的信息发送至所述中央控制 器。
[0082] 本发明提供的测试系统,包括了中央控制器,至少一台实体机,以及同实体机的连 接器接口物理连接的多个被测试设备,其中,至少一台实体机中的每台实体机上设置有至 少一个能够对被测试设备进行测试的虚拟机。中央控制器接收到测试任务时,向一个或多 个虚拟机各自所在的实体机下发测试命令,即是由中央控制器进行测试任务的分发。随后, 至少一台实体机接收中央控制器下发的测试命令,启动实体机上对应的虚拟机,由启动的 各虚拟机识别被测试设备,以执行所述测试任务。由此可见,本发明采用中央控制器、至少 一台实体机以及每台实体机上设置的至少一个能够对被测试设备进行测试的虚拟机,构建 了一个分布式虚拟机系统,利用各虚拟机并发地对被测试设备进行测试,有效地提高了测 试效率。并且,本发明通过实体机与虚拟机的交互工作,虚拟机识别被测试设备,实现在虚 拟机中对被测试设备的自动化测试,而无需手动进行插拔,解放人力资源,测试效率提升幅 度大。
[0083] 进一步地,本发明可以对测试过程中遇到的两种异常(即测试时虚拟机与用于测 试的设备未连接,以及测试之后用于测试的设备未从虚拟机中释放)自动进行处理,无需 手动进行插拔实现被测试设备的修复,解放了人力资源,提高测试效率,并提高了测试的准 确性和稳定性。
[0084] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段, 而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够 更明显易懂,以下特举本发明的【具体实施方式】。
[0085] 根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明 了本发明的上述以及其他目的、优点和特征。
【附图说明】
[0086] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通 技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明 的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0087] 图1示出了根据本发明一个实施例的测试系统的结构示意图;
[0088] 图2示出了根据本发明一个实施例的应用于中央控制器110的测试方法的流程 图;
[0089] 图3示出了根据本发明一个实施例的应用于至少一台实体机120的测试方法的流 程图;
[0090] 图4示出了各虚拟机中创建连接U盘的虚拟机快照;
[0091] 图5示出了根据本发明一个实施例的在实体机Q1中的虚拟机S1上执行U盘测试 任务的方法的流程图;
[0092] 图6示出了 U盘的设备实例路径;
[0093] 图7示出了 U盘连接到VMware虚拟机后的设备名称;
[0094] 图8示出了根据本发明一个实施例的应用于中央控制器的测试装置的结构示意 图;以及
[0095] 图9示出了根据本发明一个实施例的应用于至少一台实体机的测试装置的结构 示意图。
【具体实施方式】
[0096] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开 的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例 所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围 完整的传达给本领域的技术人员。
[0097] 为解决上述技术问题,本发明实施例提供了一种测试系统,图1示出了根据本发 明一个实施例的测试系统的结构示意图。如图1所示,该系统至少包括:中央控制器110, 至少一台实体机120,以及同实体机120的连接器接口物理连接的多个被测试设备140,其 中,
[0098] 至少一台实体机120,每台实体机上设置有至少一个能够对被测试设备进行测试 的虚拟机130 ;
[0099] 中央控制器110,适于接收测试任务,向一个或多个虚拟机各自所在的实体机下发 测试命令;
[0100] 至少一台实体机120,适于接收测试命令,启动实体机上对应的虚拟机,由启动的 各虚拟机识别被测试设备,以执行所述测试任务。
[0101] 本发明提供的测试系统,包括了中央控制器,至少一台实体机,以及同实体机的连 接器接口物理连接的多个被测试设备,其中,至少一台实体机中的每台实体机上设置有至 少一个能够对被测试设备进行测试的虚拟机。中央控制器接收到测试任务时,向一个或多 个虚拟机各自所在的实体机下发测试命令,即是由中央控制器进行测试任务的分发。随后, 至少一台实体机接收中央控制器下发的测试命令,启动实体机上对应的虚拟机,由启动的 各虚拟机识别被测试设备,以执行所述测试任务。由此可见,本发明采用中央控制器、至少 一台实体机以及每台实体机上设置的至少一个能够对被测试设备进行测试的虚拟机,构建 了一个分布式虚拟机系统,利用各虚拟机并发地对被测试设备进行测试,有效地提高了测 试效率。并且,本发明通过实体机与虚拟机的交互工作,虚拟机识别被测试设备,实现在虚 拟机中对被测试设备的自动化测试,而无需手动进行插拔,解放人力资源,测试效率提升幅 度大。
[0102] 需要说明的是,本发明中的被测试设备140可以是USB、VGA(Video Graphics Array,视频图形阵列)、PS/2(Personal System 2,个人系统2)等接口类型的设备。另外, 将被测试设备140同实体机120的连接器接口物理连接的,进而实体机上的操作系统通过 连接器接口识别被测试设备140。
[0103] 利用本发明实施例提供的测试系统进行测试,可以分为两个阶段,第一个阶段是 测试系统的构建,第二个阶段是利用构建好的测试系统进行测试。下面将分别对这两个阶 段进行详细说明。
[0104] 首先介绍测试系统的构建,主要包括分布式虚拟机系统的搭建,虚拟机的注册以 及创建虚拟机快照等步骤。
[0105] 先是关于分布式虚拟机系统的搭建。基于前文图1部分的介绍,本发明提供的测 试系统包括了中央控制器110,至少一台实体机120,以及同实体机120的连接器接口物理 连接的多个被测试设备140,其中,至少一台实体机120中每台实体机上设置有至少一个能 够对被测试设备进行测试的虚拟机130。
[0106] 然后是虚拟机的注册。在多个被测试设备140同实体机120的连接器接口物理连 接、且分别与至少一台实体机120上设置的虚拟机130建立初始连接,即虚拟机130识别 到物理连接的被测试设备时,至少一台实体机120将会根据被测试设备的类型,为各虚拟 机130配置能够执行的测试任务。例如,被测试设备的类型为U盘,则为与U盘建立初始连 接的虚拟机配置能够执行的测试任务为U盘测试任务。又例如,被测试设备的类型为摄像 头,则为与摄像头建立初始连接的虚拟机配置能够执行的测试任务为摄像头测试任务。进 一步地,各虚拟机130会将其自身的信息、被配置的能够执行的测试任务以及所在的实体 机的信息发送至中央控制器110,由中央控制器110对应存储,也就是说,每个虚拟机与被 测试设备建立初始连接时,会向中央控制器110注册其相关信息,包括其自身的信息、被配 置的能够执行的测试任务以及所在的实体机的信息(例如,所在的实体机的IP (Internet Protocol,网络之间互连的协议)地址)等。中央控制器110接收到虚拟机注册的相关信息 后,对应存储注册的相关信息,这样,中央控制器110就管理了各虚拟机与其对应的能够执 行的测试任务。例如当中央控制器110接收到一个测试任务A时,可以根据它管理的各虚 拟机与其对应的能够执行的测试任务,查询到能够执行测试任务A的一个或多个虚拟机, 进而向一个或多个虚拟机所在的实体机下发测试命令,从而实现了测试任务A的分发。
[0107] 接着是创建虚拟机快照。在多个被测试设备140同实体机120的连接器接口物理 连接、且分别与至少一台实体机120上设置的虚拟机130建立初始连接,即虚拟机130识别 到物理连接的被测试设备时,各虚拟机130还会创建与被测试设备建立初始连接的虚拟机 快照,并保存。实体机启动对应的虚拟机之后,回滚到虚拟机快照;虚拟机遍历其上所有设 备的设备标识,通将对被测试设备的识别结果同所述虚拟机快照比对,判断虚拟机是否识 别被测试设备。这样,保证了实体机启动虚拟机时,回滚到虚拟机快照,实现虚拟机自动识 别被测试设备,无需通过手动操作将虚拟机与被测试设备连接,提高测试效率。
[0108] 此外,在多个被测试设备与实体机连接时,实体机将会分配给每个被测试设备一 个设备标识,这样,实体机可以根据这些设备标识,对被测试设备进行管理。以及,在多个被 测试设备分别与实体机上设置的虚拟机建立初始连接,即虚拟机识别到物理连接的被测试 设备时,虚拟机也会给被测试设备分配一个设备标识,这样,虚拟机也可以根据其分配的设 备标识对被测试设备进行管理。
[0109] 所述设备标识还包括设备句柄。
[0110] 举例来说,通过遍历虚拟机上所有的设备句柄,当发现设备句柄的设备实例路径 等于被测试设备连接到虚拟机上的设备实例路径时,可以确定虚拟机识别被测试设备,反 之,当未找到设备句柄的设备实例路径等于被测试设备连接到虚拟机上的设备实例路径 时,则确定虚拟机未识别被测试设备。所述被测试设备连接到虚拟机上的设备实例路径可 以以虚拟机快照作为标准。
[0111] 以上介绍了前期的测试系统的构建过程,下面将介绍利用构建好的测试系统进行 测试。
[0112] 基于前文图1部分的介绍,中央控制器110接收测试任务,根据预先存储的测试任 务与虚拟机的对应关系,查询能够执行接收的测试任务的一个或多个虚拟机,并向一个或 多个虚拟机各自所在的实体机下发测试命令,其中,测试命令中携带有对应的实体机上能 够执行测试任务的虚拟机的信息。随后,至少一台实体机120接收中央控制器110下发的 测试命令,并根据测试命令中携带的虚拟机的信息启动实体机上对应的虚拟机,由启动的 各虚拟机识别被测试设备,以执行测试任务。在测试的过程中,本发明能够及时处理两种可 能存在的异常情况,即测试时虚拟机未识别被测试设备,以及执行测试任务之后被测试设 备未从虚拟机中释放。
[0113] 首先,关于第一种异常情况,本发明实施例提供了一种优选的处理方案,在该方案 中,在启动的各虚拟机中进行测试操作之前,启动的各虚拟机检查其是否已与被测试设备 连接,即测试各虚拟机是否识别被测试设备,若识别被测试设备,则继续在虚拟机中执行测 试任务;反之,则生成表示虚拟机未识别被测试设备的日志文件,以在实体机扫描到该日志 文件时,由实体机关闭虚拟机,先禁用再启
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1