定位控件中的元素的方法及装置制造方法及图纸

技术编号:13284533 阅读:88 留言:0更新日期:2016-07-09 01:21
本发明专利技术是关于一种定位控件中的元素的方法及装置,属于计算机技术领域。该方法包括:获取目标程序的主UI库类名和程序名;获取所述目标程序中的web控件的控件类名,所述控件类名为所述web控件对外封装可见的类名;通过所述目标程序的主UI库类名、程序名以及所述控件类名获取所述web控件的网页文档对象;根据所述网页文档对象定位所述web控件中的元素,解决了相关技术中计算机仅能识别得到一个控件的封装完成的主类名,无法定位出控件中的具体元素的问题,达到了定位控件中的元素,提高计算机应用程序测试的效率的效果。

【技术实现步骤摘要】
定位控件中的元素的方法及装置
本专利技术涉及计算机
,特别涉及一种定位控件中的元素的方法及装置。
技术介绍
在计算机应用程序测试领域中,自动化测试实现的条件之一是定位待测程序中的元素。windows(视窗)系统是目前应用最为广泛的操作系统之一,对于windows程序的自动化而言,市面上一些常用的自动化工具如QTP、RanorexStudio以及windows自带的工具包,都可以识别windows系统的标准控件元素。在实现本专利技术的过程中,申请人发现现有技术存在如下问题:随着互联网及web应用的快速发展,越来越多的企业选择开发自主的UI(UserInterface,用户界面)界面库,并内嵌web控件,目前常用的自动化工具仅能识别到一些windows的标准控件元素,无法识别企业自主开发的UI界面中的web控件元素,应用场景较小,影响对企业自主开发的UI界面内嵌的web控件的测试效率。
技术实现思路
本专利技术实施例提供了一种定位控件中的元素的方法及装置,技术方案如下:根据本专利技术实施例的第一方面,提供了一种定位控件中的元素的方法,该方法用于电子设备中,包括:获取目标程序的主UI库类名和程序名;获取该目标程序中的web控件的控件类名,该控件类名为该web控件对外封装可见的类名;通过该目标程序的主UI库类名、程序名以及该控件类名获取该web控件的网页文档对象;根据该网页文档对象定位该web控件中的元素。可选地,该通过该目标程序的主UI库类名、程序名以及该控件类名获取该web控件的网页文档对象,包括:通过该目标程序的主UI库类名和程序名查找该目标程序;调用预设的组件对象模型建立与该目标程序之间的连接;根据该控件类名,通过建立的该连接从该目标程序读取该网页文档对象。可选地,该通过该目标程序的主UI库类名和程序名查找该目标程序,包括:在当前运行的应用程序窗口中,查找该目标程序的主UI库类名和程序名对应窗口的窗口句柄;该调用预设的组件对象模型建立与该目标程序之间的连接,包括:根据该窗口句柄调用该预设的组件对象模型,建立与该目标程序之间的连接。可选地,该获取该目标程序中的web控件的控件类名,包括:通过对象识别工具获取该控件类名。可选地,该根据该网页文档对象定位该web控件中的元素,包括:遍历该网页文档对象中标签名为指定标签名的元素。根据本专利技术实施例的第二方面,提供了一种定位控件中的元素的装置,该装置用于电子设备中,包括:第一获取模块,用于获取目标程序的主UI库类名和程序名;第二获取模块,用于获取该目标程序中的web控件的控件类名,该控件类名为该web控件对外封装可见的类名;第三获取模块,用于通过该目标程序的主UI库类名、程序名以及该控件类名获取该web控件的网页文档对象;定位模块,用于根据该网页文档对象定位该web控件中的元素。可选地,该第二获取模块,包括:查找单元,用于通过该目标程序的主UI库类名和程序名查找该目标程序;连接建立单元,用于调用预设的组件对象模型建立与该目标程序之间的连接;读取单元,用于根据该控件类名,通过建立的该连接从该目标程序读取该网页文档对象。可选地,该查找单元,具体用于在当前运行的应用程序窗口中,查找该目标程序的主UI库类名和程序名对应窗口的窗口句柄;该连接建立单元,具体用于根据该窗口句柄调用该预设的组件对象模型,建立与该目标程序之间的连接。可选地,该第二获取模块,具体用于通过对象识别工具获取该控件类名。可选地,该定位模块,具体用于遍历该网页文档对象中标签名为指定标签名的元素。本专利技术实施例提供的技术方案可以包括以下有益效果:通过获取目标程序的主UI库类名和程序名;获取该目标程序中的web控件的控件类名,该控件类名为该web控件对外封装可见的类名;通过该目标程序的主UI库类名、程序名以及该控件类名获取该web控件的网页文档对象;根据该网页文档对象定位该web控件中的元素,解决了相关技术中常用的自动化工具仅能识别到一些windows的标准控件元素,无法识别企业自主开发的UI界面中的web控件元素的问题,达到了扩展自动化测试的应用场景,提高对企业自主开发的UI界面内嵌的web控件的测试效率的效果。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本专利技术。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。图1是根据一示例性实施例示出的一种定位控件中的元素的方法的流程图;图2是根据另一示例性实施例示出的一种定位控件中的元素的方法的流程图;图3是根据一示例性实施例示出的一种定位控件中的元素的装置的框图;图4是根据另一示例性实施例示出的一种定位控件中的元素的装置的框图;图5是根据一示例性实施例示出的一种设备的框图;图6是根据一示例性实施例示出的一种设备的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本专利技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本专利技术的一些方面相一致的装置和方法的例子。本专利技术实施例提供的方法,可应用于安装运行应用程序的电子设备中。例如,电子设备包括但不限于PC(PersonalComputer,个人计算机)、手机、平板电脑、膝上型电脑和可穿戴设备等电子设备。其中,应用程序可以是内嵌有Web浏览控件的Windows程序,可选的,应用程序还可以是运行在Mac系统、Unix系统或Linux系统等上的程序。内嵌有Web浏览控件的应用程序通常具备打开网页,提供网页中的图片、文字、视频以及文本输入框和按钮等内容。为了便于描述,在下述方法实施例中,仅以各步骤的执行主体为电子设备进行举例说明,但对此不构成限定。图1是根据一示例性实施例示出的一种定位控件中的元素的方法的流程图,该方法可以用于电子设备中,该电子设备可以是PC、手机、平板电脑、膝上型电脑和可穿戴设备等电子设备,如图1所示,该方法可以包括如下几个步骤。在步骤101中,获取目标程序的主UI库类名和程序名。在步骤102中,获取目标程序中的web控件的控件类名,该控件类名为web控件对外封装可见的类名。在步骤103中,通过目标程序的主UI库类名、程序名以及控件类名获取web控件的网页文档对象。本专利技术实施例所示的方法应用在window系统中时,可以使用pywincom库,通过自编代码以com(ComponentObjectModel,组件对象模型)组件来调用windows程序,从而实现与目标程序的基本通讯,其中,pywincom库为Python扩展第三方库,主要用于以组件对象模型的调用形式与windows应用程序进行通讯。通过上述方法,电子设备可以查找在当前计算机中所有运行的窗口程序中,基于主UI库类名、程序名以及控件类名定位web控件。此操作主要确认是需要定位本地计算机下哪个应用程序下对应的web控件。找到要定位的web控件后,通过组件对象模型的Dispatch方式调用后(Dispatch主要是用于组件对象模型与windows程序建立通讯桥梁),最终获取返回网页文档对象。在步骤104中本文档来自技高网...

