首页 / 专利库 / 专利权 / 第I章 / 受理局 / 形式要求 / 缺陷 / 一种软件测试缺陷预测方法及系统

一种软件测试缺陷预测方法及系统

阅读:5发布:2021-02-19

专利汇可以提供一种软件测试缺陷预测方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 涉及 大数据 分析提取技术领域,尤其涉及一种用 软件 测试 缺陷 预测方法及系统。本发明软件测试缺陷预测方法,包括: 数据采集 、 数据处理 、数据分类、数据分析等步骤。基于目前已有的或者可以实时更新的软件项目测试情况的大数据进行 数据挖掘 ,实现对软件测试缺陷的预测方法。数据挖掘是通过从大数据中剥离有效的数据,通过数据清洗、数据分类、从而找到测试缺陷的规律性。,下面是一种软件测试缺陷预测方法及系统专利的具体信息内容。

1.一种软件测试缺陷预测方法,其特征在于,包括:
步骤S1,数据采集,收集来自多个测试客户端的测试管理数据,获得包含多个测试管理数据的测试管理数据集合;
步骤S2,数据处理,筛选和预处理所述测试管理数据集合,获得测试特征数据集合;
步骤S3,数据分类,将所述测试特征数据集合按照分类模式分为不同的数据簇;
步骤S4,数据分析,查找与输入的待分析软件测试信息匹配的所述数据簇,根据所述数据簇预测待分析软件测试的测试缺陷信息;
其中,所述测试管理数据至少包括测试项目信息、软件版本信息和测试缺陷信息;所述待分析软件测试信息至少包括测试项目信息和软件版本信息;
所述测试缺陷信息至少包括缺陷类型信息和缺陷数量信息;所述缺陷类型信息用于表示缺陷的严重程度,所述缺陷数量信息与所述缺陷类型信息一一对应;
所述测试项目信息,至少包括项目类型信息、测试人员信息、开发人员信息、测试开始时间信息、测试结束时间信息;
所述软件版本信息,至少包括主版本号信息、子版本号信息;
所述步骤S2进一步包括:
步骤S201,数据筛选,包括从所述测试管理数据集合中挑选出能够提取出特征参数的数据,组成有效测试数据集合;
步骤S202,数据预处理,包括提取所述有效测试数据集合中的测试管理数据的特征参数,组成测试特征数据集合;
所述步骤S3进一步包括:
步骤S301,初次分类,将所述测试特征数据集合中的特征数据分为不同的数据簇;
步骤S302,再次分类,将各所述数据簇中的特征数据分为不同的子数据簇;
步骤S303,均值计算,计算各所述子数据簇的平均测试缺陷信息。
2.根据权利要求1所述的一种软件测试缺陷预测方法,其特征在于,所述步骤S302中,对各所述数据簇中的特征数据通过聚类分为不同的子数据簇。
3.根据权利要求1所述的一种软件测试缺陷预测方法,其特征在于,所述步骤S4进一步包括:
步骤S401,初次匹配,根据所述待分析软件测试的测试项目信息查找与所述待分析软件测试匹配的数据簇;
步骤S402,再次匹配,在步骤S401获得的数据簇中,查找与所述待分析软件测试的测试项目信息和软件版本信息匹配的子数据簇;
步骤S403,缺陷预测,根据步骤S402获得的子数据簇的平均测试缺陷信息预测所述待分析软件测试的测试缺陷信息。
4.一种软件测试缺陷预测系统,其特征在于,包括:
数据采集模,收集来自多个测试客户端的测试管理数据,获得包含多个测试管理数据的测试管理数据集合;
数据处理模块,筛选和预处理所述测试管理数据集合,获得测试特征数据集合;
数据分类模块,将所述测试特征数据集合按照分类模式分为不同的数据簇;
数据分析模块,根据输入的待分析软件测试信息和所述测试特征数据集合,预测待分析软件测试的测试缺陷信息;
其中,所述测试管理数据至少包括测试项目信息、软件版本信息和测试缺陷信息;所述待分析软件测试信息至少包括测试项目信息和软件版本信息;所述测试缺陷信息至少包括缺陷类型信息和缺陷数量信息;所述缺陷类型信息用于表示缺陷的严重程度,所述缺陷数量信息与所述缺陷类型信息一一对应;
所述数据处理模块进一步包括:
数据筛选单元,从所述测试管理数据集合中挑选出能够提取出特征参数的数据,组成有效测试数据集合;
数据预处理单元,提取所述有效测试数据集合中的测试管理数据的特征参数,组成测试特征数据集合;
所述数据分类模块进一步包括:
初次分类单元,将所述测试特征数据集合中的特征数据分为不同的数据簇;
再次分类单元,将各所述数据簇中的特征数据分为不同的子数据簇;
均值计算单元,计算各所述子数据簇的平均测试缺陷信息。
5.根据权利要求4所述的一种软件测试缺陷预测系统,其特征在于,所述数据分析模块进一步包括:
初次匹配单元,根据所述待分析软件测试信息中的测试项目信息查找与所述待分析软件测试匹配的数据簇;
再次匹配单元,在所述初次匹配单元获得的数据簇中,查找与所述待分析软件测试的测试项目信息和软件版本信息匹配的子数据簇;
缺陷预测单元,根据所述再次匹配单元获得的子数据簇的平均测试缺陷信息预测所述待分析软件测试的测试缺陷信息。

