CN109144860B - 一种对控件对象的操作方法及终端设备 - Google Patents
一种对控件对象的操作方法及终端设备 Download PDFInfo
- Publication number
- CN109144860B CN109144860B CN201810897988.4A CN201810897988A CN109144860B CN 109144860 B CN109144860 B CN 109144860B CN 201810897988 A CN201810897988 A CN 201810897988A CN 109144860 B CN109144860 B CN 109144860B
- Authority
- CN
- China
- Prior art keywords
- interface
- current interface
- control object
- stability test
- information
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3644—Software debugging by instrumenting at runtime
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/366—Software debugging using diagnostics
Abstract
本发明公开了一种对控件对象的操作方法及终端设备,该方法包括:在执行等待操作的过程中,对当前界面进行第一稳定性测试;若所述第一稳定性测试的结果指示所述当前界面处于稳定状态,则在所述当前界面上查找控件对象,并对所述控件对象执行触控操作,通过对当前界面进行第一稳定性测试,以确保在当前界面处于稳定状态时对控件对象执行触控操作,有效避免当前界面发生动态变化导致控件对象的位置可能发生变化所造成的对控件对象触控操作失败的现象发生,有效确保测试的正常进行。
Description
技术领域
本发明涉及控件对象技术领域,尤其涉及一种对控件对象的操作方法及终端设备。
背景技术
越来越多的终端设备被应用在人们的工作、生活和学习中,人们应用这些终端设备可以进行通信、观看视频、浏览网页和阅读文章等。通常这些终端设备的屏幕为触控屏,当用户需要触发控件对象的功能时,用户利用手指点击屏幕上的控件对象,以触发该控件对象的功能。
但是,随着终端设备上的各种应用程序的更新迭代频繁,每一次的更新均需要做大量的测试工作。在自动化测试过程中,在进入一个新的界面时,由于网络原因,界面在加载过程中可能存在动态变化,因此,控件对象的位置可能发生变化。从而,在对终端设备自动执行触控操作时,很有可能会点错位置,使此次触控操作失效,影响测试的正常进行。
发明内容
本发明实施例提供一种对控件对象的操作方法及终端设备,以解决现有技术易使对控件对象的触控操作失败,影响测试的正常进行的问题。
为了解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供一种对控件对象的操作方法,该方法包括:
在执行等待操作的过程中,对当前界面进行第一稳定性测试;
若所述第一稳定性测试的结果指示所述当前界面处于稳定状态,则在所述当前界面上查找控件对象,并对所述控件对象执行触控操作。
第二方面,本发明实施例提供一种对控件对象的操作方法,该方法包括:
在当前界面上查找控件对象;
基于查找到的所述控件对象,当所述当前界面的配置属性满足预定条件时,对所述当前界面进行第三稳定性测试;
若所述第三稳定性测试的结果指示所述当前界面处于稳定状态,则对所述当前界面上的控件对象执行触控操作。
第三方面,本发明实施例还提供一种终端设备,包括:
第一测试模块,用于在执行等待操作的过程中,对当前界面进行第一稳定性测试;
第一执行模块,用于若所述第一稳定性测试的结果指示所述当前界面处于稳定状态,则在所述当前界面上查找控件对象,并对所述控件对象执行触控操作。
第四方面,本发明实施例还提供一种终端设备,包括:
查找模块,用于在当前界面上查找控件对象;
第三测试模块,用于基于查找到的所述控件对象,当所述当前界面的配置属性满足预定条件时,对所述当前界面进行第三稳定性测试;
第三执行模块,用于若所述第三稳定性测试的结果指示所述当前界面处于稳定状态,则对所述当前界面上的控件对象执行触控操作。
第五方面,本发明实施例还提供一种终端设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述所述的对控件对象的操作方法的步骤。
第六方面,本发明实施例还提供一种可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述所述的对控件对象的操作方法的步骤。
在本发明实施例中,通过在执行等待操作的过程中,对当前界面进行第一稳定性测试;若第一稳定性测试的结果指示当前界面处于稳定状态,则在当前界面上查找控件对象,并对该控件对象执行触控操作。通过对当前界面进行第一稳定性测试,以确保在当前界面处于稳定状态时对控件对象执行触控操作,有效避免当前界面发生动态变化导致控件对象的位置可能发生变化所造成的对控件对象触控操作失败的现象发生,有效确保测试的正常进行。
另外,通过在执行等待操作的过程中对当前界面进行第一稳定性测试,可以充分利用等待操作过程中的空闲时间,提高了空闲时间的利用率。同时,有效节省了稳定性测试占用整个程序的时间,具有实用性。
附图说明
图1为本发明实施例提供的对控件对象的操作方法的流程图之一;
图2为本发明实施例提供的对控件对象的操作方法在实际应用场景下的示意图之一;
图3为本发明实施例提供的对控件对象的操作方法在实际应用场景下的示意图之二;
图4为本发明实施例提供的对控件对象的操作方法的流程图之二;
图5为本发明实施例提供的终端设备的结构示意图之一;
图6为本发明实施例提供的终端设备的结构示意图之二;
图7为本发明实施例提供的终端设备的结构示意图之三。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。以下结合附图,详细说明本发明各实施例提供的技术方案。
为解决现有技术易使对控件对象的触控操作失败,影响测试的正常进行的问题,本发明提供一种对控件对象的操作方法,该方法的执行主体,可以但不限于终端设备(如,手机、平板电脑等)或能够被配置为执行本发明实施例提供的该方法的装置。
为便于描述,下文以该方法的执行主体为能够执行该方法的终端设备为例,对该方法的实施方式进行介绍。可以理解,该方法的执行主体为终端设备只是一种示例性的说明,并不应理解为对该方法的限定。
图1为本发明实施例提供的对控件对象的操作方法的流程图,图1的方法可以由终端设备执行,如图1所示,该方法可以包括:
步骤101、在执行等待操作的过程中,对当前界面进行第一稳定性测试。
该等待操作的步骤可以通过用户需求设置,示例性的,用户在刷新界面的过程中需要有等待操作的步骤,或者,用户在缓存视频的过程中需要有等待操作的步骤。该等待操作的步骤用于为终端设备提供缓冲时间。
应理解为,在控件对象执行触控操作之前存在等待操作的步骤,且存在对当前界面进行稳定性测试的需求,则在执行等待操作的过程中,对当前界面进行第一稳定性测试。
应理解为,在执行步骤101之前设置全局变量,以人为设置是否对当前界面进行稳定性测试。若是对当前界面进行稳定性测试,则存在对当前界面进行稳定性测试的需求,则执行步骤101。
示例性的,将终端设备通过USB接口与PC(personal computer,个人计算机)机连接,将终端设备实时用户界面映射在PC机显示器上,保持终端设备与PC机之间进行通信和信息交互;人为设置全局变量为界面稳定后再对控件对象执行触控操作;基于设置的全局变量,生成等待操作步骤;基于设置的全局变量,生成触控控件对象的触控操作的步骤,如点击“我的消息”,该步骤中有一个是否执行界面稳定性判断属性waitStable,其根据全局变量isStable及第一稳定性测试的测试结果来设置。
步骤102、若所述第一稳定性测试的结果指示所述当前界面处于稳定状态,则在所述当前界面上查找控件对象,并对所述控件对象执行触控操作。
该在当前界面上查找控件对象具体实现可以为:基于控件对象的基本信息,如class,id,xpath,text等,在当前界面上查找控件对象。
若在当前界面上查找到控件对象,则获取该控件对象在当前界面上的特征信息,及该控件对象与该当前界面上的其他控件对象之间的关系信息。其中,
该特征信息可以包括控件对象的位置信息、坐标信息、及在当前界面上的区域信息,等等。该关系信息可以包括该控件对象与当前界面上的其他控件对象之间的位置关系信息。
该触控操作,可以包括点击操作、双击操作、拖动操作等。
示例1,沿用上述示例,该界面稳定后再对控件对象执行触控操作为true,即isStable=true;基于设置的全局变量,生成等待操作步骤,该等待操作步骤的等待时间可以为5秒;在等待操作的步骤过程中,对当前界面进行第一稳定性测试,若第一稳定性测试的结果指示当前界面处于稳定状态,此时,waitStable设置为false,即:waitStable=false,则在当前界面上查找控件对象,并对控件对象执行触控操作。
在本发明实施例中,通过在执行等待操作的过程中,对当前界面进行第一稳定性测试;若第一稳定性测试的结果指示当前界面处于稳定状态,则在当前界面上查找控件对象,并对该控件对象执行触控操作。通过对当前界面进行第一稳定性测试,以确保在当前界面处于稳定状态时对控件对象执行触控操作,有效避免当前界面发生动态变化导致控件对象的位置可能发生变化所造成的对控件对象触控操作失败的现象发生,有效确保测试的正常进行。
另外,通过在执行等待操作的过程中对当前界面进行第一稳定性测试,可以充分利用等待操作过程中的空闲时间,提高了空闲时间的利用率。同时,有效节省了稳定性测试占用整个程序的时间,具有实用性。
可选地,作为一个实施例,本发明实施例提供的对控件对象的操作方法还包括:
若所述第一稳定性测试的结果指示所述当前界面处于非稳定状态,则在所述当前界面上查找控件对象;
基于查找到的所述控件对象,对所述当前界面进行第二稳定性测试;
若所述第二稳定性测试的结果指示所述当前界面处于稳定状态,则对所述控件对象执行触控操作。
示例2,沿用上述示例,该界面稳定后再对控件对象执行触控操作为true,即isStable=true;基于设置的全局变量,生成等待操作步骤,该等待操作步骤的等待时间可以为5秒;在等待操作的步骤过程中,对当前界面进行第一稳定性测试,若第一稳定性测试的结果指示当前界面处于非稳定状态,此时,waitStable设置为true,即:waitStable=true,则在当前界面上查找控件对象,基于查找到的控件对象,对当前界面进行第二稳定性测试,若第二稳定性测试的结果指示当前界面处于稳定状态,则对控件对象执行触控操作。
在本发明实施例中若第一稳定性测试的结果指示当前界面处于非稳定状态,则在当前界面上查找控件对象;基于查找到的所述控件对象,对当前界面进行第二稳定性测试;若第二稳定性测试的结果指示当前界面处于稳定状态,则对控件对象执行触控操作,可以在第一稳定性测试的结果指示当前界面处于非稳定状态的情况下,通过在查找到控件对象,对当前界面进行第二稳定性测试,进而确保在当前界面处于稳定状态时对控件对象执行触控操作,进一步有效避免当前界面发生动态变化导致控件对象的位置可能发生变化所造成的对控件对象触控操作失败的现象发生,有效确保测试的正常进行。
可选地,作为一个实施例,基于查找到的所述控件对象,对所述当前界面进行第二稳定性测试,具体可实现为:
每隔预定时间间隔获取所述当前界面的界面信息;所述界面信息用于反映界面上控件对象的特征信息,及控件对象之间的关系信息,所述当前界面为在所述预定时间间隔后显示的界面;
判断所述当前界面的界面信息与上一次界面的界面信息是否相同;
若所述当前界面的界面信息与所述上一次界面的界面信息连续相同的次数大于或等于第一预定次数,则所述第二稳定性测试的结果指示所述当前界面处于稳定状态。
该预定时间间隔可以为5秒、10秒或20秒,本发明实施例不作具体限定,具体实施时需要根据实际需求设置。
该上一次界面的界面信息,可以指上一个当前界面的界面信息。
如,第一个预定时间间隔内获取当前界面的界面信息,第二个预定时间间隔内获取当前界面的界面信息,则第二个预定时间间隔内获取当前界面的界面信息为当前界面的界面信息,第一个预定时间间隔内获取当前界面的界面信息为上一次界面的界面信息。
同理,第二个预定时间间隔内获取当前界面的界面信息,第三个预定时间间隔内获取当前界面的界面信息,则第三个预定时间间隔内获取当前界面的界面信息为当前界面的界面信息,第二个预定时间间隔内获取当前界面的界面信息为上一次界面的界面信息。
该当前界面的界面信息与上一次界面的界面信息相同,可以指当前界面上反映的信息与上一次界面上反映的信息完全一致。
该当前界面的界面信息与上一次界面的界面信息连续相同,可以指第i-1预定时间间隔获取的当前界面的界面信息,与第i预定时间间隔获取的当前界面的界面信息相同,并且第i预定时间间隔获取的当前界面的界面信息,与第i+1预定时间间隔获取的当前界面的界面信息也相同,其中,i为大于或等于1的正整数。
该第一预定次数可以为2或5,本发明实施例不作具体限定,具体实施时需要根据实际需求设置。
示例性的,如图2所示,以第一预定次数是2为例,若当前时间与开始进行第二稳定性测试的时间之间的差值小于n秒,且当前界面的界面信息与上一次界面的界面信息连续相同的次数小于2,则获取当前界面的界面信息newWindowInfo,并将当前界面的界面信息newWindowInfo与上一次界面的界面信息oldWindowInfo进行比较,确定newWindowInfo与oldWindowInfo是否相同;若newWindowInfo与oldWindowInfo相同,则连续相同次数的值加1;若newWindowInfo与oldWindowInfo不相同,则连续相同次数的值清零。
判断当前界面的界面信息与上一次界面的界面信息连续相同的次数是否大于2;若连续相同次数大于或等于2,则第二稳定性测试的结果指示当前界面处于稳定状态;若连续相同次数小于2,则第二稳定性测试的结果指示当前界面处于非稳定状态。
可选地,作为一个实施例,步骤101具体可实现为:
在执行所述等待操作的过程中的最后n秒内,每隔m秒对所述当前界面进行一次所述第一稳定性测试,其中,n>m≥阈值。
n可以为大于或等于5的任一正数。
该阈值可以为大于或等于1的任一正数。该阈值大于或等于m,用于确保实现对当前界面进行一次第一稳定性测试的时间。
该在执行所述等待操作的过程中的最后n秒内,每隔m秒对所述当前界面进行一次所述第一稳定性测试,具体可实现为:
将所述最后n秒划分成多个时间段,每个时间段的长度为所述m秒;
在所述时间段内,获取当前界面的界面信息,所述界面信息用于反映界面上控件对象的特征信息及控件对象之间的关系信息,所述当前界面为在所述时间段内显示的界面;
判断所述当前界面的界面信息与上一次界面的界面信息是否相同;
若所述当前界面的界面信息与所述上一次界面的界面信息连续相同的次数大于或等于第二预定次数,则所述第一稳定性测试的结果指示所述当前界面处于稳定状态。
在执行步骤101之前,设置全局变量,以人为设置是否对当前界面进行稳定性测试。若是对当前界面进行稳定性测试,则存在对当前界面进行稳定性测试的需求,则执行步骤101。示例性的,如图3所示:
确定执行等待操作的最后时间是否为n秒,且没有对当前界面进行稳定性测试。若是,则设置开始对界面进行第一稳定性测试,设置开始进行界面第一稳定性测试的时间为当前时间,并将执行等待操作的时间中的最后n秒划分成多段时间段,每个时间段为m秒,此时,startCompare=true,开始对界面进行第一稳定性测试的时间startCompareTime=当前时间。
若开始进行界面第一稳定性测试,且(当前时间-startCompareTime)≥m秒,则每个时间段获取当前界面的界面信息newWindowInfo,并与上一次界面的界面信息oldWindowInfo做比较,确定newWindowInfo与oldWindowInfo是否相同;若newWindowInfo与oldWindowInfo不相同,则连续相同次数的值清零;若newWindowInfo与oldWindowInfo相同,则连续相同的次数的值加1,直至等待时间结束,若连续相同次数大于或等于2,则第一稳定性测试的结果指示当前界面处于稳定状态;若连续相同次数小于2,则第一稳定性测试的结果指示当前界面处于非稳定状态。
图4为本发明实施例提供的对控件对象的操作方法的流程图,图4的方法可以由终端设备执行,如图4所示,该方法可以包括:
步骤401、在当前界面上查找控件对象。
该查找控件对象具体可实现为:基于控件对象的基本信息,如class,id,xpath,text等,查找控件对象。
步骤402、基于查找到的所述控件对象,当所述当前界面的配置属性满足预定条件时,对所述当前界面进行第三稳定性测试。
该当前界面的配置属性满足预定条件,可以指预先为当前界面配置的可执行稳定性测试的前提条件,具体可实现为:
将终端设备通过USB接口与PC(personal computer,个人计算机)机连接,将终端设备实时用户界面映射在PC机显示器上,保持终端设备与PC机之间进行通信和信息交互;人为设置全局变量为界面稳定后再对控件对象执行触控操作;基于设置的全局变量,生成触控控件对象的触控操作的步骤,如点击“我的消息”,该步骤中有一个是否执行界面稳定性判断属性waitStable,其根据全局变量isStable来设置。
步骤403、若所述第三稳定性测试的结果指示所述当前界面处于稳定状态,则对所述当前界面上的控件对象执行触控操作。
该触控操作,可以包括点击操作、双击操作、拖动操作等。
在本发明实施例中,通过查找控件对象,基于查找到的控件对象,当当前界面的配置属性满足预定条件时,对当前界面进行第三稳定性测试,通过对当前界面进行第三稳定性测试,以确保在当前界面处于稳定状态时对控件对象执行触控操作,有效避免当前界面发生动态变化导致控件对象的位置可能发生变化所造成的对控件对象触控操作失败的现象发生,有效确保测试的正常进行。
可选地,作为一个实施例,步骤402具体可实现为:
每隔预定时间间隔获取当前界面的界面信息;所述界面信息用于反映界面上控件对象的特征信息及控件对象之间的关系信息,所述当前界面为在所述预定时间间隔内显示的界面;
判断所述当前界面的界面信息与上一次界面的界面信息是否相同;
若所述当前界面的界面信息与上一次界面的界面信息连续相同的次数大于或等于第三预定次数,则所述第三稳定性测试的结果指示所述当前界面处于稳定状态。
本发明实施例具体实现可参见上述图2对应的实施例,本发明实施例不再赘述。
示例3,沿用上述示例,该界面稳定后再对控件对象执行触控操作为true,即isStable=true;基于设置的全局变量,生成触控控件对象的触控操作的步骤,此时,waitStable设置为true,即:waitStable=true,则在当前界面上查找控件对象,基于查找到的控件对象,对当前界面进行第三稳定性测试,若第三稳定性测试的结果指示当前界面处于稳定状态,则对控件对象执行触控操作。
需要补充的是,示例4,沿用上述示例,该界面稳定后再对控件对象执行触控操作为true,即isStable=true;基于设置的全局变量,生成触控控件对象的触控操作的步骤,此时,waitStable设置为true,即:waitStable=true,则在当前界面上查找控件对象,基于查找到的控件对象,对当前界面进行第三稳定性测试,若第三稳定性测试的结果指示当前界面处于非稳定状态,则对控件对象撤销执行触控操作。
以上,结合图1至图3详细说明了本发明实施例的对控件对象的操作方法,下面,结合图5,详细说明本发明实施例的终端设备。
图5示出了本发明实施例提供的终端设备的结构示意图,如图5所示,该终端设备基于本发明一实施例提供的对控件对象的操作方法,该终端可以包括:
第一测试模块501,用于在执行等待操作的过程中,对当前界面进行第一稳定性测试;
第一执行模块502,用于若所述第一稳定性测试的结果指示所述当前界面处于稳定状态,则在所述当前界面上查找控件对象,并对所述控件对象执行触控操作。
在一种实施例中,所述终端设备还可以包括:
查找模块503,用于若所述第一稳定性测试的结果指示所述当前界面处于非稳定状态,则在所述当前界面上查找控件对象;
第二测试模块504,用于基于查找到的所述控件对象,对所述当前界面进行第二稳定性测试;
第二执行模块505,用于若所述第二稳定性测试的结果指示所述当前界面处于稳定状态,则对所述控件对象执行触控操作。
在一种实施例中,所述第一执行模块502可以包括:
第一获取单元,用于每隔预定时间间隔获取当前界面的界面信息;所述界面信息用于反映界面上控件对象的特征信息及控件对象之间的关系信息,所述当前界面为在所述预定时间间隔后显示的界面;
第一判断单元,用于判断所述当前界面的界面信息与上一次界面的界面信息是否相同;
第一指示单元,用于若所述当前界面的界面信息与所述上一次界面的界面信息连续相同的次数大于或等于第一预定次数,则所述第二稳定性测试的结果指示所述当前界面处于稳定状态。
在一种实施例中,所述第一测试模块501可以包括:
测试单元,用于在执行所述等待操作的过程中的最后n秒内,每隔m秒对所述当前界面进行一次所述第一稳定性测试,其中,n>m≥阈值。
在一种实施例中,所述测试单元可以包括:
划分子单元,用于所述最后n秒划分成多个时间段,每个时间段的长度为所述m秒;
获取单元,用于在所述时间段内,获取当前界面的界面信息,所述界面信息用于反映界面上控件对象的特征信息及控件对象之间的关系信息,所述当前界面为在所述时间段内显示的界面;
判断子单元,用于判断所述当前界面的界面信息与上一次界面的界面信息是否相同;
指示子单元,用于若所述当前界面的界面信息与所述上一次界面的界面信息连续相同的次数大于或等于第二预定次数,则所述第一稳定性测试的结果指示所述当前界面处于稳定状态。
在本发明实施例中,通过在执行等待操作的过程中,对当前界面进行第一稳定性测试;若第一稳定性测试的结果指示当前界面处于稳定状态,则在当前界面上查找控件对象,并对该控件对象执行触控操作。通过对当前界面进行第一稳定性测试,以确保在当前界面处于稳定状态时对控件对象执行触控操作,有效避免当前界面发生动态变化导致控件对象的位置可能发生变化所造成的对控件对象触控操作失败的现象发生,有效确保测试的正常进行。
另外,通过在执行等待操作的过程中对当前界面进行第一稳定性测试,可以充分利用等待操作过程中的空闲时间,提高了空闲时间的利用率。同时,有效节省了稳定性测试占用整个程序的时间,具有实用性。
该终端设备还可执行图1的方法,并实现终端设备在图1至图3所示实施例的功能,不再赘述。
以上,结合图4详细说明了本发明实施例的对控件对象的操作方法,下面,结合图6,详细说明本发明实施例的终端设备。
图6示出了本发明实施例提供的终端设备的结构示意图,如图6所示,该终端设备基于本发明一实施例提供的对控件对象的操作方法,该终端可以包括:
查找模块601,用于在当前界面上查找控件对象;
第三测试模块602,用于基于查找到的所述控件对象,当所述当前界面的配置属性满足预定条件时,对所述当前界面进行第三稳定性测试;
第三执行模块603,用于若所述第三稳定性测试的结果指示所述当前界面处于稳定状态,则对所述当前界面上的控件对象执行触控操作。
在一种实施例中,所述第三测试模块602可以包括:
第三获取单元,用于每隔预定时间间隔获取当前界面的界面信息;所述界面信息用于反映界面上控件对象的特征信息及控件对象之间的关系信息,所述当前界面为在所述预定时间间隔内显示的界面;
第三判断单元,用于判断所述当前界面的界面信息与上一次界面的界面信息是否相同;
第三指示单元,用于若所述当前界面的界面信息与所述上一次界面的界面信息连续相同的次数大于或等于第三预定次数,则所述第三稳定性测试的结果指示所述当前界面处于稳定状态。
在本发明实施例中,通过在当前界面上查找控件对象,基于查找到的控件对象,当所述当前界面的配置属性满足预定条件时,对当前界面进行第三稳定性测试,通过对当前界面进行第三稳定性测试,以确保在当前界面处于稳定状态时对控件对象执行触控操作,有效避免当前界面发生动态变化导致控件对象的位置可能发生变化所造成的对控件对象触控操作失败的现象发生,有效确保测试的正常进行。
该终端设备还可执行图4的方法,并实现终端设备在图4所示实施例的功能,不再赘述。
图7为实现本发明各个实施例的一种终端设备的硬件结构示意图,
该终端设备700包括但不限于:射频单元701、网络模块702、音频输出单元703、输入单元704、传感器705、显示单元706、用户输入单元707、接口单元708、存储器709、处理器710、以及电源711等部件。本领域技术人员可以理解,图3中示出的终端设备结构并不构成对终端设备的限定,终端设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,终端设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
其中,处理器710,用于在执行等待操作的过程中,对当前界面进行第一稳定性测试;
若所述第一稳定性测试的结果指示所述当前界面处于稳定状态,则在所述当前界面上查找控件对象,并对所述控件对象执行触控操作。
在本发明实施例中,通过在执行等待操作的过程中,对当前界面进行第一稳定性测试;若第一稳定性测试的结果指示当前界面处于稳定状态,则在当前界面上查找控件对象,并对该控件对象执行触控操作。通过对当前界面进行第一稳定性测试,以确保在当前界面处于稳定状态时对控件对象执行触控操作,有效避免当前界面发生动态变化导致控件对象的位置可能发生变化所造成的对控件对象触控操作失败的现象发生,有效确保测试的正常进行。
另外,通过在执行等待操作的过程中对当前界面进行第一稳定性测试,可以充分利用等待操作过程中的空闲时间,提高了空闲时间的利用率。同时,有效节省了稳定性测试占用整个程序的时间,具有实用性。
或者,处理器710,用于在当前界面上查找控件对象;
基于查找到的所述控件对象,当所述当前界面的配置属性满足预定条件时,对所述当前界面进行第三稳定性测试;
若所述第三稳定性测试的结果指示所述当前界面处于稳定状态,则对所述当前界面上的控件对象执行触控操作。
在本发明实施例中,通过在当前界面上查找控件对象,基于查找到的控件对象,当所述当前界面的配置属性满足预定条件时,对当前界面进行第三稳定性测试,通过对当前界面进行第三稳定性测试,以确保在当前界面处于稳定状态时对控件对象执行触控操作,有效避免当前界面发生动态变化导致控件对象的位置可能发生变化所造成的对控件对象触控操作失败的现象发生,有效确保测试的正常进行。
应理解的是,本发明实施例中,射频单元701可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器710处理;另外,将上行的数据发送给基站。通常,射频单元701包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元701还可以通过无线通信系统与网络和其他设备通信。
终端设备通过网络模块702为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
音频输出单元703可以将射频单元701或网络模块702接收的或者在存储器709中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元703还可以提供与终端设备700执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元703包括扬声器、蜂鸣器以及受话器等。
输入单元704用于接收音频或视频信号。输入单元704可以包括图形处理器(Graphics Processing Unit,GPU)7041和麦克风7042,图形处理器7041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元706上。经图形处理器7041处理后的图像帧可以存储在存储器709(或其它存储介质)中或者经由射频单元701或网络模块702进行发送。麦克风7042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元701发送到移动通信基站的格式输出。
终端设备700还包括至少一种传感器705,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板7061的亮度,接近传感器可在终端设备700移动到耳边时,关闭显示面板7061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别终端设备姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器705还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
显示单元706用于显示由用户输入的信息或提供给用户的信息。显示单元706可包括显示面板7061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板7061。
用户输入单元707可用于接收输入的数字或字符信息,以及产生与终端设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元707包括触控面板7071以及其他输入设备7072。触控面板7071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板7071上或在触控面板7071附近的操作)。触控面板7071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器170,接收处理器710发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板7071。除了触控面板7071,用户输入单元707还可以包括其他输入设备7072。具体地,其他输入设备7072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
进一步的,触控面板7071可覆盖在显示面板7061上,当触控面板7071检测到在其上或附近的触摸操作后,传送给处理器710以确定触摸事件的类型,随后处理器710根据触摸事件的类型在显示面板7061上提供相应的视觉输出。虽然在图3中,触控面板7071与显示面板7061是作为两个独立的部件来实现终端设备的输入和输出功能,但是在某些实施例中,可以将触控面板7071与显示面板7061集成而实现终端设备的输入和输出功能,具体此处不做限定。
接口单元708为外部装置与终端设备700连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元708可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到终端设备700内的一个或多个元件或者可以用于在终端设备700和外部装置之间传输数据。
存储器709可用于存储软件程序以及各种数据。存储器709可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器709可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器710是终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分,通过运行或执行存储在存储器709内的软件程序和/或模块,以及调用存储在存储器709内的数据,执行终端设备的各种功能和处理数据,从而对终端设备进行整体监控。处理器710可包括一个或多个处理单元;优选的,处理器710可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器710中。
终端设备700还可以包括给各个部件供电的电源711(比如电池),优选的,电源711可以通过电源管理系统与处理器710逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
另外,终端设备700包括一些未示出的功能模块,在此不再赘述。
优选的,本发明实施例还提供一种终端设备,包括处理器710,存储器709,存储在存储器709上并可在所述处理器710上运行的计算机程序,该计算机程序被处理器710执行时实现上述对控件对象的操作方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述对控件对象的操作方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random AccessMemory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (5)
1.一种对控件对象的操作方法,其特征在于,包括:
将终端设备通过USB接口与PC机连接,将终端设备实时用户界面映射在PC机显示器上,保持终端设备与PC机之间进行通信和信息交互;人为设置全局变量为界面稳定后再对控件对象执行触控操作;基于设置的全局变量,生成等待操作步骤;
在执行等待操作的过程中,对当前界面进行第一稳定性测试;
若所述第一稳定性测试的结果指示所述当前界面处于稳定状态,则在所述当前界面上查找控件对象,并对所述控件对象执行触控操作;
在执行等待操作的过程中,对当前界面进行第一稳定性测试,包括:
确定执行等待操作的最后时间是否为n秒内,且没有对当前界面进行稳定性测试;
若是,则设置开始对界面进行第一稳定性测试,设置开始进行界面第一稳定性测试的时间为当前时间,并将所述最后n秒划分成多个时间段,每个时间段的长度为m秒;其中,n>m≥阈值;
在所述时间段内,获取所述当前界面的界面信息,所述界面信息用于反映界面上控件对象的特征信息及控件对象之间的关系信息,所述当前界面为在所述时间段内显示的界面;
判断所述当前界面的界面信息与上一次界面的界面信息是否相同;
若所述当前界面的界面信息与所述上一次界面的界面信息连续相同的次数大于或者等于第二预定次数,则所述第一稳定性测试的结果指示所述当前界面处于稳定状态。
2.根据权利要求1所述方法,其特征在于,所述方法还包括:
若所述第一稳定性测试的结果指示所述当前界面处于非稳定状态,则在所述当前界面上查找控件对象;
基于查找到的所述控件对象,对所述当前界面进行第二稳定性测试;
若所述第二稳定性测试的结果指示所述当前界面处于稳定状态,则对所述控件对象执行触控操作。
3.根据权利要求2所述方法,其特征在于,基于查找到的所述控件对象,对所述当前界面进行第二稳定性测试,包括:
每隔预定时间间隔获取所述当前界面的界面信息,所述界面信息用于反映界面上控件对象的特征信息及控件对象之间的关系信息,所述当前界面为在所述预定时间间隔后显示的界面;
判断所述当前界面的界面信息与上一次界面的界面信息是否相同;
若所述当前界面的界面信息与所述上一次界面的界面信息连续相同的次数大于或者等于第一预定次数,则所述第二稳定性测试的结果指示所述当前界面处于稳定状态。
4.一种终端设备,用于执行权利要求1-3中任一项所述对控件对象的操作方法,其特征在于,包括:
第一测试模块,用于在执行等待操作的过程中,对当前界面进行第一稳定性测试;
第一执行模块,用于若所述第一稳定性测试的结果指示所述当前界面处于稳定状态,则在所述当前界面上查找控件对象,并对所述控件对象执行触控操作。
5.一种终端设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述权利要求1-3中任一项所述对控件对象的操作方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810897988.4A CN109144860B (zh) | 2018-08-08 | 2018-08-08 | 一种对控件对象的操作方法及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810897988.4A CN109144860B (zh) | 2018-08-08 | 2018-08-08 | 一种对控件对象的操作方法及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109144860A CN109144860A (zh) | 2019-01-04 |
CN109144860B true CN109144860B (zh) | 2022-01-14 |
Family
ID=64792222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810897988.4A Active CN109144860B (zh) | 2018-08-08 | 2018-08-08 | 一种对控件对象的操作方法及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109144860B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918302B (zh) * | 2019-03-04 | 2022-06-21 | 深圳市车联天下信息科技有限公司 | 车载自动化测试方法、装置、车载多媒体系统及汽车 |
CN113448785B (zh) * | 2021-05-28 | 2023-03-28 | 山东英信计算机技术有限公司 | 一种带宽状态异常的处理方法、装置、设备及可读介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120131559A1 (en) * | 2010-11-22 | 2012-05-24 | Microsoft Corporation | Automatic Program Partition For Targeted Replay |
CN103530221B (zh) * | 2012-07-02 | 2016-11-09 | 北京大学 | 一种Android系统中程序行为与界面操作映射方法 |
CN104965764A (zh) * | 2015-06-02 | 2015-10-07 | 百度在线网络技术(北京)有限公司 | 静态资源的处理方法及装置 |
CN106527867B (zh) * | 2016-11-29 | 2022-02-15 | 北京小米移动软件有限公司 | 移动悬浮层界面的方法及装置 |
CN107066377B (zh) * | 2017-01-18 | 2020-11-17 | 海信视像科技股份有限公司 | 基于Android系统的页面元素获取方法及终端设备 |
CN107329898A (zh) * | 2017-06-30 | 2017-11-07 | 上海摩软通讯技术有限公司 | 终端界面自动化测试方法及系统 |
-
2018
- 2018-08-08 CN CN201810897988.4A patent/CN109144860B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109144860A (zh) | 2019-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111049979B (zh) | 一种应用分享方法、电子设备及计算机可读存储介质 | |
CN109343759B (zh) | 一种息屏显示的控制方法及终端 | |
CN107846352B (zh) | 一种信息显示方法、移动终端 | |
CN107580147B (zh) | 一种通知消息的管理方法和移动终端 | |
CN109543099B (zh) | 一种内容推荐方法及终端设备 | |
CN109471690B (zh) | 一种消息显示方法及终端设备 | |
CN108073458B (zh) | 内存回收方法、移动终端及计算机可读存储介质 | |
CN111130989B (zh) | 一种信息显示、发送方法及电子设备 | |
CN107734170B (zh) | 一种通知消息处理方法、移动终端及穿戴设备 | |
CN109558046B (zh) | 一种信息显示方法及终端设备 | |
CN109343693B (zh) | 一种亮度调节方法及终端设备 | |
CN107734172B (zh) | 一种信息显示方法及移动终端 | |
CN108984066B (zh) | 一种应用程序图标显示方法及移动终端 | |
CN108920040B (zh) | 一种应用图标整理方法及移动终端 | |
CN108874906B (zh) | 一种信息推荐方法及终端 | |
CN108536349B (zh) | 一种图标管理方法及移动终端 | |
CN108376096B (zh) | 一种消息显示方法及移动终端 | |
CN109144860B (zh) | 一种对控件对象的操作方法及终端设备 | |
CN111221602A (zh) | 一种界面显示方法及电子设备 | |
CN110795002A (zh) | 一种截图方法及终端设备 | |
CN108089935B (zh) | 一种应用程序的管理方法及移动终端 | |
CN108021315B (zh) | 一种控制方法及移动终端 | |
CN109902232B (zh) | 显示控制方法及终端 | |
CN112395524A (zh) | 一种词语标注、释义展示的方法、装置及存储介质 | |
CN109660657B (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210720 Address after: 100016 no.4301, No.52 Jiuxianqiao hospital, Chaoyang District, Beijing Applicant after: BEIJING TESTIN INFORMATION TECHNOLOGY Co.,Ltd. Address before: Room 2016, building 2, No.8, Fenghuang Third Road, Zhongxin Guangzhou Knowledge City, Guangzhou 510260, Guangdong Province Applicant before: GUANGZHOU TESTIN INFORMATION TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |