CN110347606B - 一种自动化测试方法、装置、设备及存储介质 - Google Patents

一种自动化测试方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN110347606B
CN110347606B CN201910638515.7A CN201910638515A CN110347606B CN 110347606 B CN110347606 B CN 110347606B CN 201910638515 A CN201910638515 A CN 201910638515A CN 110347606 B CN110347606 B CN 110347606B
Authority
CN
China
Prior art keywords
main process
event
message
events
host
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910638515.7A
Other languages
English (en)
Other versions
CN110347606A (zh
Inventor
王晓静
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Baidu China Co Ltd
Original Assignee
Baidu China Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Baidu China Co Ltd filed Critical Baidu China Co Ltd
Priority to CN201910638515.7A priority Critical patent/CN110347606B/zh
Publication of CN110347606A publication Critical patent/CN110347606A/zh
Application granted granted Critical
Publication of CN110347606B publication Critical patent/CN110347606B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Multimedia (AREA)
  • Debugging And Monitoring (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

本发明实施例提出一种自动化测试方法、装置、设备及存储介质。其中方法包括:向主进程分发主进程事件列表中的事件;在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。本发明实施例能够提供对多进程应用的自动化测试。

Description

一种自动化测试方法、装置、设备及存储介质
技术领域
本发明涉及软件测试技术领域,尤其涉及一种自动化测试方法、装置、设备及存储介质。
背景技术
自动化测试一般分为录制和回放两个阶段,录制和回放的基本单位是事件。目前已存在的自动化测试方案,大多是通过在回放阶段向主进程窗口分发事件来完成的。这种方式适配单进程的简单应用(App,Application)。
目前出现了很多多进程应用,多进程应用将多个垂类业务模块独立插件化,以单独进程的形式运行。一个多进程应用有一个主进程以及至少一个非主进程,一般情况下,刚开启多进程应用时所在的进程是主进程。
目前的自动化测试方法无法适用于多进程应用。
发明内容
本发明实施例提供一种自动化测试方法及装置,以至少解决现有技术中的以上技术问题。
第一方面,本发明实施例提供了一种自动化测试方法,包括:
向主进程分发主进程事件列表中的事件;
在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;
向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。
在一种实施方式中,还包括:
在所述位于起始位置的数据片段中的事件被分发完毕的情况下,广播第二消息;所述第二消息用于激活主进程;
继续向被激活的所述主进程分发所述主进程事件列表中的事件。
在一种实施方式中,所述向主进程分发主进程事件列表中的事件之前,还包括:
读取预先记录的事件流文件,所述事件流文件中包含多进程应用的多个事件以及各个事件所属的进程名称;
将所述事件流文件中属于主进程的事件按照时间顺序存放入主进程事件列表,在出现事件从主进程切换到非主进程的情况时,在所述主进程事件列表中添加所述进程切换标记;
并将所述事件流文件中属于非主进程的事件按照时间顺序存放入非主进程事件列表;其中,所述非主进程事件列表中的事件按照数据片段存储。
在一种实施方式中,还包括:
为所述主进程注册所述第二消息,使所述主进程能够接收到所述第二消息;
并为所述非主进程注册所述第一消息,使所述非主进程能够接收到所述第一消息。
第二方面,本发明实施例提供了一种自动化测试装置,包括:
第一分发模块,用于向主进程分发主进程事件列表中的事件;
第一广播模块,用于在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;
第二分发模块,用于向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。
在一种实施方式中,还包括:
第二广播模块,用于所述位于起始位置的数据片段中的事件被分发完毕的情况下,广播第二消息;所述第二消息用于激活主进程;
所述第一分发模块,还用于在所述主进程重新被激活后,继续向所述主进程分发所述主进程事件列表中的事件。
在一种实施方式中,还包括:
读取模块,用于读取预先记录的事件流文件,所述事件流文件中包含多进程应用的多个事件以及各个事件所属的进程名称;
写入模块,用于将所述事件流文件中属于主进程的事件按照时间顺序存放入主进程事件列表,在出现事件从主进程切换到非主进程的情况时,在所述主进程事件列表中添加所述进程切换标记;并将所述事件流文件中属于非主进程的事件按照时间顺序存放入非主进程事件列表;其中,所述非主进程事件列表中的事件按照数据片段存储。
在一种实施方式中,还包括:
注册模块,用于为所述主进程注册所述第二消息,使所述主进程能够接收到所述第二消息;并为所述非主进程注册所述第一消息,使所述非主进程能够接收到所述第一消息。
第三方面,本发明实施例提供了一种自动化测试设备,所述自动化测试设备的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,所述自动化测试设备的结构中包括处理器和存储器,所述存储器用于存储支持所述自动化测试设备执行上述自动化测试方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所述设备还可以包括通信接口,用于与其他设备或通信网络通信。
第四方面,本发明实施例提供了一种计算机可读存储介质,用于存储自动化测试设备所用的计算机软件指令,其包括用于执行上述自动化测试方法所涉及的程序。
上述技术方案中的一个技术方案具有如下优点或有益效果:
本发明实施例提出的自动化测试方法和装置,向主进程分发主进程事件列表中的事件;当出现进程切换的情况时,通过广播第一消息激活对应的非主进程,再向该非主进程分发其对应的事件,从而实现对多进程应用的自动化测试。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本发明进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本发明公开的一些实施方式,而不应将其视为是对本发明范围的限制。
图1为本发明实施例的一种自动化测试方法实现流程图一;
图2为本发明实施例的一种自动化测试方法实现流程图二;
图3为本发明实施例的一种自动化测试方法中,记录事件流文件的示意图;
图4为本发明实施例的一种自动化测试方法中,回放虚拟事件的示意图;
图5为本发明实施例的一种自动化测试装置结构示意图一;
图6为本发明实施例的一种自动化测试装置结构示意图二;
图7为本发明实施例的一种自动化测试设备结构示意图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
本发明实施例主要提供了自动化测试方法和装置,下面分别通过以下实施例进行技术方案的展开描述。
如图1为本发明实施例的一种自动化测试方法实现流程图一,包括:
S11:向主进程分发主进程事件列表中的事件;
S12:在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;
S13:向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。
在一种可能的实施方式中,上述向主进程分发事件、以及向非主进程分发事件的方式可以为依次分发。
上述过程可以应用于自动化测试的回放阶段。在回放阶段,向各个进程分发的事件并不是真实发生的事件(如操控触摸屏、按动按键等),而是在之前的录制阶段记录的事件。因此,在回放阶段分发的事件可以称为虚拟事件。通过向对应的进程分发虚拟事件,实现事件回放。
图2为本发明实施例的一种自动化测试方法实现流程图二。如图2所示,上述步骤S13之后,可以进一步包括:
S24:在所述位于起始位置的数据片段中的事件被分发完毕的情况下,广播第二消息;所述第二消息用于激活主进程;
S25:继续向被激活的所述主进程分发所述主进程事件列表中的事件。
以上步骤实现了从主进程切换到非主进程、再从非主进程切换回主进程的回放过程。如果再次出现切换,则返回执行上述步骤S12。直至主进程事件列表中的事件被分发完毕为止。
在一种可能的实施方式中,主进程事件列表和非主进程事件列表采用队列的形式存储事件。主进程事件列表和非主进程事件列表中的事件采用“先进先出”的方式分发,即,先进入列表的事件被先分发出去。列表中的一个事件被分发出去之后,该事件即从列表中被删除。
在上述步骤S11之前,可以进一步包括回放的预处理过程。如图2所示,包括:
S201:读取预先记录的事件流文件,所述事件流文件中包含多进程应用的多个事件以及各个事件所属的进程名称;
S202:将所述事件流文件中属于主进程的事件按照时间顺序存放入主进程事件列表,在出现事件从主进程切换到非主进程的情况时,在所述主进程事件列表中添加进程切换标记;并将所述事件流文件中属于非主进程的事件按照时间顺序存放入非主进程事件列表;其中,所述非主进程事件列表中的事件按照数据片段存储。
其中,一个数据片段包括至少一个连续的属于同一个非主进程的事件。一个非主进程可能对应多个数据片段。例如,多进程应用启动之后,在进程间切换的顺序为:主进程——>非主进程sub1——>主进程——>非主进程sub1——>主进程——>非主进程sub2——>......。那么,非主进程事件列表包括:非主进程sub1的数据片段1、非主进程sub1的数据片段2、非主进程sub2的数据片段1......。
此外,在回放的预处理过程中,还可以对主进程和非主进程进行广播注册。如图2所示,可以包括:
S203:为所述主进程注册所述第二消息,使所述主进程能够接收到所述第二消息;并为所述非主进程注册所述第一消息,使所述非主进程能够接收到所述第一消息。
在一种可能的实施方式中,上述第一消息为『主进程暂停,回放移交非主进程事件』消息,上述第二消息为『非主进程事件片段回放结束事件』消息。通过上述广播注册,使得主进程能够接收到以广播形式发送的第二消息,非主进程能够接收到以广播形式发送的第一消息。其中,第一消息用于激活窗口处于活动状态的非主进程,第二消息用户激活主进程。
上述步骤S201中预先录制的事件流文件可以在测试的录制阶段记录。图3为本发明实施例的一种自动化测试方法中,记录事件流文件的示意图。如图3所示,多进程应用启动后,首先进入主进程(进程名:main),之后在进程间切换的过程为:主进程main——>非主进程sub1——>主进程main——>非主进程sub2——>......——>主进程main。最后返回主进程后,多进程应用的处理过程结束。整个过程按照时间顺序依次包括事件1、事件2、事件3、事件4、......、事件N。在录制阶段,将各个事件及所属进程的名称批量写入事件流文件中。
在一种可能的实施方式中,在回放开始之前,首先读取上述事件流文件,从事件流文件中解析出事件流。之后,将事件流根据所属进程区分成不同的事件列表,并按照发生的时间顺序排序。排序过程中,发现事件从主进程切换到非主进程时,在主进程事件列表中添加进程切换标记。本发明实施例可以将主进程事件列表保存在内存中,将非主进程事件列表持久化到临时文件。其中,非主进程事件列表中的事件可以按照数据片段存储。本发明实施例可以应用于安卓(Android)系统内的多进程应用。
图4为本发明实施例的一种自动化测试方法中,回放虚拟事件的示意图。
如图4所示,在回放过程中,首先回放主进程事件流,向主进程分发主进程的事件。当主进程事件流中出现进程切换标记时,暂停主进程事件流的回放,以广播的方式发送『主进程暂停,回放移交非主进程事件』消息。
各个非主进程均能够接收到『主进程暂停,回放移交非主进程事件』消息。收到消息之后,各个非主进程分别判断各自的窗口是否在活动状态,如果在活动状态,则该非主进程被激活。理论上仅有一个窗口处于活动状态。如图4所示,非主进程1的窗口处于活动状态,故非主进程1响应该消息,非主进程1开始回放。回放时,将非主进程事件列表中当前位于起始位置的数据片段1(对应非主进程1)中的事件解析到事件流,向非主进程1开始事件分发。当数据片段1中的事件被分发结束后,以广播的方式发送『非主进程事件片段回放结束事件』消息。在图4中,非主进程2的窗口没有处于活动状态,故非主进程2不响应该消息。
主进程接收到『非主进程事件片段回放结束事件』消息,主进程被激活。继续主进程事件流的回放,继续向主进程分发主进程的事件。当主进程事件流中再次出现进程切换标记时,暂停主进程事件流的回放,以广播的方式发送『主进程暂停,回放移交非主进程事件』消息。
如图4所示,此时非主进程2的窗口处于活动状态,故非主进程2响应该消息,非主进程2开始回放。回放时,将非主进程事件列表中当前位于起始位置的数据片段2(对应非主进程2)中的事件解析到事件流,向非主进程2开始事件分发。当数据片段2中的事件被分发结束后,以广播的方式发送『非主进程事件片段回放结束事件』消息。在图4中,非主进程1的窗口没有处于活动状态,故非主进程1不响应该消息。
主进程接收到『非主进程事件片段回放结束事件』消息,主进程被激活。继续主进程事件流的回放。按照上述过程进行回放,直至该多进程应用最终返回主进程,并结束该多进程应用的运行过程。
由以上过程可见,本发明实施例提出的自动化测试方法,向主进程分发主进程事件列表中的事件;当出现进程切换的情况时,通过广播第一消息激活对应的非主进程,再向该非主进程分发其对应的事件;当该非主进程重新切换回主进程时,通过广播第二消息激活主进程,并继续向主进程分发主进程事件列表中的事件。按照前述方式执行,直至将主进程事件列表中的事件分发完毕,完成对多进程应用的自动化测试。
本发明实施例还提出一种自动化测试装置。参见图5,图5为本发明实施例的一种自动化测试装置结构示意图一,包括:
第一分发模块510,用于向主进程分发主进程事件列表中的事件;
第一广播模块520,用于在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;
第二分发模块530,用于向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。
图6为本发明实施例的一种自动化测试装置结构示意图二。如图6所示,在一种可能的实施方式中,本发明实施例提出的自动化测试装置可以包括:
第一分发模块510、第一广播模块520、第二分发模块530及第二广播模块640。其中,第一分发模块510、第一广播模块520及第二分发模块530与上述实施例中的对应模块相同,不再赘述。
第二广播模块640,用于所述位于起始位置的数据片段中的事件被分发完毕的情况下,广播第二消息;所述第二消息用于激活主进程;
在一种可能的实施方式中,第一分发模块510,还用于在所述主进程重新被激活后,继续向所述主进程分发所述主进程事件列表中的事件。
如图6所示,上述装置还可以包括:
读取模块650,用于读取预先记录的事件流文件,所述事件流文件中包含多进程应用的多个事件以及各个事件所属的进程名称;
写入模块660,用于将所述事件流文件中属于主进程的事件按照时间顺序存放入主进程事件列表,在出现事件从主进程切换到非主进程的情况时,在所述主进程事件列表中添加所述进程切换标记;并将所述事件流文件中属于非主进程的事件按照时间顺序存放入非主进程事件列表;其中,所述非主进程事件列表中的事件按照数据片段存储。
在一种可能的实施方式中,上述装置还可以包括:
注册模块670,用于为所述主进程注册所述第二消息,使所述主进程能够接收到所述第二消息;并为所述非主进程注册所述第一消息,使所述非主进程能够接收到所述第一消息。
本发明实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
本发明实施例还提出一种自动化测试设备,如图7为本发明实施例的自动化测试设备结构示意图,包括:
存储器11和处理器12,存储器11存储有可在处理器12上运行的计算机程序。所述处理器12执行所述计算机程序时实现上述实施例中的自动化测试方法。所述存储器11和处理器12的数量可以为一个或多个。
所述设备还可以包括:
通信接口13,用于与外界设备进行通信,进行数据交换传输。
存储器11可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
如果存储器11、处理器12和通信接口13独立实现,则存储器11、处理器12和通信接口13可以通过总线相互连接并完成相互之间的通信。所述总线可以是工业标准体系结构(ISA,Industry Standard Architecture)总线,外部设备互连(PCI,PeripheralComponent Interconnect)总线或扩展工业标准体系结构(EISA,Extended IndustryStandard Architecture)等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器11、处理器12和通信接口13集成在一块芯片上,则存储器11、处理器12和通信接口13可以通过内部接口完成相互间的通信。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种自动化测试方法,其特征在于,包括:
向主进程分发主进程事件列表中的事件;
在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;
向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。
2.根据权利要求1所述的方法,其特征在于,还包括:
在所述位于起始位置的数据片段中的事件被分发完毕的情况下,广播第二消息;所述第二消息用于激活主进程;
继续向被激活的所述主进程分发所述主进程事件列表中的事件。
3.根据权利要求1或2所述的方法,其特征在于,所述向主进程分发主进程事件列表中的事件之前,还包括:
读取预先记录的事件流文件,所述事件流文件中包含多进程应用的多个事件以及各个事件所属的进程名称;
将所述事件流文件中属于主进程的事件按照时间顺序存放入主进程事件列表,在出现事件从主进程切换到非主进程的情况时,在所述主进程事件列表中添加所述进程切换标记;
并将所述事件流文件中属于非主进程的事件按照时间顺序存放入非主进程事件列表;其中,所述非主进程事件列表中的事件按照数据片段存储。
4.根据权利要求2所述的方法,其特征在于,还包括:
为所述主进程注册所述第二消息,使所述主进程能够接收到所述第二消息;
并为所述非主进程注册所述第一消息,使所述非主进程能够接收到所述第一消息。
5.一种自动化测试装置,其特征在于,包括:
第一分发模块,用于向主进程分发主进程事件列表中的事件;
第一广播模块,用于在主进程事件列表中出现进程切换标记的情况下,广播第一消息;所述第一消息用于激活窗口处于活动状态的非主进程;
第二分发模块,用于向被激活的所述非主进程分发非主进程事件列表中位于起始位置的数据片段中的事件。
6.根据权利要求5所述的装置,其特征在于,还包括:
第二广播模块,用于所述位于起始位置的数据片段中的事件被分发完毕的情况下,广播第二消息;所述第二消息用于激活主进程;
所述第一分发模块,还用于在所述主进程重新被激活后,继续向所述主进程分发所述主进程事件列表中的事件。
7.根据权利要求5或6所述的装置,其特征在于,还包括:
读取模块,用于读取预先记录的事件流文件,所述事件流文件中包含多进程应用的多个事件以及各个事件所属的进程名称;
写入模块,用于将所述事件流文件中属于主进程的事件按照时间顺序存放入主进程事件列表,在出现事件从主进程切换到非主进程的情况时,在所述主进程事件列表中添加所述进程切换标记;并将所述事件流文件中属于非主进程的事件按照时间顺序存放入非主进程事件列表;其中,所述非主进程事件列表中的事件按照数据片段存储。
8.根据权利要求6所述的装置,其特征在于,还包括:
注册模块,用于为所述主进程注册所述第二消息,使所述主进程能够接收到所述第二消息;并为所述非主进程注册所述第一消息,使所述非主进程能够接收到所述第一消息。
9.一种自动化测试设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-4中任一所述的方法。
10.一种计算机可读存储介质,其存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一所述的方法。
CN201910638515.7A 2019-07-15 2019-07-15 一种自动化测试方法、装置、设备及存储介质 Active CN110347606B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910638515.7A CN110347606B (zh) 2019-07-15 2019-07-15 一种自动化测试方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910638515.7A CN110347606B (zh) 2019-07-15 2019-07-15 一种自动化测试方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN110347606A CN110347606A (zh) 2019-10-18
CN110347606B true CN110347606B (zh) 2022-11-08

Family

ID=68176370

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910638515.7A Active CN110347606B (zh) 2019-07-15 2019-07-15 一种自动化测试方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN110347606B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102999419A (zh) * 2011-09-13 2013-03-27 百度在线网络技术(北京)有限公司 一种Android测试事件记录回放方法及装置
CN104750607A (zh) * 2011-06-17 2015-07-01 阿里巴巴集团控股有限公司 一种选择性恢复测试执行的方法及装置
CN105512044A (zh) * 2015-12-25 2016-04-20 北京奇虎科技有限公司 用于关键字驱动测试的对象库的更新方法及系统
CN108829606A (zh) * 2018-06-29 2018-11-16 北京金山安全软件有限公司 一种输入法性能测试方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103257893B (zh) * 2013-05-28 2016-06-15 腾讯科技(深圳)有限公司 一种获取输入事件状态的方法、装置和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104750607A (zh) * 2011-06-17 2015-07-01 阿里巴巴集团控股有限公司 一种选择性恢复测试执行的方法及装置
CN102999419A (zh) * 2011-09-13 2013-03-27 百度在线网络技术(北京)有限公司 一种Android测试事件记录回放方法及装置
CN105512044A (zh) * 2015-12-25 2016-04-20 北京奇虎科技有限公司 用于关键字驱动测试的对象库的更新方法及系统
CN108829606A (zh) * 2018-06-29 2018-11-16 北京金山安全软件有限公司 一种输入法性能测试方法及装置

Also Published As

Publication number Publication date
CN110347606A (zh) 2019-10-18

Similar Documents

Publication Publication Date Title
US7870296B2 (en) High availability system and execution state control method
JP6508382B1 (ja) 情報処理装置、情報処理方法、プログラム
CN112286723A (zh) 机房容灾控制方法、终端及存储介质
CN110347606B (zh) 一种自动化测试方法、装置、设备及存储介质
CN111143092B (zh) 故障录波数据处理方法、系统及终端设备
CN106708569B (zh) 一种跨线列车中vobc配置文件的热加载方法及装置
CN112363980A (zh) 一种分布式系统的数据处理方法及装置
CN110471744B (zh) 密码修改方法、装置、设备和计算机可读存储介质
CN112035239A (zh) 任务调度方法、装置、终端设备及存储介质
CN112133357A (zh) 一种eMMC的测试方法及装置
CN117130697A (zh) 在任务栏固定应用的方法和装置
US7287104B2 (en) Interface circuit for card-type memory, ASIC including interface circuit, and image forming apparatus including ASIC
JP2003186697A (ja) 周辺デバイス試験システム及び方法
CN108733529B (zh) Axi交叉开关的间插功能的验证方法与装置
US8392759B2 (en) Test method, test program, test apparatus, and test system
CN114258525A (zh) 数据更新方法、装置、终端设备及计算机可读存储介质
CN116501450B (zh) 翻译控制方法、二进制翻译方法、指令执行方法及装置
CN110099275B (zh) 一种应用的测试方法、装置、设备和存储介质
CN108363618A (zh) 一种进程处理的方法和装置
CN116913361B (zh) 硬盘自动测试方法、系统及介质
CN110955549B (zh) 故障内存判定方法、装置及电子设备
CN112445390B (zh) 子菜单选择方法、装置及终端设备
CN112015443A (zh) 电子设备的升级方法、装置、电子设备和存储介质
CN115988060A (zh) 数据处理方法、服务器及存储介质
CN116932144A (zh) 一种车机虚拟机控制方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant