一种AI智能软件测试方法技术

技术编号:30523517 阅读:28 留言:0更新日期:2021-10-27 23:08
本发明专利技术公开了一种AI智能软件测试方法,包括:步骤S1、定义训练网站测试流程中节点类型及确定节点状态判别方法;节点类型包括流程起始节点、流程中间节点和流程结束节点;步骤S2、以组件距离最小策略抽取节点不同类型输入元素组件与标签元素组件元素的配对关系;步骤S3、采用增强学习奖惩机制实现前置节点状态转移至当前节点状态的权重,遍历训练网站内容,得到带权重信息的业务流程森林;步骤S4、基于跳转时间响应条件,在业务流程森林中选择最优执行方案;步骤S5、按照最优执行方案对测试网站进行测试,得到测试结果。本发明专利技术利用AI学习训练网站的特定业务流程,实现对不同的测试网站进行智能软件测试,具有技术前瞻性。具有技术前瞻性。具有技术前瞻性。

【技术实现步骤摘要】
一种AI智能软件测试方法


[0001]本专利技术涉及软件测试
,具体涉及一种AI智能软件测试方法。

技术介绍

[0002]现有技术中,对于手机中安装的应用程序的测试,也有自动化测试替代人工测试的现有技术,一种是通过软件编程来自动测试应用程序的功能,这种纯软件的自动测试方法需要测试人员熟悉软件代码,能够编写出模拟用户操作的指令来实现手机的软件自动化测试,并且,这种软件控制软件的测试方法稳定性不高,容易出错且不容易纠错;另一种是基于机器视觉以智能机器人的机械臂来替代人工做测试活动。
[0003]然而以上两种测试方式都不能作为运用了真正的人工智能(Artificial Intelligence,AI)技术,现有技术中不存在利用人工智能进行软件测试的高智能技术。

技术实现思路

[0004]有鉴于此,本专利技术实施例提供了一种AI智能软件测试方法,以解决现有技术中自动化软件测试不够智能化的问题。
[0005]本专利技术实施例提供了一种AI智能软件测试方法,包括:
[0006]步骤S1、定义训练网站测试流程中节点类型及确定节点状态判别方法;节点类型包括流程起始节点、流程中间节点和流程结束节点,节点状态判别方法包括以节点所需参数来定义流程中间节点,以预设的提示信息来定义流程结束节点;
[0007]步骤S2、以组件距离最小策略抽取节点不同类型输入元素组件与标签元素组件元素的配对关系;
[0008]步骤S3、采用增强学习奖惩机制实现前置节点状态转移至当前节点状态的权重,遍历训练网站内容,得到带权重信息的业务流程森林;
[0009]步骤S4、基于跳转时间响应条件,在业务流程森林中选择最优执行方案;
[0010]步骤S5、按照最优执行方案对测试网站进行测试,得到测试结果;
[0011]其中,跳转时间响应条件包括:若跳转响应时间在0~2秒之间,则进入下一个节点;若跳转响应时间在2~5秒之间,对当前节点的权重进行第一变更,并进入下一个节点;若跳转响应时间在5~8秒之间,对当前节点的权重进行第二变更,并进入下一个节点;若跳转响应时间超过10秒,则中断本次测试。
[0012]可选地,步骤S3中还包括在遍历过程中,将使节点状态发生转移的元素的文本信息加入对应节点的别名集中;
[0013]步骤S5中测试网站的测试流程包括:
[0014]按照最优执行方案中节点状态的转移顺序,在流程起始节点的测试网站页面上查找与当前节点的别名集中的文本信息匹配的元素;
[0015]若存在该元素,则通过该元素转移至下一个节点,并在下一个节点的页面上查找与当前节点的别名集中的文本信息匹配的元素;
[0016]若至少有一个节点的页面上不存在与当前节点的别名集中的文本信息匹配的元素,则最优执行方案不适用于测试网站;
[0017]若由流程起始节点至流程结束节点的全部节点的页面上均存在与当前节点的别名集中的文本信息匹配的元素,则最优执行方案适用于测试网站。
[0018]可选地,采用Xpath、CSS
°
selector、id、(x,y)绝对坐标、text中的任意一种定位方式对查找到的元素进行定位并操作,使得转移至下一个流程节点。
[0019]可选地,流程起始节点、流程中间节点和流程结束节点通过预构的训练网站的树形结构图及对元素人工打标获取。
[0020]可选地,流程起始节点、流程中间节点和流程结束节点通过盲探方式获取。
[0021]可选地,步骤S3包括:
[0022]将流程起始节点的元素设置为流程遍历树的根元素;
[0023]若当前节点为非流程结束节点,则从流程起始节点至流程结束节点的路径上所有两两节点间状态转换权重减1;
[0024]若当前节点为流程结束节点,则从流程起始节点至流程结束节点的路径上所有两两节点间状态转换权重加100。
[0025]可选地,步骤S4中按照最短路径加权总和正值最大策略选择最优执行方案,包括:
[0026]在业务流程森林中选取深度最小的路径,
[0027]若深度最小的路径仅有一条,则判定该路径的加权总和是否为正值,若是,则选择该路径为最优执行方案;
[0028]若深度最小的路径有多条,则从中选择加权总和为正值且最大的一条路径作为最优执行方案;
[0029]若深度最小的路径的加权总和为非正值,则中断选择最优执行方案,并选取另一个训练网站来执行S1

