掌桥专利:专业的专利平台
掌桥专利
首页

基于语义识别的移动端UI自动化测试方法及装置

文献发布时间:2024-04-18 19:59:31


基于语义识别的移动端UI自动化测试方法及装置

技术领域

本发明涉及语义识别技术领域,尤其涉及一种基于语义识别的移动端UI自动化测试方法及装置。

背景技术

随着软件系统的复杂性和规模的增长,测试需要越来越多的时间和人力,而软件自动化测试快速发展,但为了提高移动端UI自动化测试的准确性,需要对自动化测试的测试用例的语义更为准确的识别,以进行移动端UI自动化测试。

现有的移动端UI自动化测试多为移动端的埋点测试,例如,在移动端上操作触发埋点上报,通过移动端抓包获取埋点数据,再依据埋点文档对每个字段进行人工校验。实际应用中,通过埋点测试可能会对测试用例的语义理解有偏差,可能导致对自动化测试过于片面,从而对进行移动端UI自动化测试时的准确度较低。

发明内容

本发明提供一种基于语义识别的移动端UI自动化测试方法及装置,其主要目的在于解决进行移动端UI自动化测试时的准确度较低的问题。

为实现上述目的,本发明提供的一种基于语义识别的移动端UI自动化测试方法,包括:

S1、获取用户需求,根据所述用户需求确定移动端UI业务逻辑,根据所述移动端UI业务逻辑及预设的移动端页面属性生成移动端UI关键词;

S2、利用预设的动态组合算法根据所述用户需求对所述移动端UI关键词进行动态组合,得到组合关键词,根据所述移动端UI业务逻辑对所述组合关键词进行封装,得到关键词驱动,其中所述根据所述移动端UI业务逻辑对所述组合关键词进行封装,得到关键词驱动,包括:

S21、根据所述移动端UI业务逻辑确定页面跳转顺序;

S22、利用预设的权重算法逐一计算所述组合关键词的组合权重,其中所述权重算法为:

其中,

S23、根据所述组合权重对所述组合关键词进行分类,得到分类组合;

S24、按照所述页面跳转顺序对所述分类组合进行排序,得到排序组合,对所述排序组合进行封装,得到关键词驱动;

S3、利用预设的语义识别算法对所述关键词驱动进行语义解析,得到核心关键词语义,根据所述核心关键词语义生成移动端UI自动化测试用例;

S4、将所述移动端UI自动化测试用例转换为移动端UI自动化测试命令,通过预设的自动化测试遍历算法根据所述移动端UI自动化测试命令进行自动化测试,得到测试报告,利用预设的用例通过率算法计算所述测试报告的用例通过率;

S5、根据所述用例通过率对所述移动端UI自动化测试用例进行优化,得到优化自动化测试用例,通过预设的自动化测试算法根据所述优化自动化测试用例对移动端UI进行自动化测试。

可选地,所述根据所述移动端UI业务逻辑及预设的移动端页面属性生成移动端UI关键词,包括:

提取所述移动端UI业务逻辑的业务逻辑关键词;

提取所述移动端页面属性中的动作属性;

将所述业务逻辑关键词及所述动作属性进行封装,得到移动端UI关键词。

可选地,所述利用预设的动态组合算法根据所述用户需求对所述移动端UI关键词进行动态组合,得到组合关键词,包括:

根据所述用户需求对所述移动端UI关键词进行筛选,得到需求关键词;

对所述需求关键词进行序号标记,得到需求关键词序号;

利用所述动态组合算法对所述需求关键词序号进行动态组合,得到组合关键词,其中所述动态组合算法为:

其中,

可选地,所述利用预设的语义识别算法对所述关键词驱动进行语义解析,得到核心关键词语义,包括:

利用所述语义识别算法中Bert模型提取所述关键词驱动的字符级特征;

利用所述语义识别算法中LSTM模型提取所述关键词驱动的词汇级特征;

将所述字符级特征及所述词汇级特征进行特征融合,得到融合特征;

通过预设的判别随机场对所述融合特征进行语义标注,得到所述核心关键词语义。

可选地,所述根据所述核心关键词语义生成移动端UI自动化测试用例,包括:

根据所述核心关键词语义确定移动端UI的测试用例字段;

根据所述测试用例字段及预设的测试用例参数生成移动端UI自动化测试用例。

可选地,所述通过预设的自动化测试遍历算法根据所述移动端UI自动化测试命令进行自动化测试,得到测试报告,包括:

根据所述移动端UI自动化测试命令生成自动化测试树;

利用如下的代价值计算公式逐一计算所述自动化测试树中每条测试边的测试代价值:

其中,

根据所述测试代价值对所述自动化测试树进行优化,得到优化自动化测试树;

利用所述自动化测试遍历算法对所述优化自动化测试树进行自动化测试,得到测试报告。

可选地,所述利用预设的用例通过率算法计算所述测试报告的用例通过率,包括:

获取所述测试报告中的用例通过数及用例失败数;

利用如下所述用例通过率算法根据所述用例通过数、所述用例失败数及预设的用例修正因子计算所述测试报告的用例通过率:

其中,

可选地,所述根据所述用例通过率对所述移动端UI自动化测试用例进行优化,得到优化自动化测试用例,包括:

当所述用例通过率小于预设的用例通过阈值时,根据所述核心关键词语义对所述移动端UI自动化测试用例进行更新,得到更新自动化测试用例,直至所述用例通过率大于或等于预设的用例通过阈值;

当所述用例通过率大于或等于预设的用例通过阈值时,将所述更新自动化测试用例作为所述优化自动化测试用例。

可选地,所述通过预设的自动化测试算法根据所述优化自动化测试用例对移动端UI进行自动化测试,包括:

根据所述优化自动化测试用例生成自动化测试脚本;

通过所述自动化测试算法根据所述自动化测试脚本对移动端UI进行自动化测试。

为了解决上述问题,本发明还提供一种基于语义识别的移动端UI自动化测试装置,所述装置包括:

关键词生成模块,用于获取用户需求,根据所述用户需求确定移动端UI业务逻辑,根据所述移动端UI业务逻辑及预设的移动端页面属性生成移动端UI关键词;

关键词驱动封装模块,用于利用预设的动态组合算法根据所述用户需求对所述移动端UI关键词进行动态组合,得到组合关键词,根据所述移动端UI业务逻辑对所述组合关键词进行封装,得到关键词驱动;

测试用例生成模块,用于利用预设的语义识别算法对所述关键词驱动进行语义解析,得到核心关键词语义,根据所述核心关键词语义生成移动端UI自动化测试用例;

用例通过率计算模块,用于将所述移动端UI自动化测试用例转换为移动端UI自动化测试命令,通过预设的自动化测试遍历算法根据所述移动端UI自动化测试命令进行自动化测试,得到测试报告,利用预设的用例通过率算法计算所述测试报告的用例通过率;

自动化测试模块,用于根据所述用例通过率对所述移动端UI自动化测试用例进行优化,得到优化自动化测试用例,通过预设的自动化测试算法根据所述优化自动化测试用例对移动端UI进行自动化测试。

本发明实施例通过用户需求确定移动端UI业务逻辑,进而根据业务逻辑及页面属性生成移动端UI关键词,将关键词进行动态组合,实现移动端UI自动化测试的全面性;将组合关键词进行封装,得到关键词驱动,有利于提高测试用例的拓展性;对关键词驱动进行语义解析,进而根据语义解析后的关键词语义生成自动化测试用例,有利于更为准确且全面的设计测试用例,保证自动化测试的准确性;对自动化测试用例进行自动化测试,进而根据通过率对测试用例进行优化,实现更为全面的测试用例,以提高移动端自动化测试的准确性。因此本发明提出的基于语义识别的移动端UI自动化测试方法及装置,可以解决进行移动端UI自动化测试时的准确度较低的问题。

附图说明

图1为本发明一实施例提供的基于语义识别的移动端UI自动化测试方法的流程示意图;

图2为本发明一实施例提供的生成关键词驱动的流程示意图;

图3为本发明一实施例提供的生成测试用例的流程示意图;

图4为本发明一实施例提供的基于语义识别的移动端UI自动化测试装置的功能模块图;

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本申请实施例提供一种基于语义识别的移动端UI自动化测试方法。所述基于语义识别的移动端UI自动化测试方法的执行主体包括但不限于服务端、终端等能够被配置为执行本申请实施例提供的该方法的电子设备中的至少一种。换言之,所述基于语义识别的移动端UI自动化测试方法可以由安装在终端设备或服务端设备的软件或硬件来执行,所述软件可以是区块链平台。所述服务端包括但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等。所述服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。

参照图1所示,为本发明一实施例提供的基于语义识别的移动端UI自动化测试方法的流程示意图。在本实施例中,所述基于语义识别的移动端UI自动化测试方法包括:

S1、获取用户需求,根据所述用户需求确定移动端UI业务逻辑,根据所述移动端UI业务逻辑及预设的移动端页面属性生成移动端UI关键词。

本发明实施例中,所述用户需求是指用户对移动端UI界面的界面布局、颜色、背景、文本、界面功能的配置需求,可通过问卷调查或通过用户的原型图获取用户需求。

进一步地,根据所述用户需求可确定移动端UI界面的整体业务逻辑,如用户需求是针对快递业务员的业务需求所设计的UI界面,则用户需求包括业务员信息模块、切换客户按钮、商城公告、客户信息模块、物流信息模块,进而根据用户需求确定移动端UI界面的整体业务逻辑,即首先需要确定业务员信息,每个业务员信息中包含多个客户信息,针对不同的客户可选择切换客户按钮,而商城公告是业务需求的辅助信息,修饰标题能让业务员快速捕捉,客户信息模块中包含客户的基本信息,如姓名、联系方式、地址等,物流信息模块可查询客户订单信息,我的工具模块可以是独立的功能入口,包括订单、客户、第三方平台订单、安全中心、设置等,因此,可根据用户需求确定移动端UI界面的整体业务逻辑,保证移动端UI页面的全面功能设计。

更进一步地,根据所述移动端UI业务逻辑及UI界面中页面动作属性生成每个步骤的移动端UI关键词,进而根据关键词作为关键词驱动的自动化测试框架的输入,以进行自动化测试。

本发明实施例中,所述移动端UI业务逻辑是指不同页面的跳转逻辑或者同一页面中不同按钮之间的跳转逻辑,以及所述移动端页面属性包括标题、背景图像、颜色、文本、链接、边距、字体、动作按钮等。

本发明实施例中,所述根据所述移动端UI业务逻辑及预设的移动端页面属性生成移动端UI关键词,包括:

提取所述移动端UI业务逻辑的业务逻辑关键词;

提取所述移动端页面属性中的动作属性;

将所述业务逻辑关键词及所述动作属性进行封装,得到移动端UI关键词。

详细地,所述业务逻辑关键词是指在移动端UI界面中每个模块的主要功能代表的关键词,如切换客户按钮模块,则业务逻辑关键词为切换客户;商城公告模块,则业务逻辑关键词为查看公告;所述动作属性是指移动端页面属性中每个跳转动作的动作属性,如切换客户按钮模块中的动作属性为切换;商城公告模块中的动作属性为查看或点击。

具体地,将所述业务逻辑关键词与动作属性封装为一个移动端UI关键词,比如要进行打开浏览器的操作,可以使用“open browser”关键字,它的语句是open_browser(url,browser),url统一资源定位符,browser是浏览器,其中,可通过预设的封装插件对所述业务逻辑关键词及所述动作属性进行封装,其中,所述封装插件包括但不限于Javascript封装插件、jQuery封装插件。

进一步地,为了对移动端UI页面进行全面的测试,需要对不同的移动端UI关键词进行组合,以保证自动化测试的全面性及准确性。

S2、利用预设的动态组合算法根据所述用户需求对所述移动端UI关键词进行动态组合,得到组合关键词,根据所述移动端UI业务逻辑对所述组合关键词进行封装,得到关键词驱动。

本发明实施例中,所述组合关键词是指将不同的移动端UI关键词进行组合,可得到不同的关键词组合,进而根据组合关键词实现移动端UI界面自动化测试。所述动态组合算法为排列组合算法,将多个移动端UI关键词组合成不同的关键词组合。

本发明实施例中,所述利用预设的动态组合算法根据所述用户需求对所述移动端UI关键词进行动态组合,得到组合关键词,包括:

根据所述用户需求对所述移动端UI关键词进行筛选,得到需求关键词;

对所述需求关键词进行序号标记,得到需求关键词序号;

利用所述动态组合算法对所述需求关键词序号进行动态组合,得到组合关键词,其中所述动态组合算法为:

其中,

详细地,根据所述用户需求对所有的移动端UI关键词进行筛选,得到所述用户需求对应的需求关键词,如用户需求是指用户对移动端UI界面中的信息管理,则从所有的移动端UI关键词中选取信息管理的关键词,用户需求是指移动端UI界面中的切换客户,则从所有的移动端UI关键词中选取切换客户的关键词。对每个需求关键词进行序号标记,得到需求关键词序号,如对信息管理的关键词标记序号为1,对切换客户的关键词标记序号为2,以此类推可以对需求关键词进行标记序号为n,n+1等。

具体地,根据关键词标记序号

进一步地,对不同的组合关键词进行封装,以得到关键词驱动,进而根据关键词驱动进行移动端UI的自动化测试。

本发明实施例中,所述关键词驱动是将业务、脚本、数据相互剥离,降低程序之间的耦合性,增强了测试程序的灵活性,可以根据用户或不同项目的需要,重新排列组合动态设计相对应的自动化测试脚本。

本发明实施例中,参图2所示,所述根据所述移动端UI业务逻辑对所述组合关键词进行封装,得到关键词驱动,包括:

S21、根据所述移动端UI业务逻辑确定页面跳转顺序;

S22、利用预设的权重算法逐一计算所述组合关键词的组合权重,其中所述权重算法为:

其中,

S23、根据所述组合权重对所述组合关键词进行分类,得到分类组合;

S24、按照所述页面跳转顺序对所述分类组合进行排序,得到排序组合,对所述排序组合进行封装,得到关键词驱动。

详细地,根据所述移动端UI业务逻辑确定UI界面的每个动作的跳转顺序,如移动端UI界面中业务逻辑是即首先需要确定业务员信息,每个业务员信息中包含多个客户信息,针对不同的客户可选择切换客户按钮,而商城公告是业务需求的辅助信息,修饰标题能让业务员快速捕捉,客户信息模块中包含客户的基本信息,如姓名、联系方式、地址等,物流信息模块可查询客户订单信息,我的工具模块可以是独立的功能入口,包括订单、客户、第三方平台订单、安全中心、设置等,则页面跳转顺序是第一跳转顺序为业务员信息模块,第二跳转顺序为客户信息模块,第三跳转顺序为切换信息模块,第四跳转顺序为物流信息模块,进而可根据跳转顺序对组合关键词进行组合,得到排序组合,进而对排序组合进行封装,得到关键词驱动。

具体地,所述权重算法中每个组合关键词中的关键词权重是通过层次分析法进行确定,可通过不同的评价指标进行关键词打分,从而确定关键词权重,其中关键词评价指标包括关键词在移动端UI页面的重要程度,页面布局位置及页面执行顺序等多个指标进行关键词打分,进而根据每个组合关键词中每个关键词权重计算每个组合关键词的组合权重,进而根据组合权重将组合关键词进行分类,分为高级组合关键词、中级组合关键词、低级组合关键词,进而根据页面跳转顺序对分类组合中的关键词进行页面跳转排序,从而将排序后的排序组合进行封装,得到关键词驱动,其中关键词驱动根据分类组合进行分类,可分为高级驱动、中级驱动及低级驱动,则可通过预设的封装插件对所述排序组合进行封装,其中,所述封装插件包括但不限于Javascript封装插件、jQuery封装插件。

进一步地,对所述关键词驱动进行语义解析,通过关键词驱动的核心语义对移动端UI界面的功能设计测试用例,以进行自动化测试。

S3、利用预设的语义识别算法对所述关键词驱动进行语义解析,得到核心关键词语义,根据所述核心关键词语义生成移动端UI自动化测试用例;

本发明实施例中,所述核心关键词语义是指关键词驱动中移动端UI界面的每个动作跳转的具体语义含义,进而根据移动端UI界面关键词驱动的核心语义生成自动化测试用例,从而进行自动化测试。