说明书全文

一种软件测试缺陷预测方法及系统

技术领域

[0001] 本发明涉及大数据分析提取技术领域,尤其涉及一种用软件测试缺陷预测方法及系统。

背景技术

[0002] 大数据(big data),指无法在可承受的时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策、洞察发现力和流程优化能力来适应海量、高增长率和多样化的信息资产。
[0003] 数据挖掘(Data mining),又译为资料探勘、数据采矿。它是数据库知识发现中的一个步骤。数据挖掘一般是指从大量的数据中通过算法搜索隐藏于其中信息的过程。数据挖掘通常与计算机科学有关,并通过统计、在线分析处理、情报检索、机器学习专家系统(依靠过去的经验法则)和模式识别等诸多方法来实现上述目标。
[0004] 软件测试是软件生命周期中的一个环节,是使用人工操作或者软件自动运行的方式来检验软件产品是否满足规定的需求。在测试过程中,发现的某种破坏产品正常运行,错误,或者隐藏的功能的问题就是软件缺陷,也被叫做Bug。软件缺陷的存在会导致软件产品在某种程度上不能满足用户的需求,或者影响用户的使用体验。
[0005] 软件测试缺陷从属性上分有缺陷标识、缺陷类型、缺陷严重程度、缺陷优先级、缺陷状态、缺陷根源等。缺陷在软件测试生命周期的不同阶段,也是就是不同软件版本的情况下,会有不同的分布。不同公司、不同行业、由于采用的不同开发过程和各种人为因素都对缺陷的数量、严重程度、发生模等有不同影响。正因为这些多变元素的存在,对于每个软件版本会出现的缺陷,目前很难做到预测。大多数情况下,产品负责人和测试负责人会根据自己的经验值和项目情况来预估可能产生的缺陷数量和险评价,从而判断测试过程中是否符合正常的趋势。
[0006] 目前,对软件缺陷管理有很多成熟的管理工具,比如Bugzilla,Bugfree等。当然还有很多提供测试平台服务的公司,我们可以在这种公有的平台上搭建环境进行软件测试,同时对软件产品进行缺陷管理。这些工具和平台将会产生很多测试相关的数据,那么我们可以利用这些数据找到相关性,使用数据挖掘的技术,对不同版本的测试进行缺陷预估。
[0007] 如果有种方法可以按照项目情况在测试执行之前就可以做出预估,可以为对测试负责人对软件测试的管理,产品负责人对软件产品的市场分布和市场规划,提供可靠的数据支持,有较大的辅助作用。

发明内容

[0008] 针对上述现状,本发明公开了一种可以基于软件项目的各个版本测试情况的大数据,通过数据挖掘技术来获得软件测试缺陷数量的预测方法和系统。
[0009] 本发明提供了一种软件测试缺陷预测方法,其包括:
[0010] 步骤S1,数据采集,收集来自多个测试客户端的测试管理数据,获得包含多个测试管理数据的测试管理数据集合;
[0011] 步骤S2,数据处理,筛选和预处理所述测试管理数据集合,获得测试特征数据集合;
[0012] 步骤S3,数据分类,将所述测试特征数据集合按照分类模式分为不同的数据簇;
[0013] 步骤S4,数据分析,查找与输入的待分析软件测试匹配的所述数据簇,根据所述数据簇预测待所述分析软件测试的测试缺陷信息;
[0014] 其中,所述测试管理数据至少包括测试项目信息、软件版本信息和测试缺陷信息;所述待分析软件测试信息至少包括测试项目信息和软件版本信息;
[0015] 所述测试缺陷信息至少包括缺陷类型信息和缺陷数量信息;所述缺陷类型信息用于表示缺陷的严重程度,所述缺陷数量信息与所述缺陷类型信息一一对应。
[0016] 作为优选,所述测试项目信息,至少包括项目类型信息、测试人员信息、开发人员信息、测试开始时间信息、测试结束时间信息;所述软件版本信息,至少包括主版本号信息、子版本号信息。
[0017] 作为优选,所述步骤S2进一步包括
[0018] 步骤S201,数据筛选,包括从所述测试管理数据集合中挑选出能够提取出特征参数的数据,组成有效测试数据集合;
[0019] 步骤S202,数据预处理,包括提取所述有效测试数据集合中的测试管理数据的特征参数,组成测试特征数据集合。
[0020] 作为优选,所述步骤S3进一步包括:
[0021] 步骤S301,初次分类,将所述测试特征数据集合中的特征数据分为不同的数据簇;
[0022] 步骤S302,再次分类,将各所述数据簇中的特征数据分为不同的子数据簇;
[0023] 步骤S303,均值计算,计算各所述子数据簇的平均测试缺陷信息。
[0024] 作为优选,所述步骤S302中,对各所述数据簇中的特征数据通过聚分类分为不同的子数据簇。
[0025] 作为优选,所述待分析软件测试的测试信息至少包括所述测试项目信息、所述软件版本信息;所述步骤S4进一步包括:
[0026] 步骤S401,初次匹配,根据所述待分析软件测试的测试项目信息查找与所述待分析软件测试匹配的数据簇;
[0027] 步骤S402,再次匹配,在步骤S401获得的数据簇中,查找与所述待分析软件测试的测试项目信息和软件版本信息匹配的子数据簇;
[0028] 步骤S403,缺陷预测,根据步骤S402获得的数据簇的平均测试缺陷信息预测所述待分析软件测试的测试缺陷信息。
[0029] 本发明还提供了一种软件测试缺陷预测系统,其包括:
[0030] 数据采集模块,收集来自多个测试客户端的测试管理数据,获得包含多个测试管理数据的测试管理数据集合;
[0031] 数据处理模块,筛选和预处理所述测试管理数据集合,获得测试特征数据集合;
[0032] 数据分类模块,将所述测试特征数据集合按照分类模式分为不同的数据簇;
[0033] 数据分析模块,根据输入的待分析软件测试信息和所述测试特征数据集合,预测待分析软件测试的测试缺陷信息;
[0034] 其中,所述测试管理数据至少包括测试项目信息、软件版本信息和测试缺陷信息;所述待分析软件测试信息至少包括测试项目信息和软件版本信息;所述测试缺陷信息至少包括缺陷类型信息和缺陷数量信息;所述缺陷类型信息用于表示缺陷的严重程度,所述缺陷数量信息与所述缺陷类型信息一一对应。
[0035] 作为优选,所述数据处理模块进一步包括:
[0036] 数据筛选单元,从所述测试管理数据集合中挑选出能够提取出特征参数的数据,组成有效测试数据集合;
[0037] 数据预处理单元,提取所述有效测试数据集合中的测试管理数据的特征参数,组成测试特征数据集合。
[0038] 作为优选,所述数据分类模块进一步包括
[0039] 初次分类单元,将所述测试特征数据集合中的特征数据分为不同的数据簇;
[0040] 再次分类单元,将各所述数据簇中的特征数据分为不同的子数据簇;
[0041] 均值计算单元,计算各所述子数据簇的平均测试缺陷信息。
[0042] 作为优选,所述待分析软件测试的测试信息至少包括所述测试项目信息、所述软件版本信息;所述数据分析模块进一步包括
[0043] 初次匹配单元,根据所述待分析软件测试的测试项目信息查找与所述待分析软件测试匹配的数据簇;
[0044] 再次匹配单元,在所述初次匹配单元获得的数据簇中,查找与所述待分析软件测试的测试项目信息和软件版本信息匹配的子数据簇;
[0045] 缺陷预测单元,根据所述再次匹配单元获得的数据簇的平均测试缺陷信息预测所述待分析软件测试的测试缺陷信息。
[0046] 本发明用软件测试缺陷预测方法及系统,基于目前已有的或者可以实时更新的软件项目测试情况的大数据进行数据挖掘,实现对软件测试缺陷的预测方法。数据挖掘是通过从大数据中剥离有效的数据,通过数据清洗、数据分类、从而找到测试缺陷的规律性。附图说明
[0047] 附图1本发明实施例的软件测试缺陷预测系统的系统图。
[0048] 附图2本发明实施例的软件测试缺陷预测方法流程图

具体实施方式

[0049] 以下具体实施例仅仅是对本发明的解释,其并不是对本发明的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本发明的权利要求范围内都受到专利法的保护。虽然附图中显示了本公开的示例性实施例,然而当然可以理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开并且能够将本公开的范围完整的传达给本领域的技术人员。
[0050] 本发明的技术任务是基于目前已有的或者可以实时更新的软件项目测试情况的大数据进行数据挖掘,实现对软件测试缺陷的预测方法。数据挖掘是通过从大数据中剥离有效的数据,通过数据清洗、数据分类、从而找到测试缺陷的规律性。
[0051] 实施例一
[0052] 如图1所示,一种软件测试缺陷预测系统,包括:
[0053] 一.数据采集模块
[0054] 收集来自多个测试客户端的测试管理数据,获得包含多个测试管理数据的测试管理数据集合。测试管理数据至少包括测试项目信息、软件版本信息和测试缺陷信息。其中:
[0055] 测试项目信息,至少包括项目类型信息、测试人员信息、开发人员信息、测试开始时间信息、测试结束时间信息。根据所述测试项目信息可以区分待测试的软件产品属于哪种类型的项目。不同的项目,产生的缺陷也是不同的。比如做电子商务Web端的产品和做电子商务APP端的产品,它们在不同的软件版本中会有不同的缺陷分布,在添加项目的时候尽量对项目类型进行较细的分类。测试过程中,测试执行时间(通过测试开始时间信息和测试结束时间信息可以获得)、测试人员和开发人员的分配、软件版本这些数据对于缺陷预测是有帮助的。相对来说,测试执行时间较长,代表测试过程中可以投入更多的时间,对产品进行细致的测试,可能会增加严重程度较低的缺陷数量。测试人员和开发人员的分配比,以及人数安排也会对缺陷数量和严重程度有影响。一般,如果开发人员较多,代表产品的成熟度较高,出现严重程度高的缺陷概率会低。而如果测试人员较少的话,发现缺陷的数量也可能会因为个人能力、时间等问题而降低。
[0056] 软件版本信息,至少包括主版本号信息、子版本号信息。不同的软件版本,也会对缺陷数量有影响。比如子版本越大,代表测试的迭代数越多,相对产品会比低版本的软件更加稳定,产生的缺陷也会减少。
[0057] 那么,根据上面这些情况可以启发到,这些测试大数据的背后应该是有一定的规律性,可以根据这些规律,对缺陷进行预测获得测试缺陷信息。
[0058] 测试缺陷信息至少包括缺陷类型信息和缺陷数量信息。缺陷类型信息用于表示缺陷的严重程度,缺陷数量信息与所述缺陷类型信息一一对应。
[0059] 二.数据处理模块
[0060] 筛选和预处理所述测试管理数据集合,获得测试特征数据集合。进一步包括:
[0061] 数据筛选单元,从所述测试管理数据集合中挑选出能够提取出特征参数的数据,组成有效测试数据集合。
[0062] 数据预处理单元,提取所述有效测试数据集合中的测试管理数据的特征参数,组成测试特征数据集合。
[0063] 三.数据分类模块
[0064] 将所述测试特征数据集合按照分类模式分为不同的数据簇。进一步包括:
[0065] 初次分类单元,将所述测试特征数据集合中的特征数据按照第一分类模型分为不同的数据簇。
[0066] 再次分类单元,对各所述数据簇中的特征数据按照第二分类模型分为不同的子数据簇;
[0067] 均值计算单元,计算各所述子数据簇的平均测试缺陷信息。
[0068] 四.数据分析模块
[0069] 根据输入的待分析软件测试信息和所述测试特征数据集合,预测待分析软件测试的测试缺陷信息。待分析软件测试信息至少包括测试项目信息和软件版本信息。该模块进一步包括:
[0070] 初次匹配单元,根据所述待分析软件测试的测试项目信息查找与所述待分析软件测试匹配的数据簇。
[0071] 再次匹配单元,在所述初次匹配单元获得的数据簇中,查找与所述待分析软件测试的测试项目信息和软件版本信息匹配的子数据簇。
[0072] 缺陷预测单元,根据所述再次匹配单元获得的数据簇的平均测试缺陷信息预测所述待分析软件测试的测试缺陷信息。
[0073] 本发明的技术任务是按照以下方式实现的,如图2所示,该方法的操作步骤如下:
[0074] 步骤S1,数据采集,利用多个数据库来收集来自多个测试客户端(Web、App等)的测试管理数据,获得包含多个测试管理数据的测试管理数据集合。比如目前有很多企业会在云测试平台中对自己的软件项目的测试缺陷进行管理,而这些管理数据就可以作为采集的目标,组成测试管理数据集合,作为后续缺陷预测的数据来源。
[0075] 步骤S2,数据处理,筛选和预处理所述测试管理数据集合,获得测试特征数据集合。对获取的测试管理数据需要进行筛选,导入待分析的数据库。还需要对这些未经过加工的测试管理数据,进行预处理,提取出有特征值的数据。比如,我们需要从中获取测试项目的类型、执行天数、测试人员和开发人员的分配、版本号等有效数据。
[0076] 步骤S3,数据分类,将所述测试特征数据集合按照分类模式分为不同的数据簇。
[0077] 步骤S4,数据分析,查找与输入的待分析软件测试匹配的所述数据簇,根据所述数据簇预测待所述分析软件测试的测试缺陷信息。
[0078] 具体方法为:
[0079] 一.步骤S1数据采集
[0080] 一般在管理测试缺陷的时候,测试人员会根据项目需要在缺陷管理系统中首先创建一个项目,输入项目的基本信息,比如项目类型、测试人员、开发人员、项目的开始日期、模块划分等。接着,在测试开始前,也会输入软件版本、测试文档存放地址、软件代码存放地、测试工具等信息。然后,在测试进行的时候,会在系统中录入缺陷,这里在录入的时候需要定义缺陷的名称、严重程度、紧急程度、重现步骤、创建者、缺陷状态等信息。在缺陷修复的时候,也需要对缺陷状态进行及时更新。所以,在整个软件测试生命周期中,会产生很多缺陷管理的相关数据。我们可以从大数据库中获得这些相关的原始数据,从而得到有利用价值的信息。
[0081] 二.步骤S2,数据处理
[0082] 步骤S201,数据筛选,包括从所述测试管理数据集合中挑选出能够提取出特征参数的数据,组成有效测试数据集合。
[0083] 这是指对各种脏数据进行对应方式的处理,得到标准的、干净的、连续的数据,提供给后面的数据统计、数据挖掘等使用。数据的筛选可以根据数据的完整性、唯一性、权威性、合法性、一致性等来解决。比如,如果我们这里有项目类型是“0”的内容,这就不符合合法性的原则了,对于这种数据是需要剔除的。
[0084] 经过筛选后得到的有效测试数据包含:
[0085] 能够直接获得特征参数的数据,如:项目类型、测试人员数量、开发人员数量、测试开始日期、测试结束日期、节假日、版本编号、每个版本的缺陷数量等。
[0086] 需经预处理来获得特征参数的数据,如:
[0087] 测试版本号=V i.j(注:一般我们会用V主版本号.子版本号[.修正版本号[.编译版本号]],来表示。比如V 1.0.169,V 2.1.0,这种格式来记录软件版本。一般第一和第二位数字的变化会认为是一个较大的版本,而第三位数字的变化都是迭代的小版本)。
[0088] 测试时间(天)=测试结束日期-测试开始日期-节假日。
[0089] A类缺陷数量=版本中A类缺陷新激活数量(注:一般会用A、B、C、D高到低来区分缺陷的严重程度,这个也是测试人员判断产品在这个版本中的功能实现和稳定性的重要数据来源)。
[0090] B类缺陷数量=版本中B类缺陷新激活数量。
[0091] C类缺陷数量=版本中C类缺陷新激活数量。
[0092] D类缺陷数量=版本中D类缺陷新激活数量。
[0093] 步骤S202,数据预处理,包括提取所述有效测试数据集合中的测试管理数据的特征参数,组成测试特征数据集合。即从上述测试版本号中提取主版本号信息、子版本号信息、测试时间信息、各种缺陷类型的缺陷的缺陷数量信息等特征参数。
[0094] 三.步骤S3数据分类
[0095] 步骤S301,初次分类,将所述测试特征数据集合中的特征数据按照第一分类模型分为不同的数据簇;
[0096] 步骤S302,再次分类,对各所述数据簇中的特征数据按照第二分类模型分为不同的子数据簇;
[0097] 步骤S303,均值计算,计算各所述子数据簇的平均测试缺陷信息。
[0098] 例如,目前需要对不同严重程度的缺陷按照测试时间、版本号(主版本号和/或子版本号)、测试人员、开发人员进行分类。这里以A类缺陷分类进行描述,测试特征数据包括:{测试版本号,测试时间,测试人员数量,开发人员数量,A类缺陷数量}。如:
[0099] 数据1:{V1.1,20,2,5,15}
[0100] 数据2:{V1.2,15,2,5,6}
[0101] 数据3:{V1.3,15,2,3,1}
[0102] 数据4:{V2.1,22,2,5,13}
[0103] 数据5:{V2.2,20,1,3,6}
[0104] 数据6:{V2.3,20,2,3,0}
[0105] 数据7:{V2.4,10,2,2,0}
[0106] 数据8:{V3.1,22,3,8,8}
[0107] ……
[0108] 得到数据簇{数据1,数据2,数据3,数据4,数据5,数据6,数据7,数据8,...}。
[0109] 然后使用k-means++的方法,对这些数据簇中的这些数据进行聚类分析
[0110] a)从该数据簇中随机选择一个点作为第一个聚类中心。比如我们可以选择“数据2:{V1.2,15,2,5,6}”作为第一个聚类中心。
[0111] b)对于数据簇中的每一个点x,计算它与聚类中心的距离D(x)。比如数据1与数据2的距离为D(1),数据3与数据2的距离为D(2),以此获得其他的距离。
[0112] 本实施例中的数据是5个维度(w、v、x、y、z)来确定点位的,我们可以根据坐标轴上2点距离的方法来确定每个数据点与中心点的距离,如以下公式:
[0113]
[0114] c)选择一个新的数据点最为新的聚类中心,这里选择的原则是:D(x)较大的点。
[0115] d)然后重复步骤b、c直到K个聚类中心被选出来。注意,这里的K是指将数据簇中的数据分为K个子数据簇。目前对于K的选择没有较好的方法,一般可以按照经验值来确定。比如电子商务项目可以用K=5,移动办公项目可以用K=3。
[0116] e)利用这K个初始的聚类中心来运行标准的K-means算法。
[0117] f)将数据簇中的数据点划分到最近的中心点那一子数据簇。本实施例中的数据是5个维度(w、v、x、y、z)来确定点位的,我们可以步骤b中的距离计算公式来确定每个数据点与中心点的距离,然后进行划分。
[0118] g)更新每个子数据簇的中心,即把该子数据簇的所有数据点的坐标加起来取平均值。
[0119] h)重复f、g直到每个子数据簇的中心不在移动位为止。
[0120] 通过上面的K-means++的方法可以对数据簇进行聚分类,这样可以分别获得缺陷A、B、C、D的数据簇分类的情况,从而为下一步的分析做准备。
[0121] 四.步骤S4数据分析
[0122] 步骤S401,初次匹配,根据所述待分析软件测试的测试项目信息查找与所述待分析软件测试匹配的数据簇。
[0123] 步骤S402,再次匹配,在步骤S401获得的数据簇中,查找与所述待分析软件测试的测试项目信息和软件版本信息匹配的子数据簇。
[0124] 步骤S403,缺陷预测,根据步骤S402获得的数据簇的平均测试缺陷信息预测所述待分析软件测试的测试缺陷信息。
[0125] 比如这里有个电子商务的软件测试项目,目前版本是V1.1,测试人员为2,开发人员为5,那么我们可以获得这样的包含待分析软件的测试信息的待分析软件测试数据{电子商务,V1.1,2,5}。
[0126] 首先,可以根据该软件测试的项目类型信息(即电子商务)进行初次匹配,选择电子商务的数据簇来作为预测分析的数据源。然后将软件测试数据{V1.1,2,5}选择合适的子数据簇放入比对。这里可以用到KNN邻近算法,来将我们需要预测的数据点匹配到与它最相近的子数据簇中。
[0127] KNN算法是指,在距离空间里,如果一个样本的最近的K个邻居里绝大多数属于某个类别,则该样本也属于这个类别。比如我们这个样本x{V 1.1,2,5},对应子数据簇1{数据1,数据4,数据9,数据12...},子数据簇2{数据2,数据5,数据15...},...,子数据簇n中与子数据簇1临近4个,其他子数据簇都小于4个,那么样本x可以属于子数据簇1。
[0128] 然后,从子数据簇1的缺陷数量的平均值,获得该待分析软件测试项目的缺陷数量。比如A类缺陷的平均值为13,那么这个版本这个项目的A类缺陷预测数量为13个。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