[发明专利]生成遍历测试路径的方法及装置有效
申请号: | 201910984049.8 | 申请日: | 2019-10-16 |
公开(公告)号: | CN110895508B | 公开(公告)日: | 2022-05-24 |
发明(设计)人: | 陈方毅;陈晓青 | 申请(专利权)人: | 厦门美柚股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 洪铭福 |
地址: | 361000 福建省*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 生成 遍历 测试 路径 方法 装置 | ||
本发明公开了生成遍历测试路径的方法及装置。涉及软件测试领域,其中,方法通过收集测试样本数据并根据测试样本数据训练神经网络模型,然后将训练好的神经网络模型移植到测试设备上,然后根据神经网络模型预测并选择触发Bug数最多的遍历路径作为遍历测试路径,根据遍历测试路径在测试设备上进行待测控件集合的遍历测试。克服了现有技术中需要人工去适配测试路径和参数,导致测试效率较低而测试维护成本高的问题,实现了利用神经网络智能预测控件Bug数最多的遍历测试路径,提高了遍历测试质量和测试效率。可广泛应用于软件遍历测试领域。
技术领域
本发明涉及软件测试领域,尤其是一种生成遍历测试路径的方法及装置。
背景技术
在自动化测试领域中,遍历测试现已普遍应用于各类测试之中,并且发挥着重要的作用。遍历测试应当尽可能的去发现被测应用或控件的Bug,最大程度发挥其作用。在遍历测试过程中,遍历测试的路径对测试结果影响较大,如果测试路径覆盖度高且选择合理,则能够触发待测控件的更多Bug,而Bug直接用于优化控件,因此选择合理的遍历测试路径,以尽可能多触发Bug在遍历测试过程中非常重要。但是由于很多控件测试时,需要人工去适配测试路径和参数,测试效率较低而测试维护成本非常高。因此根据待测控件属性,生成能够触发最多Bug数的遍历测试路径是很有必要的。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的目的是提供一种根据神经网络结合待测控件属性,生成能够触发最多Bug数的遍历测试路径的方法。
本发明实施例所采用的技术方案是:
第一方面,本发明提供一种生成遍历测试路径的方法,包括:
收集测试样本数据组成测试样本集并根据所述测试样本集训练神经网络模型;
将训练得到的所述神经网络模型移植到测试设备上;
设定待测控件集合,根据所述神经网络模型预测并选择触发Bug数最多的遍历路径作为遍历测试路径,根据所述遍历测试路径在所述测试设备上进行所述待测控件集合的遍历测试。
进一步地,所述测试样本数据包括:控件属性信息和控件Bug数,所述控件属性信息包括以下至少一种:控件测试包名称、入口函数名、控件类型、控件编号、控件信息。
进一步地,还包括对所述测试样本数据进行预处理,所述预处理包括特征提取和数据清洗;
所述特征提取具体为:对非数字的所述控件属性信息进行聚类,并根据预设编码规则将经过聚类的所述控件属性信息转化成对应的编码向量;
所述数据清洗具体为:按照预设格式存储所述编码向量和所述控件Bug数。
进一步地,利用Tensorflow框架训练所述神经网络模型,训练过程具体为:
设置所述神经网络模型的参数搭建所述神经网络模型;
输入测试样本数据作为所述神经网络模型的训练样本集;
通过所述训练样本集训练所述神经网络模型并更新所述网络参数。进一步地,所述神经网络模型的损失函数为交叉熵损失函数。
进一步地,采用梯度下降法进行所述神经网络模型的训练。
进一步地,所述遍历测试路径指:设定点击时刻顺序,预测并选择每一点击时刻待测控件集合中Bug数最多的待测控件作为当前点击时刻的选择控件,所述选择控件的遍历顺序组成所述遍历测试路径。
第二方面,本发明还提供一种生成遍历测试路径的装置,包括:
神经网络模型生成模块:用于收集测试样本数据并根据所述测试样本数据训练神经网络模型;
神经网络模型移植模块:用于将所述神经网络模型移植到测试设备上;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门美柚股份有限公司,未经厦门美柚股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910984049.8/2.html,转载请声明来源钻瓜专利网。