基于自然语言分析的众测错误报告优先级排序方法技术

技术编号:11333460 阅读:141 留言:0更新日期:2015-04-23 00:57
基于自然语言分析的众测错误报告优先级排序方法,其特征是使用自然语言分析,对众测人员提交的错误报告进行排序。本发明专利技术提出了一种全新的基于众测场景的众测报告排序技术,主要用于解决众测场景下,错误报告过多,专业测试人员无法审查所有错误报告的问题。本发明专利技术具有以下有益效果:1、提出动态众测报告排序技术,引入了测试人员在审查结果,同时实时变更距离矩阵,使得审查效率更高;2、在测试人员不能及时审查的情况下,提出了静态众测报告排序技术,使得审查人员在后续的审查中能够保证较高的审查效率。

【技术实现步骤摘要】
基于自然语言分析的众测错误报告优先级排序方法
本专利技术属于计算机
,涉及软件测试技术,尤其是软件测试中测试用排序技术,用于专业测试人员在得到众测人员提交的错误报告后,动态获取错误报告优先级排序,辅助其对错误报告的审阅工作,为一种基于自然语言分析的众测错误报告优先级排序方法。
技术介绍
众测是指在软件正式发布之前,软件公司通过互联网,将测试任务分配给一大群和软件没有直接关系的个体,通常称之为众测人员。由众测人员向公司提交其错误报告给专业测试人员审查,如图1所示。错误报告通常包括由自然语言书写的测试环境、测试输入、测试步骤和测试结果,并辅助一些必要的截屏。由于市场特征,互联网软件的开发和更新周期都非常短。与此同时,互联网用户的忠诚度较低,一个错误可能导致大量用户流失和巨额经济损失。在软件公司专业测试人员相对短缺的情况下,众测技术在当前的互联网公司软件研发或更新过程中,被广泛采用。传统的测试中,有一些工具可以对错误报告进行自动审查。然而在众测环境下,由于众测人员的专业水平很难控制,公司专业测试人员通常人工逐一审查所有错误报告,以判断其有效性。由于公司鼓励众测人员提交更多的错误报告,这项审查工作会耗费大量的时间和人力成本。自然语言处理是基于机器学习的技术,将自然语言的文本通过一系列分词、关键词提取等技术进行理解。本专利技术中使用中文自然语言分析技术,结合提出动态错误报告排序(DTRP)算法和静态错误报告排序(STRP)算法,对错误报告进行排序,提高在众测环境下的错误报告审查效率。
技术实现思路
本专利技术要解决的问题是:提出一种基于自然语言分析的众测错误报告优先级排序的方法,减轻专业测试人员审查众测错误报告的时间和工作量,实现业务自动化,提高工作效率。本专利技术的技术方案为:基于自然语言分析的众测错误报告优先级排序方法,使用自然语言分析,对众测人员提交的错误报告进行排序,具体步骤为:1)收集并预处理错误报告:收集众测人员提交的错误报告,并根据设定的标准格式,对不符合标准格式的错误报告进行过滤;2)自然语言分析,对所有错误报告进行自然语言分析,包括以下四个子步骤:2a)分词:对错误报告中的自然语言描述的部分进行分词操作,将每份错误报告中的语句划分成独立的词语;2b)同义词替换:首先由人工生成一个同义词集合,即将指代同一对象的不同词语作为一个集合,用同义词集合中的一个词语作为代表词,来替换错误报告中含有的该同义词集合中的其他词语;2c)关键词提取:通过自然语言分析,将每份错误报告的关键词提取出来,按权重大小降序排列,权重的值表示该关键词能够代表语句含义的程度,取权重最大的k个关键词;2d)关键词向量模型KVM建立:根据关键词在所有错误报告中出现的次数,选出出现次数超过设定阈值的关键词,按出现次数降序排列,并选取出现次数最多的m个关键词,构成关键词集合;再根据关键词集合对每一个错误报告计算关键词向量,对于一个错误报告,若某关键词在其中出现,则该错误报告的关键词向量对应项的值为1;否则对应项的值为0;各错误报告的关键词向量构成关键词向量模型KVM;3)建立距离矩阵:根据步骤2)得到的关键词向量模型KVM,对每两个错误报告的关键词向量计算Jaccard距离,得到错误报告的距离矩阵;4)对错误报告排序:根据步骤3)得到的距离矩阵,针对有无专业测试人员及时反馈的不同情形,分别采用动态错误报告排序和静态错误报告排序,实现错误报告优先级排序,帮助专业测试人员发现错误:4a)当专业测试人员通过图形用户界面及时判断并反馈系统推荐的错误报告是否有效时,采用动态错误报告排序策略,此时的排序兼顾错误报告的多样性和准确性;4b)当专业测试人员不参与排序过程时,采用静态错误报告排序策略,此时的排序只会考虑错误报告的多样性。进一步地,步骤1)中对错误报告统一设定{E,I,O,D}的格式,其中E为测试环境,包括硬件参数、软件设置;I为测试输入,包括输入数据、操作步骤;O为测试输出,包括文本和截图;D为测试描述,用于帮助测试人员理解软件错误。错误报告由众测人员通过网络进行提交,收集完所有的错误报告后,统一存储在错误报告库,并对不符合设定格式的错误报告进行调整或舍弃。作为优选,步骤2a)的分词步骤中,对错误报告中的测试输入和测试描述进行分词操作。步骤2c)中,k为大于等于5的整数。k值越大,对语句含义的表达效果越好,时间代价越大。本专利技术中,众测人员是指互联网软件公司雇佣的具备一定专业基础知识的非专业测试人员;错误报告是指遵照固定格式,用自然语言撰写的错误报告,包括测试环境、测试输入、测试输出、测试描述四部分,由众测人员撰写提交。专业测试人员指了解软件的专业程序测试人员。本专利技术的自然语言分析根据错误报告的语言确定,对于中文语言,采用ICTCLAS中文自然语言处理引擎。本专利技术引入自然语言处理技术,将众测错误报告中的文本描述进行分词,同义词替换,关键词提取等技术。本专利技术提出了一种全新的基于众测场景的众测报告排序技术,主要用于解决众测场景下,错误报告过多,专业测试人员无法在可接受的时间和人力成本下审查所有错误报告的问题。本专利技术的有益效果在于两方面:在自然语言分析的基础上,对众测报告进行自动分类,1、提出了动态众测报告排序技术,引入了测试人员反馈审查结果,同时实时变更距离矩阵,使得审查效率更高;2、在测试人员不能及时审查的情况下,提出了静态众测报告排序技术,使得审查人员在后续的审查中能够保证较高的审查效率。附图说明图1为现有技术的众测的流程图。图2为本专利技术的错误报告排序流程图。具体实施方式本专利技术的目的是接收自然语言形式的众测错误报告,动态获取错误报告优先级排序,辅助测试人员对错误报告的审阅工作。如图2所示,本专利技术具体实施方式有以下四个步骤:错误报告收集,自然语言处理,距离矩阵建立和利用算法进行错误报告动态排序。1.错误报告收集以及预处理所有的错误报告由众测平台召集的参与众测的人员提供。错误报告分为四部分:运行环境、输入、输出、详细描述。其中,输入和详细描述本专利技术是本专利技术进行排序的主依据,错误报告中的运行环境和输出主要用于专业测试人员的审查。获得了错误报告后,进行后期处理。本专利技术中错误报告收集时,统一定义为{E,I,O,D}的格式。其中E为测试环境,包括硬件参数、软件设置等等;I为测试输入信息,包括输入数据、操作步骤等;O为测试输出信息,除文本外还包括必要的截图;D为测试描述,用来帮助测试人员理解软件错误。错误报告由众测人员通过网络进行提交。收集完所有的错误报告后,对不符合规范的测试报告视情况进行调整或舍弃。在此阶段应当以错误报告格式的统一性与尽可能大的数据量为预处理目标。2.自然语言分析由于错误报告采用自然语言,获得了错误报告后,应当首先进行对自然语言的处理。自然语言处理又分为四个部分:分词、同义词替换、关键词抽取和建立关键词向量模型。分词是自然语言处理的第一步,对于中文语言而言,它将汉字序列切分为一个个标记了词性的词组。具体地,本专利技术运用了ICTCLAS中文自然语言处理引擎来完成分词工作。同样,除中文以外的其他语言也有对应的分词处理引擎做类似的工作。自然语言处理的第二步是同义词替换。由于测试是由不同的众测用户同时进行的,而且错误报告也是由不同的众测用户完本文档来自技高网...
基于自然语言分析的众测错误报告优先级排序方法

【技术保护点】
基于自然语言分析的众测错误报告优先级排序方法,其特征是使用自然语言分析,对众测人员提交的错误报告进行排序,具体步骤为:1)收集并预处理错误报告:收集众测人员提交的错误报告,并根据设定的标准格式,对不符合标准格式的错误报告进行过滤;2)自然语言分析,对所有错误报告进行自然语言分析,包括以下四个子步骤:2a)分词:对错误报告中的自然语言描述的部分进行分词操作,将每份错误报告中的语句划分成独立的词语;2b)同义词替换:首先由人工生成一个同义词集合,即将指代同一对象的不同词语作为一个集合,用同义词集合中的一个词语作为代表词,来替换错误报告中含有的该同义词集合中的其他词语;2c)关键词提取:通过自然语言分析,将每份错误报告的关键词提取出来,按权重大小降序排列,权重的值表示该关键词能够代表语句含义的程度,取权重最大的k个关键词;2d)关键词向量模型KVM建立:根据关键词在所有错误报告中出现的次数,选出出现次数超过设定阈值的关键词,按出现次数降序排列,并选取出现次数最多的m个关键词,构成关键词集合;再根据关键词集合对每一个错误报告计算关键词向量,对于一个错误报告,若某关键词在其中出现,则该错误报告的关键词向量对应项的值为1;否则对应项的值为0;各错误报告的关键词向量构成关键词向量模型KVM;3)建立距离矩阵:根据步骤2)得到的关键词向量模型KVM,对每两个错误报告的关键词向量计算Jaccard距离,得到错误报告的距离矩阵;4)对错误报告排序:根据步骤3)得到的距离矩阵,针对有无专业测试人员及时反馈的不同情形,分别采用动态错误报告排序和静态错误报告排序,实现错误报告优先级排序,帮助专业测试人员发现错误:4a)当专业测试人员通过图形用户界面及时判断并反馈系统推荐的错误报告是否有效时,采用动态错误报告排序策略,此时的排序兼顾错误报告的多样性和准确性;4b)当专业测试人员不参与排序过程时,采用静态错误报告排序策略,此时的排序只会考虑错误报告的多样性。...

【技术特征摘要】
1.基于自然语言分析的众测错误报告优先级排序方法,其特征是使用自然语言分析,对众测人员提交的错误报告进行排序,具体步骤为:1)收集并预处理错误报告:收集众测人员提交的错误报告,并根据设定的标准格式,对不符合标准格式的错误报告进行过滤;2)自然语言分析,对所有错误报告进行自然语言分析,包括以下四个子步骤:2a)分词:对错误报告中的自然语言描述的部分进行分词操作,将每份错误报告中的语句划分成独立的词语;2b)同义词替换:首先由人工生成一个同义词集合,即将指代同一对象的不同词语作为一个集合,用同义词集合中的一个词语作为代表词,来替换错误报告中含有的该同义词集合中的其他词语;2c)关键词提取:通过自然语言分析,将每份错误报告的关键词提取出来,按权重大小降序排列,权重的值表示该关键词能够代表语句含义的程度,取权重最大的k个关键词,k为大于等于5的整数,k值越大,对语句含义的表达效果越好,时间代价越大;2d)关键词向量模型KVM建立:根据关键词在所有错误报告中出现的次数,选出出现次数超过设定阈值的关键词,按出现次数降序排列,选取出的m个关键词构成关键词集合;再根据关键词集合对每一个错误报告计算关键词向量,对于一个错误报告,若某关键词在其中出现,则该错误报告的关键词向量对应项的值为1;否则对应项的值为0;各错误报告的关键词向量构成关键词向量模型KVM;3)建立距离矩阵:根据步骤2)得到的关键词向量模型KVM,对每两个错误报告的关键词向量计算Jaccard距离,得到错误报告的距离矩阵;4)对错误报告排序:根据步骤3)得到的距离矩阵,针对有无专业测试人员及时反馈的不同情形,分别采用动态错误报告排序和静态错误报告排序,实现错误报告优先级排序,帮助专业测试人员发现错误:4a)当专业测试人员通过图形用户界面及时判断并反馈系统推荐的错误报告是否有效时,采用动态错误报告排序策略,此时的排序兼顾错误报告的多样性和准确性;4b)当专业测试人员不参与排序过程时,采用静态错误报告排序策略,此时的排序只会考虑错误报告的多样性。2.根据权利要求1所述的基于自然语言分析的众测错误报告优先级排序方法,其特征是步骤1)中对错误报告统一设定{E,I,O,D}的格式,其中E为测试环境,包括硬件参数、软件设置;I为测试输入,包括...

【专利技术属性】
技术研发人员:陈振宇冯洋宋硕房春荣张智轶燕宁
申请(专利权)人:南京慕测信息科技有限公司
类型:发明
国别省市:江苏;32

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

1