CN110928764A - 移动应用众包测试报告自动化评估方法及计算机存储介质 - Google Patents
移动应用众包测试报告自动化评估方法及计算机存储介质 Download PDFInfo
- Publication number
- CN110928764A CN110928764A CN201910957929.6A CN201910957929A CN110928764A CN 110928764 A CN110928764 A CN 110928764A CN 201910957929 A CN201910957929 A CN 201910957929A CN 110928764 A CN110928764 A CN 110928764A
- Authority
- CN
- China
- Prior art keywords
- index
- test report
- test
- defect
- score
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 219
- 238000011156 evaluation Methods 0.000 title claims abstract description 41
- 230000007547 defect Effects 0.000 claims abstract description 76
- 230000006870 function Effects 0.000 claims abstract description 56
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000005259 measurement Methods 0.000 claims abstract description 17
- 238000012545 processing Methods 0.000 claims abstract description 12
- 230000011218 segmentation Effects 0.000 claims abstract description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 18
- 230000009471 action Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 13
- 238000007572 expansion measurement Methods 0.000 claims description 13
- 238000011511 automated evaluation Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 238000013441 quality evaluation Methods 0.000 abstract description 6
- 238000010606 normalization Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 11
- 238000001914 filtration Methods 0.000 description 7
- 238000001303 quality assessment method Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012854 evaluation process Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 102100035115 Testin Human genes 0.000 description 1
- 101710070533 Testin Proteins 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000003245 working effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种移动应用众包测试报告自动化评估方法及计算机存储介质,所述方法包括以下步骤:1)输入测试报告集和工作者历史可信度,剔除无效测试报告,并将剩余的测试报告集进行分词和去停用词处理;2)将测试报告根据发现的缺陷进行聚类处理,形成若干类缺陷测试报告,选取出最大比例的等级作为该类缺陷测试报告的缺陷等级;3)构建若干个规范性指标及相应的阶跃型度量函数,对测试报告进行评价,并将评价转换为测试报告的规范性得分;4)根据缺陷等级和规范性得分得到测试报告的最终评分。本发明解决了现有众包测试报告质量评估方法缺乏测试报告内容质量性评价的不足,提高众包测试平台的整体性能。
Description
技术领域
本发明涉及一种自动化评估方法及计算机存储介质,特别是涉及一种移动应用众包测试报告自动化评估方法及计算机存储介质。
背景技术
移动应用众包测试的工作方式是通过互联网把过去由员工执行的移动应用软件的测试任务,分配给匿名网络用户进行测试。由于众包测试模式下人员多样性、互补性等带来的缺陷发现效率的提升,众包测试得到了业界的广泛关注,出现了很多众包测试商业平台(例如Applause、BaiduMTC、MoocTest、Testin等)。众包测试的工作方式可以帮助任务需求者获得大量自由工作者,通过利用这些工作者的智慧解决实际问题。但是在测试过程中有些恶意工作者为了追求自己利益最大化不认真工作,提交的测试结果质量低下,测试质量难以得到有效保障可能会给任务需求者造成严重的损失。针对此问题,许多研究者从测试报告着手进行研究。一些研究尝试通过减少审查的测试报告的数量来减少人工审查代价,提出众包测试报告优先级,通过利用文本信息和截图信息来对测试报告划分优先级,帮助开发者在有限的资源和时间内,能够尽可能多地检测揭露了不同缺陷的测试报告。还有一些研究也提出了众包测试报告模糊聚类问题,通过自动化的方法将测试报告划分到簇,开发者在每个簇中仅仅需要审查一个代表性的测试报告,极大地减少了审查的测试报告的数量。
然而,上述这些研究忽略了测试报告质量对人工审查效率的影响。不能够使得评审过程脱离人工技术,实现自动化评审。针对这个问题,目前也有一些众包测试报告质量评估框架来自动化地模拟测试报告的质量,它们通常通过定义一系列的可量化的指标来度量缺陷报告和需求规格说明书中期望的特征或者属性,从而实现质量评估。首先,采用NLP技术来预处理众包测试报告。然后框架定义了一系列的可量化的指标来度量测试报告的期望属性,并根据每个测试报告的文本内容来确定每个指标对应的数值型值。最后,利用阶步变换函数将每个指标的数值型值转化为标称型值(即好的、坏的),并聚合所有指标的标称值来预测测试报告的质量。
虽然现有的众包测试报告质量评估框架可以通过可量化指标能在一定程度上从不同的方面度量测试报告的质量,然而质量评估内容仍然仅仅局限于测试报告描述信息的格式规范,而没有涉及到报告内容中的具体缺陷。因此此评估框架仅仅是对测试报告描述信息规范性的评价,缺乏对测试结果的质量性的评价。
发明内容
发明目的:本发明要解决的技术问题是提供一种移动应用众包测试报告自动化评估方法及计算机存储介质,解决了现有众包测试报告质量评估方法缺乏测试报告内容质量性评价的不足,从发现的缺陷内容的等级和测试报告规范性两方面来对工作者的表现进行评价,能够正确衡量工作者的任务完成质量,剔除掉态度散漫或者恶意掘金的工作者,激励理性优秀工作者高质量地完成任务,并提高众包测试平台的整体性能。
技术方案:本发明所述的移动应用众包测试报告自动化评估方法,包括以下步骤:
(1)输入测试报告集和工作者历史可信度,剔除无效测试报告,并将剩余的测试报告集进行分词和去停用词处理;
(2)将步骤(1)中处理后的测试报告根据发现的缺陷进行聚类处理,形成若干类缺陷测试报告,将工作者历史可信度设为该缺陷的等级权重进行加权,选取出最大比例的等级作为该类缺陷测试报告的缺陷等级;
(3)构建若干个规范性指标及相应的阶跃型度量函数,对测试报告进行评价,并将评价转换为测试报告的规范性得分;
(4)根据步骤(2)中的缺陷等级和步骤(3)中的规范性得分得到测试报告的最终评分;
其中,步骤(2)和(3)的执行无先后顺序。
进一步的,步骤(1)中剔除无效测试报告的方法为:
若测试报告缺陷描述信息的文本长度小于等于4,则剔除该测试报告;若测试报告缺陷描述信息正则匹配包含([A][P])|([N][O])|([N][D]?[Q]?[O]),则剔除该测试报告,其中A为行为词,P为肯定词,N为否定词,O为对象词,D为动作词,Q为数量词。
进一步的,步骤(2)中根据发现的缺陷进行聚类处理的方法为:
(1)通过TF-IDF算法计算测试报告的tf-idf值;
(2)将所有测试报告的tf-idf值作为聚类数据对象On={x1,x2,...,xn}进行聚类,其中n为数据对象的数量。
进一步的,所述的聚类方法为MMDBK算法,具体步骤为:
(1)从数据对象On={x1,x2,...,xn}中选出距离最远的两个对象;
(2)通过近邻查找找出与聚类中心距离小于阈值d的所有对象加入此中心的临近类中,并重新计算此临近类的中心;
(3)计算DBI聚类指标;
(4)判断DBI聚类指标是否为最小,若为不是最小,则重复步骤(2)和步骤(3),若为最小则停止循环,将剩余数据对象归类到最邻近的类中;
(5)输出聚类结果。
进一步的,步骤(3)中的规范性指标包括:文本长度、可读性、动作词、对象词、否定词、模糊词和界面元素;
所述文本长度指标和可读性指标对应凸型扩展度量函数,所述凸型扩展度量函数为,当指标处于x2和x3之间时,该指标则为好评,当指标处于x1和x2之间或者处于x3和x4之间时,该指标则为中评,当指标小于x1或大于x4时,该指标则为差评,x1、x2、x3、x4为设定参数;
所述动作词指标和界面元素指标对应增加型扩展度量函数,所述增加型扩展度量函数为,当指标小于等于1时,该指标为差评,当指标大于1小于等于2时,该指标为中评,当指标大于2时,该指标为好评;
所述对象词指标和否定词指标对应凸型度量函数,所述凸型度量函数为,当指标小于等于1时或者大于2时,该指标为差评,当指标大于1小于等于2时,该指标为好评;
所述模糊词指标对应下降型扩展度量函数,所述下降型扩展度量函数为,当指标小于等于1时,该指标为好评,当指标大于1小于等于2时,该指标为中评,当指标大于2时,该指标为差评。
进一步的,所述规范性得分的转换方法为:
对所有测试报告按照好评、中评、差评的数量顺序进行排序,7个指标全部好评的规范性得分为max,7个指标全部差评的规范性得分为min,从低到高排序第i位测试报告的规范性得分为(max-min)*i/32+min。
进一步的,步骤(4)中最终得分的计算方法为:
最终得分=0.7*缺陷等级+0.3*规范性得分。
本发明所述的计算机存储介质,其上存储有计算机程序,其特征在于:所述计算机程序在被计算机处理器执行时实现权利要求1至7任一项所述的方法。
有益效果:本发明基于聚类算法和规范性度量提出一种移动应用众包测试报告自动化评估方法,能够从报告内容和报告规范性两方面实现自动化评估众包测试报告,能够不局限于测试报告的格式规范因素,还考虑到报告内容中的具体缺陷等级,对测试报告中测试结果的规范性和质量性进行了综合性评价,从而保障众包测试平台从多方面客观衡量众包测试工作者完成测试任务的质量,并且整个评估过程实现自动化计算,使得评审过程脱离人工技术,大大提高了对测试报告审查的效率。
附图说明
图1是本实施方式中方法的整体流程图;
图2是规范性指标的四种度量函数示意图;
图3是规范性指标的四种扩展度量函数示意图。
具体实施方式
本发明的具体实施方式首先对众包测试报告进行了预处理,其后从缺陷的严重性以及测试报告的规范性两方面出发,一方面通过对测试报告MMDBK算法聚类确定发现缺陷类型的数量,并按工作者历史可信度权重评估各类型的严重等级,另一方面通过报告描述规范性度量指标以及离散型度量函数计算各个测试报告的规范性得分,最终综合两者计算出每个测试报告最终获得的分数。本发明实施方式的方法流程如图1所示,输入为移动应用众包测试报告集TR和工作者历史可信度GU,步骤如下:
步骤1,输入测试报告集和工作者历史可信度,通过过滤规则剔除无效测试报告,此类报告直接评为0分,剩下的有效报告进行分词、去停用词处理。
由于人的惰性与趋利性,因此要考虑到有些工作者为了获取更多的利益而减少工作量。因此算法需要筛选出这些劣质或者无效的测试报告,以保证后期报告分析时测试报告质量的保证。通过对多个测试报告数据集的分析,发现测试报告集中存在一些特殊的测试报告,要分析出Bug的描述信息字段存在以下2种特殊语句:(1)短语句:Bug描述一栏为空或者仅仅包含几个字,无任何可读性描述。仅有一些测试步骤的描述;(2)伪语句:在Bug描述一栏中,主要说明测试用例被成功执行,不存在缺陷,测试通过。包含以上的两条之一的测试报告就属于无效的测试报告,它们没有包含任何与软件缺陷有关的信息。例如Bug描述字段为空或者Bug描述字段长度为1,都意味着此测试报告无意义。测试报告Bug描述字段为“没有发现Bug”,则说明测试通过。因此为了提高测试报告数据集的处理效率,在对其进行处理之前,需要过滤掉这些无效测试报告。
经过分析归纳,发现一方面测试报告描述信息过少,能够直接过滤。另一方面,包含伪语句的测试报告的描述信息多由陈述语句构成,经过抽样随机10%,发现描述信息普遍包含特殊的字符串,例如,“测试通过”、“执行成功”、“未发现”、“无Bug”、“没有发现一个缺陷”等。由此可以总结出以下两条过滤规则:
(1)如果Bug描述的文本长度小于等于4,则过滤测试报告;
(2)如果Bug的描述信息正则匹配能够包含([A][P])|([N][O])|([N][D]?[Q]?[O]),则过滤测试报告。其中A为行为词,P为肯定词,N为否定词,O为对象词,D为动作词,Q为数量词,它们包含的特定词语如表1所示。
表1正则语句词汇表
过滤掉无效测试报告后,需要进一步对测试报告进行预处理,由于测试报告是由中文自然语言构成的,因此采用NLP技术来对测试报告进行处理,主要包括单词分割和停用词移除,停用词移除即去停用词,是指将报告中无意义的词去掉。考虑到中文汉字分词的艰难,本文借助python中专业的中文NLP工具NLPIR分词工具来实行处理。
步骤2,用TF-IDF算法求出有效报告集的词频和逆文本频率指数,作为聚类的指标对象,采用MMDBK(Max-Min and Davies-Bouldin Index based K-means)聚类算法对测试报告内容聚类,同一类测试报告都报告了同一个缺陷。
由于测试报告和发现的缺陷一一对应,本方法采取直接对测试报告聚类的方法,通过TF-IDF算法计算预处理后的测试报告tf-idf值,tf-idf值表示了词频和逆文本频率指数,将所有测试报告的tf-idf值作为聚类数据对象On={x1,x2,...,xn},利用MMDBK算法对测试报告进行聚类。
MMDBK算法是针对K-means算法缺陷而改进的聚类算法,它对K-means算法中聚类个数K的确定以及K个聚类中心的选定作了改进,通过使用Davies-Bouldin Index(缩写为DBI)聚类指标和最大最小距离法,确定最佳聚类个数以及选取新的聚类中心,以保证各个类之间具有较小的相似度,实施流程如下所示:
step1:从n个数据对象On={x1,x2,...,xn}中选出距离最远的两个对象x1和x2;为了避免K-means算法在选取聚类中心时过于临近而导致聚类边界模糊的问题,本发明选取两个距离最远的对象,形成两个初始聚类,以保证后续计算中不同类之间较低的相似度。
step2:通过近邻查找找出与聚类中心距离小于阈值d的所有对象加入此中心的临近类中,并重新计算此临近类的中心。
找到了初始的两个聚类中心并更新类中心后,再确定聚类个数并找到剩下的K-2个聚类中心,使得个聚类中心之间的相似度尽量低是算法的关键,具体为:已知c1,c2两个初始聚类中心,分别计算出剩余对象到c1和c2的距离Dj1和Dj2,若Dk=max{min(Dj1,Dj2)},j=1,2,...,n,并且Dk>θ·D12,D12为c1和c2的距离,则取xj为第3个聚类中心,c3=xj。如果c3存在,则计算Dk=max{min(Dj1,Dj2,Dj3)},j=1,2,...,n,若Dk>θ·D12,则找到了第4个聚类中心;以此类推,直到Dk>θ·D12不满足时,则结束聚类中心的寻找。
step3:计算更新DBI值,将其与上一轮的DBI值比较(第一轮与初始值比较),若小于等于上一轮的值,则符合循环条件
以Davies-Bouldin Index(DBI)聚类指标,以此来进行聚类结果的评估。DBI聚类指标是一种非模糊型的集群评估指标,主要是以类间的分离度和类内的内聚度两种因素作为依据,即不同类之间相异性高,而同类之中的数据对象相似性高。当类内各数据对象间距离越小而类间距离越大,DBI值也就越小,就表明此聚类数目下的聚类结果最佳。其类间距离和类内距离计算公式如下:
其中x表示第i个类内的数据对象,vi表示第i个类的质心,Ci表示第i个类内的数据对象数目,||·||表示欧式距离,Si第i个类内各数据对象与质心vi的标准误差,di,j表示第i个类与第j个类质心之间的欧式距离。Davies-Bouldin Index公式为:
其中Si表示第i个类的类内距离,Sj表示第j个类的类内距离,di,j表示i与第j个类间的距离,K表示聚类个数。
好的聚类结果应该是同一类间的类内距离小,类间距离大,能够满足这个条件,即分子越小,分母越大时,DBI值越小,即通过这个值可得到最佳聚类数目。
step4:若符合条件,则寻找新的聚类中心,重复步骤(2-3);
step5:若不符合条件,则停止循环,将剩余数据对象归类到最邻近的类中;
step6:输出聚类结果。
聚类完成后,每一类都可以被看作是待测软件的某一个缺陷的测试报告集,针对一种缺陷,根据工作者填写的测试报告的等级进行评估。优先考虑测试历史可信度高的工作者的测试报告,根据平台参与工作者的历史可信度进行归一化处理,作为权重系数分别计算出测试报告集中此类缺陷的较轻、一般、严重、致命的比例系数,选取比例最高的一种缺陷等级作为此类缺陷的最终等级。
影响的大小定义为软件缺陷的严重性,概括为以下四种级别:
(1)较轻:一些小缺陷如有错别字、文字排版差等,对功能几乎没有影响,可正常使用。
(2)一般:不太严重的错误,如次要功能部分没有实现、用户界面差和响应时间长等。
(3)严重:指主要功能模块没有实现,主要功能部分丧失,次要功能全部丧失。
(4)致命:指能够造成***崩溃、死机,或造成数据丢失、主要功能完全丧失等。
整个测试报告数据集被聚类成N类缺陷,分别为测试报告集合Cla1、Cla2、……、ClaN,每一类中又包含着4个等级的测试报告,其中每一类每个等级的集合中包含mi,j(j=1,2,3,4分别表示较轻、一般、严重、崩溃)个测试报告。Clai,j,k表示第i缺陷中第j级的第k测试报告,对应提交测试报告的工作者历史可信度用Ui,j,k表示,指第i第j级的第k测试报告的提交者的贡献度,TR为所有测试报告数量,即对应的工作者数量。我么对贡献度进行标准归一化,求得所有用户历史可信度的均值为:
用户历史贡献值的方差为:
归一化后为:
针对每一类缺陷,分别计算较轻、一般、严重、致命的比例系数
其中δ是测试报告系数,一般设置为0.8。
我们选择Bi=max(Bi,1,Bi,2,Bi,3Bi,4)所属的等级作为第i类缺陷的等级。同时设定每种等级价值比例,等级为致命、严重、一般、较轻的评分分别为10、7.5、5、2.5分。
步骤3,对每一类的测试报告,将已有工作者历史可信度设为测试报告等级权重,结合每类缺陷数量确定每个等级的比例,选取出最大比例的等级作为此类缺陷的最终等级,根据等级设定得到相应缺陷等级分数。
步骤4,从报告描述规范性出发,定义了7个可量化的规范性指标及相应的阶跃型度量函数,通过度量函数将指标的数量值转化为质量优劣级别,并根据7个指标质量“好”、“中”、“差”数量利用线性插值法得到相应规范性分数。
测试报告的规范性反应了众包测试工作者完成任务的能力与态度,是工作者测试报告评价的因素之一,因此为了更准确地评价测试报告的规范性,本方法构建了7个可量化的指标来度量测试报告的质量,主要对缺陷描述信息或测试步骤做评估:
(1)文本长度:文本长度这里指测试报告中缺陷描述信息中包含汉字的数量,文本长度保持在一个合适的数值的测试报告才是质量较好的。
(2)可读性:可以度量文本的阅读难度,度量公式为Y=14.9596X1+39.07746X2-2.48X3,其中,X1表示难词的比例,X2表示句子的数量,X3表示汉字的平均笔画数。
(3)动作词:在描述缺陷时,往往会在测试步骤中描述动作序列,这些动作是测试工作者触发软件的界面或接口事件的关键。因此需要关注测试报告中的动作词,如“打开”、“点击”、“退出”等。
(4)对象词:当测试工作者发现软件的缺陷时,他们会用一些能体现***错误的词语来描述这种行为,比如“问题”、“缺陷”、“Bug”等。
(5)否定词:当测试工作者发现软件的缺陷时,他们会用一些否定的词语来描述***功能的缺失,比如“缺失”、“失败”、“失效”等。
(6)模糊词:在测试过程中,测试工作者如果遇到不明确或者不确定的缺陷时,更倾向于使用一些模糊的词汇来描述,这些描述可能会给测试报告的理解带来困难。模糊词有“几乎”、“少数”、“可能”、“一般”等。
(7)界面元素:移动应用软件界面是由许多交互组件组成的,软件测试时需要对相应组建进行点击、输入、滑动等操作,描写测试步骤中描述动作序列时,必定会包含这些界面元素,如“按钮”、“滑动条”等。
考虑到测试步骤的长度是根据软件复杂程度而定的,无法用一个合适的文本长度来度量,于是针对已经预处理完的分词文本,对缺陷描述信息用文本长度进行单独量化,对缺陷描述信息和测试步骤用剩余的6个指标共同量化。最后为每个测试报告都生成一个7维的指标向量,每个测试报告都可以用一个7维向量表示。评估的质量值表示为“好评”、“中评”、“差评”,构建度量函数来将连续值转化为离散值。
度量函数被分为四种:增长型度量函数、下降型度量函数、凸型度量函数、凹型度量函数,如图2所示:
(1)增长型度量函数:当指标小于x1时,该指标则为差评,当指标大于x1时,该指标则为好评。
(2)下降型度量函数:当指标小于x1时,该指标则为好评,当指标大于x1时,该指标则为差评。
(3)凸型度量函数:当指标处于x1和x2之间时,该指标则为好评,当指标小于x1或大于x2时,该指标则为差评。
(4)凹型度量函数:当指标处于x1和x2之间时,该指标则为差评,当指标小于x1或大于x2时,该指标则为好评。但是上述度量函数只能划分出好与差两种离散值,需要再对度量函数进行扩展,增加分界的参数x2、x3、x4,使得扩展的度量函数能划分出好、中、差三种离散值,其示意图如图3所示。
表2中为7个指标对应的度量函数类型以及函数的参数设置,对于增长型和下降型度量函数,使用0-a-b-∞形式来表示参数区间,表示为三个区间。对于凸型和凹型度量函数,使用0-a-b-c-d-∞形式来表示参数区间,表示为五个区间。
表2评价指标的度量函数
测试报告中,文本长度最适合的长度应该是15-30,太长或太短的文本都会影响测试报告的质量,因此用凸型扩展度量函数来评估,可读性同样如此,具体的参数会通过实验调试获得。对象词和否定词指标用明确的数字表示,如果文本中包含0个或2个以上的对象词或者否定词,则认为测试报告是低质量的,如果只有1个报错词或者否定词,认为是高质量的,这里依据原型的凸型度量函数。动作词和界面元素是用增加型扩展度量函数,即如果包含这些词越多,则认为该指标上测试报告质量越好。只有模糊词指标属于下降型扩展度量函数,模糊词越多,则测试报告质量越差。
经过度量函数的设置的参数进行分类,可以按指标得到测试报告的“好评”、“中评”和“差评”,为了能将多个指标的评价汇总,我们对三种不同的评价对应不同的分数等级,无效的测试报告都设定为0分;最优的测试报告,获得7个“好评”则是满分10分;最差的有效测试报告,7个“差评”被设定为1分的底分,中间按照均匀分布得分。即将7个指标质量转换成规范性分数的方法为线性插值法。5种指标质量可以为“好”、“中”、“差”,2种指标质量可以为“好”和“差”,最后总结出7个指标“好”、“中”、“差”数量的组合,一共会有33种质量评价结果。对此33种结果采用线性插值法确定分数,最高7个好评分数为max,这里是10分,最低7个差评分数为min,这里是1分,在所有质量评价结果从低到高第i位的结果的得分为(max-min)*i/32+min。最后可以得到测试报告规范性的质量得分如表3所示。
表3测试报告的规范性得分
步骤5,通过缺陷等级和规范性得分加权求和得到测试报告最终评分。缺陷等级分数权重为0.7,规范性得分权重为0.3。
本方法程序实现的伪代码如下所示:
输入:测试报告集,工作者历史可信度
CTRAEA(TR,GU)
1for i in range(n)//预处理阶段
2if TRi符合过滤规则
3mTRi=0,delete TRi//无效报告记为0分,并剔除
4统计无效报告数量//此数值评估过滤规则的准确性
5newTR=split(TR)//对所有有效报告分词,去停用词
6CN=Cluster(newTR)//聚类评价缺陷等级
7for i in range(N)遍历每一类缺陷
8for j in range(4)//遍历此类缺陷的每一等级
9for k in range(mi,j)//遍历此等级的所有测试报告
11Bi=max(Bi,1,Bi,2,Bi,3Bi,4)//确定缺陷等级分数
12DGi=ratio(Bi)//确定缺陷等级分数
13for i in range(m)//测试报告规范性度量
14ZBi=newTERQAF(newTRi)
15QGi=search(ZBi)
16Rwi=a*DGi+(1-a)*QGi//将缺陷等级分数与规范性分数加权求和,a一般为0.7
17输出mTRi和Rwi
本发明的实施效果验证如下所示,用到的实验数据集是从Kibug众测平台获取到的,该平台成立于2012年,是一个众包任务的分发、收集和分析平台。这里收集了4个测试任务,分别是图个乐、爱逛街、网易云、优播客。
实施例主要摘取了属性为“设备版本“、”网络“、”等级“、”Bug描述“以及”测试步骤“的几列作为研究关键词。以上4个众包测试任务结束时,绝大部分缺陷都已经被检出,并且每个提交的测试报告已经被管理人员审核,并且标记上“有效”、“无效”的标签,标注人员还记录了每个移动应用软件的缺陷数量,标注结果统计在下表4中。
表4测试报告标注结果
总计收集到1380个测试报告,其中包含图个乐291个,爱逛街的408个,网易云的238个,优播客的443个。四个测试报告集中无限测试报告数量分别是61、193、149和238。
本实施例的预处理阶段将所有测试报告作为过滤器的输入数据并运行,筛选出有效和无效的测试报告,已知标注的无效测试报告分别是61、193、149、238个,经过两条规则过滤后,正确过滤了61、189、147和232个无效的测试报告,过滤准确率在97.48%-100%,说明过滤规则是有效的,但是错误过滤的报告数量比未正确过滤的报告数量多,经人工检查后,发现主要是有效的测试报告语句中包含“无”字,能够被正则匹配到,因此被过滤。
预处理完成后,则通过MMDBK算法对测试报告聚类并确定每类缺陷等级,表5是缺陷评估与标注结果的准确性比较。
表5缺陷等级评估结果
表5中缺陷等级评估结果准确性都在90%左右,最高到达93.65%,结果说明聚类后再综合提交者能力和缺陷等级参数进行评估,准确性较高。
在质量性评估的文本长度指标中,为了确定参数x1、x2、x3和x4的具体数值,我们采用控制变量法,固定三个参数的值,逐渐增加一个参数的值,利用相对误差的评价指标比较预测结果的精度,得到文本长度4个参数最佳取值分别为9、15、23和32。同样得到可读性参数最佳取值为-5、-1、6和12。用上文得到的参数进行最终评分,得到测试报告的重要性和规范性的综合得分。计算出每个测试报告得分的相对误差,取平均值作为此方法对软件评估的误差,其相对误差如下表6所示。
表6最终得分精度指标结果
从实验数据可以看出本实施例的方法评估测试报告的分数与标注得分平均相对误差为9.24%,4个软件的平均相对误差皆不超过10%,由此可见本方法的准确性和高效性。本发明可以应用于众包测试平台测试报告评分机制中,在此过程能自动化评估出测试报告的质量得分,从而保障众包测试平台从多方面客观衡量众包测试工作者完成测试任务的质量,降低了众包测试平台所需花费的专家成本,增加了商业利益。例如在对移动应用软件测试评估时,使用本发明的方法可以有效的评估效率,降低评估成本,同时还能从报告内容和报告规范性两方面评估客观评估,提升了评估结果的准确度和可靠性。
本发明实施例如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实例不限制于任何特定的硬件和软件结合。
相应的,本发明的实施例还提供了一种计算机存储介质,其上存储有计算机程序。当所述计算机程序由处理器执行时,可以实现前述移动应用众包测试报告自动化评估方法。例如,该计算机存储介质为计算机可读存储介质。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
Claims (8)
1.一种移动应用众包测试报告自动化评估方法,其特征在于,包括以下步骤:
(1)输入测试报告集和工作者历史可信度,剔除无效测试报告,并将剩余的测试报告集进行分词和去停用词处理;
(2)将步骤(1)中处理后的测试报告根据发现的缺陷进行聚类处理,形成若干类缺陷测试报告,将工作者历史可信度设为该缺陷的等级权重进行加权,选取出最大比例的等级作为该类缺陷测试报告的缺陷等级;
(3)构建若干个规范性指标及相应的阶跃型度量函数,对测试报告进行评价,并将评价转换为测试报告的规范性得分;
(4)根据步骤(2)中的缺陷等级和步骤(3)中的规范性得分得到测试报告的最终评分;
其中,步骤(2)和(3)的执行无先后顺序。
2.根据权利要求1所述的移动应用众包测试报告自动化评估方法,其特征在于,步骤(1)中剔除无效测试报告的方法为:
若测试报告缺陷描述信息的文本长度小于等于4,则剔除该测试报告;若测试报告缺陷描述信息正则匹配包含([A][P])|([N][O])|([N][D]?[Q]?[O]),则剔除该测试报告,其中A为行为词,P为肯定词,N为否定词,O为对象词,D为动作词,Q为数量词。
3.根据权利要求1所述的移动应用众包测试报告自动化评估方法,其特征在于,步骤(2)中根据发现的缺陷进行聚类处理的方法为:
(1)通过TF-IDF算法计算测试报告的tf-idf值;
(2)将所有测试报告的tf-idf值作为聚类数据对象On={x1,x2,...,xn}进行聚类,其中n为数据对象的数量。
4.根据权利要求3所述的移动应用众包测试报告自动化评估方法,其特征在于:所述的聚类方法为MMDBK算法,具体步骤为:
(1)从数据对象On={x1,x2,...,xn}中选出距离最远的两个对象;
(2)通过近邻查找找出与聚类中心距离小于阈值d的所有对象加入此中心的临近类中,并重新计算此临近类的中心;
(3)计算DBI聚类指标;
(4)判断DBI聚类指标是否为最小,若为不是最小,则重复步骤(2)和步骤(3),若为最小则停止循环,将剩余数据对象归类到最邻近的类中;
(5)输出聚类结果。
5.根据权利要求1所述的移动应用众包测试报告自动化评估方法,其特征在于:步骤(3)中的规范性指标包括:文本长度、可读性、动作词、对象词、否定词、模糊词和界面元素;
所述文本长度指标和可读性指标对应凸型扩展度量函数,所述凸型扩展度量函数为,当指标处于x2和x3之间时,该指标则为好评,当指标处于x1和x2之间或者处于x3和x4之间时,该指标则为中评,当指标小于x1或大于x4时,该指标则为差评,x1、x2、x3、x4为设定参数;
所述动作词指标和界面元素指标对应增加型扩展度量函数,所述增加型扩展度量函数为,当指标小于等于1时,该指标为差评,当指标大于1小于等于2时,该指标为中评,当指标大于2时,该指标为好评;
所述对象词指标和否定词指标对应凸型度量函数,所述凸型度量函数为,当指标小于等于1时或者大于2时,该指标为差评,当指标大于1小于等于2时,该指标为好评;
所述模糊词指标对应下降型扩展度量函数,所述下降型扩展度量函数为,当指标小于等于1时,该指标为好评,当指标大于1小于等于2时,该指标为中评,当指标大于2时,该指标为差评。
6.根据权利要求5所述的移动应用众包测试报告自动化评估方法,其特征在于,所述规范性得分的转换方法为:
对所有测试报告按照好评、中评、差评的数量顺序进行排序,7个指标全部好评的规范性得分为max,7个指标全部差评的规范性得分为min,从低到高排序第i位测试报告的规范性得分为(max-min)*i/32+min。
7.根据权利要求1所述的移动应用众包测试报告自动化评估方法,其特征在于,步骤(4)中最终得分的计算方法为:
最终得分=0.7*缺陷等级+0.3*规范性得分。
8.一种计算机存储介质,其上存储有计算机程序,其特征在于:所述计算机程序在被计算机处理器执行时实现权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910957929.6A CN110928764B (zh) | 2019-10-10 | 2019-10-10 | 移动应用众包测试报告自动化评估方法及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910957929.6A CN110928764B (zh) | 2019-10-10 | 2019-10-10 | 移动应用众包测试报告自动化评估方法及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110928764A true CN110928764A (zh) | 2020-03-27 |
CN110928764B CN110928764B (zh) | 2023-08-11 |
Family
ID=69848814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910957929.6A Active CN110928764B (zh) | 2019-10-10 | 2019-10-10 | 移动应用众包测试报告自动化评估方法及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110928764B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109784637A (zh) * | 2018-12-13 | 2019-05-21 | 华为终端有限公司 | 应用于处理平台数据分析的方法和装置 |
CN111815167A (zh) * | 2020-07-09 | 2020-10-23 | 杭州师范大学 | 一种自动化众包测试绩效考核方法和装置 |
CN112416780A (zh) * | 2020-11-25 | 2021-02-26 | 南京大学 | 一种众包测试报告的处理和分类方法 |
CN112434518A (zh) * | 2020-11-30 | 2021-03-02 | 北京师范大学 | 一种文本报告打分方法及*** |
CN112527611A (zh) * | 2020-09-24 | 2021-03-19 | 上海趣蕴网络科技有限公司 | 一种产品健康度评估方法及*** |
CN113743096A (zh) * | 2020-05-27 | 2021-12-03 | 南京大学 | 一种基于自然语言处理的众包测试报告相似度检测的方法 |
CN113780366A (zh) * | 2021-08-19 | 2021-12-10 | 杭州电子科技大学 | 基于ap近邻传播算法的众包测试报告聚类方法 |
US11386299B2 (en) | 2018-11-16 | 2022-07-12 | Yandex Europe Ag | Method of completing a task |
US11416773B2 (en) | 2019-05-27 | 2022-08-16 | Yandex Europe Ag | Method and system for determining result for task executed in crowd-sourced environment |
US11475387B2 (en) | 2019-09-09 | 2022-10-18 | Yandex Europe Ag | Method and system for determining productivity rate of user in computer-implemented crowd-sourced environment |
US11481650B2 (en) | 2019-11-05 | 2022-10-25 | Yandex Europe Ag | Method and system for selecting label from plurality of labels for task in crowd-sourced environment |
US11727329B2 (en) | 2020-02-14 | 2023-08-15 | Yandex Europe Ag | Method and system for receiving label for digital task executed within crowd-sourced environment |
US11727336B2 (en) | 2019-04-15 | 2023-08-15 | Yandex Europe Ag | Method and system for determining result for task executed in crowd-sourced environment |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108804319A (zh) * | 2018-05-29 | 2018-11-13 | 西北工业大学 | 一种改进Top-k众包测试平台任务的推荐方法 |
JP2018194810A (ja) * | 2017-05-15 | 2018-12-06 | ネイバー コーポレーションNAVER Corporation | デバイス制御方法及び電子機器 |
CN109670727A (zh) * | 2018-12-30 | 2019-04-23 | 湖南网数科技有限公司 | 一种基于众包的分词标注质量评估***及评估方法 |
-
2019
- 2019-10-10 CN CN201910957929.6A patent/CN110928764B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018194810A (ja) * | 2017-05-15 | 2018-12-06 | ネイバー コーポレーションNAVER Corporation | デバイス制御方法及び電子機器 |
CN108804319A (zh) * | 2018-05-29 | 2018-11-13 | 西北工业大学 | 一种改进Top-k众包测试平台任务的推荐方法 |
CN109670727A (zh) * | 2018-12-30 | 2019-04-23 | 湖南网数科技有限公司 | 一种基于众包的分词标注质量评估***及评估方法 |
Non-Patent Citations (1)
Title |
---|
陈信: "众包测试报告的挖掘与评估" * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11386299B2 (en) | 2018-11-16 | 2022-07-12 | Yandex Europe Ag | Method of completing a task |
CN109784637A (zh) * | 2018-12-13 | 2019-05-21 | 华为终端有限公司 | 应用于处理平台数据分析的方法和装置 |
US11727336B2 (en) | 2019-04-15 | 2023-08-15 | Yandex Europe Ag | Method and system for determining result for task executed in crowd-sourced environment |
US11416773B2 (en) | 2019-05-27 | 2022-08-16 | Yandex Europe Ag | Method and system for determining result for task executed in crowd-sourced environment |
US11475387B2 (en) | 2019-09-09 | 2022-10-18 | Yandex Europe Ag | Method and system for determining productivity rate of user in computer-implemented crowd-sourced environment |
US11481650B2 (en) | 2019-11-05 | 2022-10-25 | Yandex Europe Ag | Method and system for selecting label from plurality of labels for task in crowd-sourced environment |
US11727329B2 (en) | 2020-02-14 | 2023-08-15 | Yandex Europe Ag | Method and system for receiving label for digital task executed within crowd-sourced environment |
CN113743096A (zh) * | 2020-05-27 | 2021-12-03 | 南京大学 | 一种基于自然语言处理的众包测试报告相似度检测的方法 |
CN111815167A (zh) * | 2020-07-09 | 2020-10-23 | 杭州师范大学 | 一种自动化众包测试绩效考核方法和装置 |
CN112527611A (zh) * | 2020-09-24 | 2021-03-19 | 上海趣蕴网络科技有限公司 | 一种产品健康度评估方法及*** |
CN112416780B (zh) * | 2020-11-25 | 2022-03-25 | 南京大学 | 一种众包测试报告的处理和分类方法 |
CN112416780A (zh) * | 2020-11-25 | 2021-02-26 | 南京大学 | 一种众包测试报告的处理和分类方法 |
CN112434518A (zh) * | 2020-11-30 | 2021-03-02 | 北京师范大学 | 一种文本报告打分方法及*** |
CN112434518B (zh) * | 2020-11-30 | 2023-08-15 | 北京师范大学 | 一种文本报告打分方法及*** |
CN113780366A (zh) * | 2021-08-19 | 2021-12-10 | 杭州电子科技大学 | 基于ap近邻传播算法的众包测试报告聚类方法 |
CN113780366B (zh) * | 2021-08-19 | 2024-02-13 | 杭州电子科技大学 | 基于ap近邻传播算法的众包测试报告聚类方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110928764B (zh) | 2023-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110928764A (zh) | 移动应用众包测试报告自动化评估方法及计算机存储介质 | |
JP7090936B2 (ja) | Esg基盤の企業評価遂行装置及びその作動方法 | |
CN108073568B (zh) | 关键词提取方法和装置 | |
Hartson et al. | Criteria for evaluating usability evaluation methods | |
Hartson et al. | Criteria for evaluating usability evaluation methods | |
CN110188047B (zh) | 一种基于双通道卷积神经网络的重复缺陷报告检测方法 | |
CN111738589B (zh) | 基于内容推荐的大数据项目工作量评估方法、装置及设备 | |
CN111343147B (zh) | 一种基于深度学习的网络攻击检测装置及方法 | |
CN111090735B (zh) | 一种基于知识图谱的智能问答方法的性能评价方法 | |
KR20190110084A (ko) | Esg 기반의 기업 평가 수행 장치 및 이의 작동 방법 | |
CN112989621A (zh) | 一种模型性能评价方法、装置、设备及存储介质 | |
CN111309577B (zh) | 一种面向Spark的批处理应用执行时间预测模型构建方法 | |
CN114491034B (zh) | 一种文本分类方法及智能设备 | |
TW201416887A (zh) | 新聞文本情緒傾向分析方法 | |
CN117435718A (zh) | 一种科技情报推荐方法及*** | |
CN107480126B (zh) | 一种工程材料类别智能识别方法 | |
CN116610592B (zh) | 基于自然语言处理技术的可定制软件测试评价方法及*** | |
CN113792141B (zh) | 基于协方差度量因子的特征选择方法 | |
CN111654853B (zh) | 一种基于用户信息的数据分析方法 | |
JP2008282111A (ja) | 類似文書検索方法、プログラムおよび装置 | |
CN113962565A (zh) | 一种基于大数据的项目评分方法、***和可读存储介质 | |
CN114610882A (zh) | 一种基于电力短文本分类的异常设备编码检测方法和*** | |
KR20200088164A (ko) | 소셜 네트워크 서비스 메시지의 감정 분석을 위한 POS(part of speech) 특징기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치 | |
CN116932487B (zh) | 一种基于数据段落划分的量化式数据分析方法及*** | |
CN112115705B (zh) | 一种电子简历的筛选方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |