首页 / 一种基于知识图谱的移动应用功能点测试知识库搭建的方法

一种基于知识图谱的移动应用功能点测试知识库搭建的方法实质审查 发明

技术领域

[0001] 本发明属于软件测试领域,特别根据众包测试报告生成知识图谱。对提供的众包测试报告进行文字、图像特征提取,构建知识图谱关系,完成共指消解,最后生成知识图谱。

相关背景技术

[0002] 近年来,移动互联网与移动设备发展迅猛,移动应用已经关系到社会生活的方方面面。因此,开发人员越发重视保障移动应用质量的测试技术。移动应用具有版本多样、迭代快速等特点,传统的软件测试技术无法满足需要。因此,针对移动应用的新的测试技术在学术界和工业界成为当前学术界和工业界的重要热点问题。当前主要的自动化测试以Monkey和Appium为主,前者是随即点击测试,后者需要人员编写测试脚本执行。
[0003] 尽管当前可用的移动应用测试工具能够大幅降低人力测试成本,但是仍然存在着很大的问题。如Monkey框架,它适用于所有的移动应用产品,但是其本身的点击操作是随机的,测试并不具备逻辑性,对于需要一定流程出现的逻辑性漏洞无法复现。相较之下,Appium采用人力编写测试脚本,具备逻辑性,但是其编写的脚本迁移性较差,在不同平台的同一款移动应用的测试脚本无法复用。同时,我们可以发现在不同的移动应用之间,某些脚本的执行流程其实高度相似,只是因为应用的版本、布局、分辨率等因素不同,需要编写多个重复的自动化测试脚本,大大增加了人力成本,减缓了测试的进度。
[0004] 我们发现当前主流的移动应用测试工具的人力成本冗余的主要原因在于对移动应用的特性没有一个整体的认识,仅仅因为一些像素的改变或者是布局的细微变化,就需要重新编写测试脚本。如果我们能够自动化识别这些细微的差异,我们就可以将功能测试脚本适用于所有的移动应用产品。同时,我们发现很多的移动应用具备相同的操作流程,如登录、购票等。我们将类似登录、购票这样的通用宏观逻辑称为移动应用的功能点。如果我们可以按照功能点组建相关的测试库,就可以帮助Appium进行适配于所有移动应用的自动化测试。
[0005] 因此,我们提出了一种基于知识图谱的移动应用功能点测试知识库搭建的方法。通过提供合规的众包测试报告,从中利用文本词性分析、截图控件识别来提取知识图谱特征,利用CNN控件识别、提取实体宏观概念从中提取出知识图谱关系,最后通过共指消解来构建实体之间的关系,构建一个强大的移动应用自动化测试知识库,以帮助现有的移动应用自动化测试更高效、便捷地测试移动应用。

具体实施方式

[0021] 以下通过特定的具体的实例说明本发明的实施方式,本领域的技术人员可由本说明书揭露的内容轻易地了解到本发明的其他优点和功效。
[0022] 本专利基于知识图谱的移动应用功能点测试知识库搭建的方法,主要采用了图像理解技术和文本分析技术,涉及到的具体关键技术有深度卷积神经网络(CNN)、OCR技术、Canny技术、word2vec技术、synonyms技术、jieba技术等。
[0023] 1、图像特征提取
[0024] 在本发明中,我们使用Canny和OCR技术对图像特征进行提取,首先通过OCR技术提取出截图中所有的文字信息,包括文字内容、位置等信息,接着使用Canny边缘提取算法,提取截图部件边缘,分割出一个个小部件,通过我们的Merge算法,将Canny和OCR算法的结果进行合并,主要对于包含、交叉关系进行合并操作。最后利用SIFT技术,对图像进行特征点提取,用于提高测试工具匹配的准确性。
[0025] 2、文本特征提取
[0026] 本发明中,我们采用word2Vec技术和jieba技术进行文本特征的提取。Word2Vec算法是一个浅层的神经网络。Word2Vec相较于之前的词向量分析模型来说,由于会考虑文本的上下文,所以使用效果更好。同时,其法维度的降低也让训练的速度得到快速的提升。并且Word2Vec的通用性很强,可以用在各种NLP的研究当中。Jieba技术根据前缀词典来对词图进行高效的扫描,从而生成句子中可能出现的所有词汇排列而成的有向无环图,生成对应的分词表。利用word2Vec提取文本的词向量,利用jieba技术提取分词,构建文本的特征。
[0027] 3、控件识别
[0028] 在本发明中,我们采用卷积神经网络(CNN)对提取的部件截图截图进行控件识别,将一张图片转化为一个特征向量,利用神经网络判断其部件类别。卷积神经网络是一类包含卷积计算且具有深度结构的前馈神经网络。卷积神经网络具有表征学习能力,能够按其阶层结构对输入信息进行平移不变分类。卷积神经网络仿造生物的视知觉机制构建,可以进行监督学习和非监督学习,其隐含层内的卷积核参数共享和层间连接的稀疏性使得卷积神经网络能够以较小的计算量对格点化特征。利用CNN技术,我们可以将提取的部件进行类别分析,给它打上按钮、输入框等标签,提高数据精确度。
[0029] 4、空间隔离分析
[0030] 在本发明中,我们使用Canny技术来对应用截图进行分割,提取出图像中每一个单独的控件进行分析。Canny边缘检测算法首先应用高斯滤波来平滑图像以去除噪声;其次找寻图像的强度梯度;接着应用非最大抑制技术来消除边误检;然后应用双阈值的方法来决定可能的边界;最后利用滞后技术来跟踪边界。
[0031] 5、中文近义词匹配
[0032] 在本发明中,我们使用synonyms进行近义词匹配。synonyms是一款高效且准确的中文近义词库,是众多中文近义词库中的佼佼者。该词库是通过Word2Vec为算法模型,对维基百科内的所有文本进行中文词汇训练的方法构建的。利用该技术,我们可以进行近义词的查找、词语句子相似度分析等工作。
[0033] 6、共指消解
[0034] 在本发明中,我们利用共指消解构建图数据库。针对每个功能场景维度文件,系统会按照顺序上传文件中顺序记录的节点。在上传的过程中,系统会将节点之间的前后继顺序添加至图谱中,同时还会寻找节点的相同节点排除冗余,找到节点的相似节点建立联系称之为相似,并标记每一个功能场景中的头节点与尾节点,将获取到的知识信息最大程度的保留在知识图谱当中。
[0035] 本发明的基于知识图谱的移动应用功能点测试知识库搭建的方法,主要包括:
[0036] 知识图谱特征提取模块:该模块主要负责将大量带有复现步骤的移动应用众包测试报告进行有效的信息提取和拆解,来帮助构建知识图谱。
[0037] 知识图谱关系提取模块:该模块是为了将知识图谱特征提取模块中分析出来的数据进行整合,知识图谱特征提取模块仅通过各种算法将文本和图片进行了特征的提取,但是并没有将两者的内容联系在一起,通过本模块,可以将图文部分整合在一起.[0038] 知识图谱共指消解模块:该模块是为了将知识图谱特征提取模块与知识图谱关系提取模块整理好的数据上传到指定的Neo4j图数据库中。
[0039] 知识图谱智能查询模块:该模块是为了帮助使用者快速了解知识图谱,并帮助移动应用自动化测试人员提供自动化功能点测试下一步该做什么的指引帮助。

当前第1页 第1页 第2页 第3页