【技术保护点】
一种定位控件中的元素的方法,其特征在于,所述方法包括:获取目标程序的主用户界面UI库类名和程序名;获取所述目标程序中的web控件的控件类名,所述控件类名为所述web控件对外封装可见的类名;通过所述目标程序的主UI库类名、程序名以及所述控件类名获取所述web控件的网页文档对象;根据所述网页文档对象定位所述web控件中的元素。

【技术特征摘要】
1.一种定位控件中的元素的方法,其特征在于,所述方法包括:获取目标程序的主UI库类名和程序名;获取所述目标程序中的web控件的控件类名,所述控件类名为所述web控件对外封装可见的类名;通过所述目标程序的主UI库类名和所述程序名查找所述目标程序;调用预设的组件对象模型建立与所述目标程序之间的连接;根据所述控件类名,通过建立的所述连接从所述目标程序读取网页文档对象,所述网页文档对象为与所述web控件对应的文档对象;根据所述网页文档对象定位所述web控件中的元素。2.根据权利要求1所述的方法,其特征在于,所述通过所述目标程序的主UI库类名和程序名查找所述目标程序,包括:在当前运行的应用程序窗口中,查找所述目标程序的主UI库类名和程序名对应窗口的窗口句柄;所述调用预设的组件对象模型建立与所述目标程序之间的连接,包括:根据所述窗口句柄调用所述预设的组件对象模型,建立与所述目标程序之间的连接。3.根据权利要求1所述的方法,其特征在于,所述获取所述目标程序中的web控件的控件类名,包括:通过对象识别工具获取所述控件类名。4.根据权利要求1所述的方法,其特征在于,所述根据所述网页文档对象定位所述web控件中的元素,包括:遍历所述网页文档对象中标签名为指定标签名的元素。5.一种定位控件中的元素的装置,其特征在于,所述装置包括:...

【专利技术属性】
技术研发人员:周金剑
申请(专利权)人:广州酷狗计算机科技有限公司
类型:发明
国别省市:广东;44

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

1