一种自动化脚本封装的方法及装置制造方法及图纸

技术编号:21453795 阅读:22 留言:0更新日期:2019-06-26 04:44
本申请实施例提供了一种自动化脚本封装的方法,所述方法包括:获取元素在界面上的元素属性;根据所述元素属性获取并缓存所述元素的元素名称与元素类型;所述元素名称为所述元素在所述界面的可视名称;获取并缓存与所述元素类型对应的操作方式;自动从缓存的所述元素名称中获取与预设测试数据匹配的元素名称并根据所述操作方式进行操作。利用本申请提供的方法,能够有效降低脚本的代码量与编写难度,提升自动化脚本的可维护性,从而降低了UI自动化需要投入的成本。本申请实施例还提供了一种自动化脚本封装的装置、一种电子设备和一种存储介质。

【技术实现步骤摘要】
一种自动化脚本封装的方法及装置
本申请涉及计算机
,尤其涉及一种自动化脚本封装的方法及装置。
技术介绍
UI(UserInterface,用户界面)是指用户和某些系统进行交互方法的集合,这些系统不单单指电脑程序,还包括某些具有特定功能的机器、设备、复杂的工具等。现有的UI自动化实现的方法,通常通过编写可执行的自动化脚本以实现用模拟操作替换界面的手工操作,大多数的自动化脚本通过面向对象的方式对不同的元素类型逐个进行识别及编写,并逐个对元素操作进行封装,此类的编写方法在界面元素过多时,会造成自动化脚本代码多、复杂、维护性差的问题,例如可以参见图1所示的表单界面示意图,表单中包括了选择控件、菜单控件、输入控件、日期控件等众多元素,在表单界面的元素较多的情况下,逐一对元素类型进行识别及编写并逐一对元素进行操作会导致脚本的内容相应较多、编写过程较为复杂,并且脚本中具有相同功能(例如识别功能)的代码往往会重复出现,进一步造成代码冗余,此外,这种方法的可维护性很低,在界面信息有所变更时往往需要重新编写脚本,这些问题都间接提高了UI自动化需投入的成本,导致UI的自动化并不适合大批量的推广。
技术实现思路
为了解决现有技术存在的上述技术问题,本申请提供了一种自动化脚本封装的方法及装置,能够有效降低脚本的代码量与编写难度,提升自动化脚本的可维护性,从而降低了UI自动化需要投入的成本。本申请提供了一种自动化脚本封装的方法,所述方法包括:获取元素在界面上的元素属性;根据所述元素属性获取并缓存所述元素的元素名称与元素类型;所述元素名称为所述元素在所述界面的可视名称;获取并缓存与所述元素类型对应的操作方式;自动从缓存的所述元素名称中获取与预设测试数据匹配的元素名称并根据所述操作方式进行操作。可选的,所述获取元素在界面上的元素属性包括:根据所述界面的预设界面属性,自动获取所述预设界面属性包括的所有可用元素。可选的,所述根据所述元素属性获取并缓存所述元素的元素名称与元素类型包括:根据所述元素属性获取所述元素在所述界面上显示的元素名称与元素类型,缓存所述元素名称并缓存所述元素名称与元素类型的对应关系。可选的,所述测试数据以键值对Key-value形式存储,所述键值对的索引值Key为所述元素名称。可选的,所述自动从缓存的所述元素名称中获取与预设测试数据匹配的元素名称并根据所述操作方式进行操作包括:自动从缓存获取测试元素名称;所述测试元素名称为缓存的所述元素名称中与所述预设测试数据的所述索引值Key匹配的元素名称;从缓存中获取所述测试元素名称对应的操作方式并执行相应操作。可选的,所述元素属性至少包括以下其中的一种:可扩展标记语言路径语言XPath、标识号码ID、类Class、元素命名name、标签名称tagName、超文本链接文字信息link_text、部分超文本链接文字信息partial_link_text和层叠样式表CSS。可选的,所述元素类型至少包括以下其中的一种:输入框、选择框、按钮、日期选择框、菜单、图片框、颜色选择框、超链接标签和列表。可选的,所述获取并缓存与所述元素类型对应的操作方式包括:若所述元素类型为输入框,获取并缓存所述操作方式为输入框输入;若所述元素类型为选择框,获取并缓存所述操作方式为单选或复选操作;若所述元素类型为按钮,获取并缓存所述操作方式为点击按钮;若所述元素类型为日期选择框,获取并缓存所述操作方式为日期选择;若所述元素类型为菜单,获取并缓存所述操作方式为菜单显示;若所述元素类型为图片框,获取并缓存所述操作方式为图片显示;若所述元素类型为颜色选择框,获取并缓存所述操作方式为颜色选择;若所述元素类型为超链接标签,获取并缓存所述操作方式为页面跳转;若所述元素类型为列表,获取并缓存所述操作方式为列表查选。本申请实施例还提供了一种自动化脚本封装的装置,所述装置包括:第一获取单元、第二获取单元、第三获取单元和操作单元;所述第一获取单元,用于获取元素在界面上的元素属性;所述第二获取单元,用于根据所述元素属性获取并缓存所述元素的元素名称与元素类型;所述元素名称为所述元素在所述界面的可视名称;所述第三获取单元,用于获取并缓存与所述元素类型对应的操作方式;所述操作单元,用于自动从缓存的所述元素名称中获取与预设测试数据匹配的元素名称并根据所述操作方式进行操作。可选的,所述第一获取单元具体用于根据所述界面的预设界面属性,自动获取所述预设界面属性包括的所有可用元素。可选的,所述第二获取单元包括:第一获取子单元和缓存子单元;所述第一获取子单元,用于根据所述元素属性获取所述元素在所述界面上显示的元素名称与元素类型;所述缓存子单元,用于缓存所述元素名称并缓存所述元素名称与元素类型的对应关系。可选的,所述测试数据以键值对Key-value形式存储,所述键值对的索引值Key为所述元素名称。可选的,所述操作单元包括:第二获取子单元和执行子单元;所述第二获取子单元,用于自动从缓存获取测试元素名称;所述测试元素名称为缓存的所述元素名称中与所述预设测试数据的所述索引值Key匹配的元素名称;所述执行子单元,用于从缓存中获取所述测试元素名称对应的操作方式并执行相应操作。可选的,所述元素属性至少包括以下其中的一种:可扩展标记语言路径语言XPath、标识号码ID、类Class、元素命名name、标签名称tagName、超文本链接文字信息link_text、部分超文本链接文字信息partial_link_text和层叠样式表CSS。可选的,所述元素类型至少包括以下其中的一种:输入框、选择框、按钮、日期选择框、菜单、图片框、颜色选择框、超链接标签和列表。可选的,所述第三获取单元具体用于:若所述元素类型为输入框,获取并缓存所述操作方式为输入框输入;若所述元素类型为选择框,获取并缓存所述操作方式为单选或复选操作;若所述元素类型为按钮,获取并缓存所述操作方式为点击按钮;若所述元素类型为日期选择框,获取并缓存所述操作方式为日期选择;若所述元素类型为菜单,获取并缓存所述操作方式为菜单显示;若所述元素类型为图片框,获取并缓存所述操作方式为图片显示;若所述元素类型为颜色选择框,获取并缓存所述操作方式为颜色选择;若所述元素类型为超链接标签,获取并缓存所述操作方式为页面跳转;若所述元素类型为列表,获取并缓存所述操作方式为列表查选。本申请实施例还提供了一种电子设备,所述电子设备用于运行程序,其中,所述程序运行时执行上述任一项所述的自动化脚本封装的方法。本申请实施例还提供了一种存储介质,其上存储有程序,所述程序被电子设备执行时实现上述任一项所述的自动化脚本封装的方法。本申请所述方法具有以下优点:本申请提供了一种自动化脚本封装的方法,所述方法包括:获取元素在界面上的元素属性;根据所述元素属性获取并缓存所述元素在所述界面上显示的元素名称与元素类型,所述元素名称为所述元素在所述界面的可视名称,所述元素名称可以用于和预设测试数据约定绑定识别,所述元素类型用于分析所述元素的操作方式;获取并缓存与所述元素类型对应的操作方式;自动从缓存的所述元素名称中获取与预设测试数据匹配的元素名称并根据所述操作方式进行操作,例如输入框输入、选择框下拉选择等操作。本申请提供的方法将原有的逐一识别元本文档来自技高网...

【技术保护点】
1.一种自动化脚本封装的方法,其特征在于,所述方法包括:获取元素在界面上的元素属性;根据所述元素属性获取并缓存所述元素的元素名称与元素类型;所述元素名称为所述元素在所述界面的可视名称;获取并缓存与所述元素类型对应的操作方式;自动从缓存的所述元素名称中获取与预设测试数据匹配的元素名称并根据所述操作方式进行操作。

【技术特征摘要】
1.一种自动化脚本封装的方法,其特征在于,所述方法包括:获取元素在界面上的元素属性;根据所述元素属性获取并缓存所述元素的元素名称与元素类型;所述元素名称为所述元素在所述界面的可视名称;获取并缓存与所述元素类型对应的操作方式;自动从缓存的所述元素名称中获取与预设测试数据匹配的元素名称并根据所述操作方式进行操作。2.根据权利要求1所述的自动化脚本封装的方法,其特征在于,所述获取元素在界面上的元素属性包括:根据所述界面的预设界面属性,自动获取所述预设界面属性包括的所有可用元素。3.根据权利要求1所述的自动化脚本封装的方法,其特征在于,所述根据所述元素属性获取并缓存所述元素的元素名称与元素类型包括:根据所述元素属性获取所述元素在所述界面上显示的元素名称与元素类型,缓存所述元素名称并缓存所述元素名称与元素类型的对应关系。4.根据权利要求1所述的自动化脚本封装的方法,其特征在于,所述测试数据以键值对Key-value形式存储,所述键值对的索引值Key为所述元素名称。5.根据权利要求4所述的自动化脚本封装的方法,其特征在于,所述自动从缓存的所述元素名称中获取与预设测试数据匹配的元素名称并根据所述操作方式进行操作包括:自动从缓存获取测试元素名称;所述测试元素名称为缓存的所述元素名称中与所述预设测试数据的所述索引值匹配的元素名称;从缓存中获取所述测试元素名称对应的操作方式并执行相应操作。6.根据权利要求1所述的自动化脚本封装的方法,其特征在于,所述元素属性至少包括以下其中的一种:可扩展标记语言路径语言XPath、标识号码ID、类Class、元素命名name、标签名称tagName、超文本链接文字信息link_text、部分超文本链接文字信息partia...

【专利技术属性】
技术研发人员:雷伟
申请(专利权)人:恒生电子股份有限公司
类型:发明
国别省市:浙江,33

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

1