S5。
[0030]可选地,步骤S2中计算组件间欧式距离、曼哈顿距离、切比雪夫距离或明可夫斯基距离,选择与输入元素组件距离最小的标签元素组件进行配对。
[0031]可选地,训练网站的树形结构图的预构步骤包括:
[0032]获取待测试用户界面的跳转信息;跳转信息包括跳转前界面节点、跳转元素及跳转后界面节点;每一个跳转信息的中间项为跳转元素;跳转元素包括交互按钮;
[0033]根据测试流程建立拓扑流程图;拓扑流程图包括一个根界面节点和一个或多个分支路径,每个分支路径上至少有一个跳转元素及对应的跳转后界面节点。
[0034]可选地,根据测试流程建立拓扑流程图包括:
[0035]对应于同一跳转前界面节点的不同跳转元素形成不同的分支路径,基于第一跳转元素对应的第一跳转后界面节点为第二跳转元素对应的第二跳转前界面节点的情况,将第一跳转元素、第二跳转元素设为同一分支路径上的相邻跳转元素;或,
[0036]基于预先建立的拓扑流程图,生成对应的积木子模块;积木子模块实质内容为拓扑流程图,积木子模块为具有命名的单框形式;
[0037]选择至少两个积木子模块,将积木子模块按照执行顺序连接,得到积木图;其中,相连接的两个积木子模块中,在执行顺序上前一个积木子模块对应的拓扑流程图的尾节点与后一个积木子模块对应的拓扑流程图中与尾节点具有相同节点名称的每一个首节点连
接。
[0038]本专利技术提供的技术方案带来的有益效果如下:
[0039]1、提出以AI学习特定业务流程来对不同测试网站进行软件测试,人工智能程度高,测试稳定性和适用性较好;
[0040]2、不依赖与机器视觉,减少硬件需求;
[0041]3、不仅可以应用于智能终端,支持测试的应用程序类型也扩展到PC终端、智能家居、车联网、POS机等交互比如硬键盘的测试领域。
附图说明
[0042]通过参考附图会更加清楚的理解本专利技术的特征和优点,附图是示意性的而不应理解为对本专利技术进行任何限制,在附图中:
[0043]图1示出了本专利技术实施例中一种AI智能软件测试方法流程图;
[0044]图2示出了本专利技术实施例中一种构建流程图得到的拓扑流程图示意图;
[0045]图3示出了本专利技术实施例中一种流程学习节点间状态转移权重变更图;
[0046]图4示出了本专利技术实施例中一种以最优路径对测试网站进行软件测试的流程图。
具体实施方式...

【技术保护点】

【技术特征摘要】
1.一种AI智能软件测试方法,其特征在于,包括:步骤S1、定义训练网站测试流程中节点类型及确定节点状态判别方法;所述节点类型包括流程起始节点、流程中间节点和流程结束节点;所述节点状态判别方法包括以节点所需参数来定义流程中间节点,以预设的提示信息来定义流程结束节点;步骤S2、以组件距离最小策略抽取节点不同类型输入元素组件与标签元素组件元素的配对关系;步骤S3、采用增强学习奖惩机制实现前置节点状态转移至当前节点状态的权重,遍历所述训练网站内容,得到带权重信息的业务流程森林;步骤S4、基于跳转时间响应条件,在业务流程森林中选择最优执行方案;步骤S5、按照所述最优执行方案对测试网站进行测试,得到测试结果;其中,所述跳转时间响应条件包括:若跳转响应时间在0~2秒之间,则进入下一个所述节点;若跳转响应时间在2~5秒之间,对当前所述节点的权重进行第一变更,并进入下一个所述节点;若跳转响应时间在5~8秒之间,对当前所述节点的权重进行第二变更,并进入下一个所述节点;若跳转响应时间超过10秒,则中断本次测试。2.根据权利要求1所述的AI智能软件测试方法,其特征在于,步骤S3中还包括在遍历过程中,将使节点状态发生转移的元素的文本信息加入对应节点的别名集中;步骤S5中所述测试网站的测试流程包括:按照最优执行方案中节点状态的转移顺序,在流程起始节点的测试网站页面上查找与当前节点的别名集中的文本信息匹配的元素;若存在该元素,则通过该元素转移至下一个节点,并在下一个节点的页面上查找与当前节点的别名集中的文本信息匹配的元素;若至少有一个节点的页面上不存在与当前节点的别名集中的文本信息匹配的元素,则所述最优执行方案不适用于所述测试网站;若由流程起始节点至流程结束节点的全部节点的页面上均存在与当前节点的别名集中的文本信息匹配的元素,则所述最优执行方案适用于所述测试网站。3.根据权利要求2所述的AI智能软件测试方法,其特征在于,采用Xpath、CSS
°
selector、id、(x,y)绝对坐标、text中的任意一种定位方式对查找到的元素进行定位并操作,使得转移至下一个流程节点。4.根据权利要求1所述的AI智能软件测试方法,其特征在于,所述流程起始节点、流程中间节点和流程结束节点通过预构的训练网站的树形结构图及对元素人工打标获取。5.根据权利要求1所述的AI智能软件测试方法,其特征在于,所述流程起始节点、流程中间节点和流程结束节点通过盲探方式获取。6.根据权利要...

【专利技术属性】
技术研发人员:师江帆
申请(专利权)人:苏州市龙测智能科技有限公司
类型:发明
国别省市:

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

1