一种自动化测试方法、装置、设备及存储介质制造方法及图纸

技术编号:22329979 阅读:20 留言:0更新日期:2019-10-19 12:15
本发明专利技术实施例提出一种自动化测试方法、装置、设备及存储介质。其中方法包括:向主进程分发主进程事件列表中的事件;在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。本发明专利技术实施例能够提供对多进程应用的自动化测试。

An automatic test method, device, equipment and storage medium

【技术实现步骤摘要】
一种自动化测试方法、装置、设备及存储介质
本专利技术涉及软件测试
,尤其涉及一种自动化测试方法、装置、设备及存储介质。
技术介绍
自动化测试一般分为录制和回放两个阶段,录制和回放的基本单位是事件。目前已存在的自动化测试方案,大多是通过在回放阶段向主进程窗口分发事件来完成的。这种方式适配单进程的简单应用(App,Application)。目前出现了很多多进程应用,多进程应用将多个垂类业务模块独立插件化,以单独进程的形式运行。一个多进程应用有一个主进程以及至少一个非主进程,一般情况下,刚开启多进程应用时所在的进程是主进程。目前的自动化测试方法无法适用于多进程应用。
技术实现思路
本专利技术实施例提供一种自动化测试方法及装置,以至少解决现有技术中的以上技术问题。第一方面,本专利技术实施例提供了一种自动化测试方法,包括:向主进程分发主进程事件列表中的事件;在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。在一种实施方式中,还包括:在所述位于起始位置的数据片段中的事件被分发完毕的情况下,广播第二消息;所述第二消息用于激活主进程;继续向被激活的所述主进程分发所述主进程事件列表中的事件。在一种实施方式中,所述向主进程分发主进程事件列表中的事件之前,还包括:读取预先记录的事件流文件,所述事件流文件中包含多进程应用的多个事件以及各个事件所属的进程名称;将所述事件流文件中属于主进程的事件按照时间顺序存放入主进程事件列表,在出现事件从主进程切换到非主进程的情况时,在所述主进程事件列表中添加所述进程切换标记;并将所述事件流文件中属于非主进程的事件按照时间顺序存放入非主进程事件列表;其中,所述非主进程事件列表中的事件按照数据片段存储。在一种实施方式中,还包括:为所述主进程注册所述第二消息,使所述主进程能够接收到所述第二消息;并为所述非主进程注册所述第一消息,使所述非主进程能够接收到所述第一消息。第二方面,本专利技术实施例提供了一种自动化测试装置,包括:第一分发模块,用于向主进程分发主进程事件列表中的事件;第一广播模块,用于在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;第二分发模块,用于向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。在一种实施方式中,还包括:第二广播模块,用于所述位于起始位置的数据片段中的事件被分发完毕的情况下,广播第二消息;所述第二消息用于激活主进程;所述第一分发模块,还用于在所述主进程重新被激活后,继续向所述主进程分发所述主进程事件列表中的事件。在一种实施方式中,还包括:读取模块,用于读取预先记录的事件流文件,所述事件流文件中包含多进程应用的多个事件以及各个事件所属的进程名称;写入模块,用于将所述事件流文件中属于主进程的事件按照时间顺序存放入主进程事件列表,在出现事件从主进程切换到非主进程的情况时,在所述主进程事件列表中添加所述进程切换标记;并将所述事件流文件中属于非主进程的事件按照时间顺序存放入非主进程事件列表;其中,所述非主进程事件列表中的事件按照数据片段存储。在一种实施方式中,还包括:注册模块,用于为所述主进程注册所述第二消息,使所述主进程能够接收到所述第二消息;并为所述非主进程注册所述第一消息,使所述非主进程能够接收到所述第一消息。第三方面,本专利技术实施例提供了一种自动化测试设备,所述自动化测试设备的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述自动化测试设备的结构中包括处理器和存储器,所述存储器用于存储支持所述自动化测试设备执行上述自动化测试方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所述设备还可以包括通信接口,用于与其他设备或通信网络通信。第四方面,本专利技术实施例提供了一种计算机可读存储介质,用于存储自动化测试设备所用的计算机软件指令,其包括用于执行上述自动化测试方法所涉及的程序。上述技术方案中的一个技术方案具有如下优点或有益效果:本专利技术实施例提出的自动化测试方法和装置,向主进程分发主进程事件列表中的事件;当出现进程切换的情况时,通过广播第一消息激活对应的非主进程,再向该非主进程分发其对应的事件,从而实现对多进程应用的自动化测试。上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本专利技术进一步的方面、实施方式和特征将会是容易明白的。附图说明在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本专利技术公开的一些实施方式,而不应将其视为是对本专利技术范围的限制。图1为本专利技术实施例的一种自动化测试方法实现流程图一;图2为本专利技术实施例的一种自动化测试方法实现流程图二;图3为本专利技术实施例的一种自动化测试方法中,记录事件流文件的示意图;图4为本专利技术实施例的一种自动化测试方法中,回放虚拟事件的示意图;图5为本专利技术实施例的一种自动化测试装置结构示意图一;图6为本专利技术实施例的一种自动化测试装置结构示意图二;图7为本专利技术实施例的一种自动化测试设备结构示意图。具体实施方式在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本专利技术的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。本专利技术实施例主要提供了自动化测试方法和装置,下面分别通过以下实施例进行技术方案的展开描述。如图1为本专利技术实施例的一种自动化测试方法实现流程图一,包括:S11:向主进程分发主进程事件列表中的事件;S12:在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;S13:向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。在一种可能的实施方式中,上述向主进程分发事件、以及向非主进程分发事件的方式可以为依次分发。上述过程可以应用于自动化测试的回放阶段。在回放阶段,向各个进程分发的事件并不是真实发生的事件(如操控触摸屏、按动按键等),而是在之前的录制阶段记录的事件。因此,在回放阶段分发的事件可以称为虚拟事件。通过向对应的进程分发虚拟事件,实现事件回放。图2为本专利技术实施例的一种自动化测试方法实现流程图二。如图2所示,上述步骤S13之后,可以进一步包括:S24:在所述位于起始位置的数据片段中的事件被分发完毕的情况下,广播第二消息;所述第二消息用于激活主进程;S25:继续向被激活的所述主进程分发所述主进程事件列表中的事件。以上步骤实现了从主进程切换到非主进程、再从非主进程切换回主进程的回放过程。如果再次出现切换,则返回执行上述步骤S12。直至主进程事件列表中的事件被分发完毕为止。在一种可能的实施方式中,主进程事件列表和非主进程事件列表采用队列的形式存储事件。主进程事件列表和非主进程事件列表中的事件采用“先进先出”的本文档来自技高网...

【技术保护点】
1.一种自动化测试方法,其特征在于,包括:向主进程分发主进程事件列表中的事件;在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。

【技术特征摘要】
1.一种自动化测试方法,其特征在于,包括:向主进程分发主进程事件列表中的事件;在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。2.根据权利要求1所述的方法,其特征在于,还包括:在所述位于起始位置的数据片段中的事件被分发完毕的情况下,广播第二消息;所述第二消息用于激活主进程;继续向被激活的所述主进程分发所述主进程事件列表中的事件。3.根据权利要求1或2所述的方法,其特征在于,所述向主进程分发主进程事件列表中的事件之前,还包括:读取预先记录的事件流文件,所述事件流文件中包含多进程应用的多个事件以及各个事件所属的进程名称;将所述事件流文件中属于主进程的事件按照时间顺序存放入主进程事件列表,在出现事件从主进程切换到非主进程的情况时,在所述主进程事件列表中添加所述进程切换标记;并将所述事件流文件中属于非主进程的事件按照时间顺序存放入非主进程事件列表;其中,所述非主进程事件列表中的事件按照数据片段存储。4.根据权利要求2所述的方法,其特征在于,还包括:为所述主进程注册所述第二消息,使所述主进程能够接收到所述第二消息;并为所述非主进程注册所述第一消息,使所述非主进程能够接收到所述第一消息。5.一种自动化测试装置,其特征在于,包括:第一分发模块,用于向主进程分发主进程事件列表中的事件;第一广播模块,用于在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;第...

【专利技术属性】
技术研发人员:王晓静
申请(专利权)人:百度中国有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1