本发明实施例中,所述利用预设的语义识别算法对所述关键词驱动进行语义解析,得到核心关键词语义,包括:

利用所述语义识别算法中Bert模型提取所述关键词驱动的字符级特征;

利用所述语义识别算法中LSTM模型提取所述关键词驱动的词汇级特征;

将所述字符级特征及所述词汇级特征进行特征融合,得到融合特征;

通过预设的判别随机场对所述融合特征进行语义标注,得到所述核心关键词语义。

详细地,所述语义识别算法中包括输入层、特征抽取层、特征融合层及输出层,首先输出层接收关键词驱动文本输入,并对关键词驱动文本进行预处理,划分成字符级和词汇级粒度单元,供特征抽取层提取特征。基于语义识别算法中的特征抽取层,首先采用预训练Bert模型实现字符级特征提取,使用CNN模型进一步对特征做高层抽象,其中Bert由双向Transformer组件构成,以字符序列作为输入,整个语义信息会在堆栈中不断由底层向上流动,通过联合调节所有层中的上下文来预先训练深度双向表示。其次采用LSTM网络提取关键词驱动的词汇级特征,即全局语义,采用Attention机制对语义做特征强化。因此,利用Bert模型高层特征包含更丰富的语义信息,使用卷积网络对高层特征筛选,获取文本中更加突出的高维特征;利用LSTM网络提取句子中的关键语义信息,采用注意力机制强化句子词汇级特征,减小无关噪声干扰,提升模型分类的精度。

具体地,将所述字符级对应的特征向量与词汇级对应的特征向量进行向量融合,得到融合特征,如字符级特征为a,词汇级特征为b,则融合特征为{a,b},将融合特征输入至判别随机场进行语义标注,将融合特征经过全连接网络做非线性变换后,进行语义类别预测,输入概率最大的语义标注的类别标签为核心关键词语义。融合使用字符级和词汇级不同层次语义表征,更全面实现关键词驱动特征的表示。例如关键词驱动为{打开、查询、切换、关闭},经过关键词驱动的核心关键语义的提取,可判断关键词驱动中的具体操作含义,进而根据核心关键语义进行自动化测试。

进一步地,根据所述核心关键词语义生成移动端UI的测试用例,进而根据测试用例实现移动端全面准确的自动化测试。

本发明实施例中,参图3所示,所述根据所述核心关键词语义生成移动端UI自动化测试用例,包括:

S31、根据所述核心关键词语义确定移动端UI的测试用例字段;

S32、根据所述测试用例字段及预设的测试用例参数生成移动端UI自动化测试用例。

详细地,根据所述核心关键词语义确定每一个测试用例的动作、对象和值,进而确定移动端UI的测试用例字段,则测试用例字段包括测试用例ID、测试用例名称、超时时间、用例执行描述、用例集ID、用例状态、项目ID、用例属性、删除标志、定位控件等。如核心关键词语义是打开浏览器,则测试用例的动作为打开,对象为浏览器,值为浏览器页面的定位控件,进而确定测试用例字段中测试用例ID、测试用例名称、描述、用例集等,其中所述测试用例字段可以根据测试需求进行自定义设置。此外,在设计测试用例时,将定位控件的方式作为一个字段存储在用例信息中,方便之后解析用例时可以准确得知控件的信息。

具体地,根据所述测试用例字段及预先添加的测试用例字段对应的测试用例参数生成移动端UI自动化测试用例,进而按照测试流程执行自动化测试用例,以实现移动端UI自动化测试。

S4、将所述移动端UI自动化测试用例转换为移动端UI自动化测试命令,通过预设的自动化测试遍历算法根据所述移动端UI自动化测试命令进行自动化测试,得到测试报告,利用预设的用例通过率算法计算所述测试报告的用例通过率;

本发明实施例中,将所述移动端UI自动化测试用例中的用例执行描述转换为计算机可识别的移动端UI自动化测试命令,其中可利用计算机语句(如Java语句、Python语句等)将所述移动端UI自动化测试用例转换为移动端UI自动化测试命令。

进一步地,执行所述移动端UI自动化测试命令,以实现移动端UI的自动化测试,生成自动化测试的测试报告,进而根据测试评估对自动化测试用例做出改进。

本发明实施例中,所述测试报告包括测试用例通过数及测试用例失败数,进而根据测试报告判断测试用例设计的水平。

本发明实施例中,所述通过预设的自动化测试遍历算法根据所述移动端UI自动化测试命令进行自动化测试,得到测试报告,包括:

根据所述移动端UI自动化测试命令生成自动化测试树;

利用如下的代价值计算公式逐一计算所述自动化测试树中每条测试边的测试代价值:

其中,

根据所述测试代价值对所述自动化测试树进行优化,得到优化自动化测试树;

利用所述自动化测试遍历算法对所述优化自动化测试树进行自动化测试,得到测试报告。

详细地,所述自动化测试树为二叉树,将移动端UI自动化测试命令按照序号排序生成自动化测试树,如移动端UI自动化测试命令为{1,2,3,4,5,6},则将命令1作为根节点,依次生成自动化测试树。利用所述代价值计算公式计算自动化测试树中每条相邻命令之间的代价值,其中所述代价值计算公式中

具体地,根据所述测试代价值对自动化测试进行调整,将测试代价值小的测试命令进行相连,以得到优化自动化测试,提高自动化测试遍历的效率,进而利用自动化测试遍历算法对优化自动化测试进行自动化测试,得到自动化测试过程中测试命令通过数及测试命令失败数,其中自动化测试遍历算法是先遍历左子树中的测试命令,确定当前测试命令对应的控件是否被点击,再遍历右子树中的测试命令,直至所有测试命令对应的控件都被点击,完成自动化测试遍历,生成测试报告。

进一步地,根据测试报告中的测试命令通过数及测试命令失败数计算所述测试报告的用例通过率,进而根据用例通过率对测试用例进行优化,以提升自动化测试的准确性。

本发明实施例中,所述用例通过率是指在执行自动化测试的过程中,测试命令成功的条数占总测试命令的条数的占比。

本发明实施例中,所述利用预设的用例通过率算法计算所述测试报告的用例通过率,包括:

获取所述测试报告中的用例通过数及用例失败数;

利用如下所述用例通过率算法根据所述用例通过数、所述用例失败数及预设的用例修正因子计算所述测试报告的用例通过率:

其中,

详细地,统计所述测试报告中测试测试命令通过数及测试命令失败数,从而根据测试测试命令通过数及测试命令失败数统计测试用例中测试用例通过数及用例失败数,其中一个测试用例中包括多条测试命令,当测试用例中测试命令通过数大于预设的通过阈值时,则表示此条测试用例通过,反之,则表示此条测试用例失败。

具体地,所述用例通过率算法中的用例修正因子是防止在用例通过率与用例失败率误差较大时进行用例修正,保证用例通过率计算更准确,一般用例修正因子取值为0.5。

进一步地,根据所述用例通过率对自动化测试用例进行优化,保证自动化测试的准确性及全面性。

S5、根据所述用例通过率对所述移动端UI自动化测试用例进行优化,得到优化自动化测试用例,通过预设的自动化测试算法根据所述优化自动化测试用例对移动端UI进行自动化测试。

本发明实施例中,所述优化自动化测试用例是指对移动端UI自动化测试用例进行用例执行条件进行改进,使移动端自动化测试设计出更好的测试用例,提高移动端UI自动化测试的准确性。

本发明实施例中,所述根据所述用例通过率对所述移动端UI自动化测试用例进行优化,得到优化自动化测试用例,包括:

当所述用例通过率小于预设的用例通过阈值时,根据所述核心关键词语义对所述移动端UI自动化测试用例进行更新,得到更新自动化测试用例,直至所述用例通过率大于或等于预设的用例通过阈值;

当所述用例通过率大于或等于预设的用例通过阈值时,将所述更新自动化测试用例作为所述优化自动化测试用例。

详细地,当所述用例通过率小于预设的用例通过阈值时,根据所述核心关键词语义重新对移动端UI自动化测试进行更新调整,得到更新自动化测试用例,进而计算所述更新自动化测试用例的用例通过率,直至所述用例通过率大于或等于预设的用例通过阈值,当所述用例通过率大于或等于预设的用例通过阈值时,将所述更新自动化测试用例作为所述优化自动化测试用例。其中所述根据所述核心关键词语义对所述移动端UI自动化测试用例进行更新,得到更新自动化测试用例与S3中所述根据所述核心关键词语义生成移动端UI自动化测试用例步骤一致,在此不再赘述。

进一步地,执行所述优化自动化测试用例,以实现更加准确的移动端UI自动化测试。

本发明实施例中,所述通过预设的自动化测试算法根据所述优化自动化测试用例对移动端UI进行自动化测试,包括:

根据所述优化自动化测试用例生成自动化测试脚本;

通过所述自动化测试算法根据所述自动化测试脚本对移动端UI进行自动化测试。

详细地,将所述优化自动化测试用例生成自动化测试脚本,可通过计算机语句(如Python语句)生成自动化测试脚本,其中所述自动化测试脚本是自动化测试的程序代码。

具体地,所述自动化测试算法是通过自动化测试工具来执行自动化测试脚本,其中测试工具包括但不限于Selenium、Katalon Studio,进而根据自动化测试算法根据所述自动化测试脚本的接口执行自动化测试,以完成移动端UI自动化测试。

本发明实施例通过用户需求确定移动端UI业务逻辑,进而根据业务逻辑及页面属性生成移动端UI关键词,将关键词进行动态组合,实现移动端UI自动化测试的全面性;将组合关键词进行封装,得到关键词驱动,有利于提高测试用例的拓展性;对关键词驱动进行语义解析,进而根据语义解析后的关键词语义生成自动化测试用例,有利于更为准确且全面的设计测试用例,保证自动化测试的准确性;对自动化测试用例进行自动化测试,进而根据通过率对测试用例进行优化,实现更为全面的测试用例,以提高移动端自动化测试的准确性。因此本发明提出的基于语义识别的移动端UI自动化测试方法及装置,可以解决进行移动端UI自动化测试时的准确度较低的问题。

如图4所示,是本发明一实施例提供的基于语义识别的移动端UI自动化测试装置的功能模块图。

本发明所述基于语义识别的移动端UI自动化测试装置100可以安装于电子设备中。根据实现的功能,所述基于语义识别的移动端UI自动化测试装置100可以包括关键词生成模块101、关键词驱动封装模块102、测试用例生成模块103、用例通过率计算模块104及自动化测试模块105。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。

在本实施例中,关于各模块/单元的功能如下:

所述关键词生成模块101,用于获取用户需求,根据所述用户需求确定移动端UI业务逻辑,根据所述移动端UI业务逻辑及预设的移动端页面属性生成移动端UI关键词;

所述关键词驱动封装模块102,用于利用预设的动态组合算法根据所述用户需求对所述移动端UI关键词进行动态组合,得到组合关键词,根据所述移动端UI业务逻辑对所述组合关键词进行封装,得到关键词驱动;

所述测试用例生成模块103,用于利用预设的语义识别算法对所述关键词驱动进行语义解析,得到核心关键词语义,根据所述核心关键词语义生成移动端UI自动化测试用例;

所述用例通过率计算模块104,用于将所述移动端UI自动化测试用例转换为移动端UI自动化测试命令,通过预设的自动化测试遍历算法根据所述移动端UI自动化测试命令进行自动化测试,得到测试报告,利用预设的用例通过率算法计算所述测试报告的用例通过率;

所述自动化测试模块105,用于根据所述用例通过率对所述移动端UI自动化测试用例进行优化,得到优化自动化测试用例,通过预设的自动化测试算法根据所述优化自动化测试用例对移动端UI进行自动化测试。

详细地,本发明实施例中所述基于语义识别的移动端UI自动化测试装置100中所述的各模块在使用时采用与上述图1至图3中所述的基于语义识别的移动端UI自动化测试方法一样的技术手段,并能够产生相同的技术效果,这里不再赘述。

在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。

因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。

本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。

此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统实施例中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。

最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

相关技术
  • 停车优惠券发放方法、系统及存储介质
  • 一种商业优惠券发放方法
  • 一种将评分结果与优惠券发放相结合的商业系统
技术分类

06120116520542