一种基于用例库的自动化测试方法

文档序号:8258329阅读:606来源:国知局
一种基于用例库的自动化测试方法
【技术领域】
[0001] 本发明涉及一种系统业务测试方法,尤其涉及一种基于用例库的自动化测试方 法。
【背景技术】
[0002] 在信息化飞速发展的今天,网络支持类应用软件的更新换代越来越快,客户对软 件测试效率、软件质量提出双高要求。在这种大背景下,作为通讯负载的网络运营行业,更 是面临着前所未有的挑战,网络支撑产品的更新效率、质量直接影响着服务的质量,如何让 业务能尽快上线,正常运行,测试是一重要环节。通讯网络支撑产品业务复杂,关联度高,数 据量大,如何在短的时间内对一个复杂的业务系统进行精准的测试覆盖已经成为当前测试 考虑的首要问题,自动化测试执行将直接提高测试效率。
[0003] 近些年来,软件测试技术呈现出了高速发展的态势,测试工具层出不穷,自动化测 试技术取得了长足的发展,但是自动化测试并没有实现用例按照一定的标准进行筛选和执 行,全部执行和手工筛选仍然是主流的操作方式,总结目前测试用例的来源主要有以下几 方面:
[0004] 所有脚本和用例全部执行测试:所有的脚本和用例不通过任何筛选,全部触发执 行。不论被测系统的变更大小,在变更后无条件执行所有脚本和用例,并作执行后的分析和 问题定位。
[0005] 手工筛选用例和脚本执行测试:依据变更业务所涉及的模块和变更内容,结合自 身的工作经验,进行用例和脚本的筛选,然后进行手工和自动化测试。
[0006] 上述测试用例的筛选和执行很难突破自身的限制,在复杂系统中高效率的执行测 试任务。再加上人员素质的限制,测试用例的筛选很难按照统一的标准去衡量,因此有必要 将测试用例的筛选过程标准化,将测试用例的筛选和执行脱离人员素质的束缚,建立一套 行之有效的测试执行方法。
[0007] 面对通讯行业应用系统新需求多且复杂、需求变更频繁、版本更新快、业务交错、 测试时间紧迫等情况,上述提及的测试用例筛选和执行方式,显然已经难以满足需要,低下 的用例效率和测试覆盖不全的情况必然会导致系统上线后问题频出,严重影响服务质量和 公司效益。
[0008] 在时间至上的信息化时代,项目进度环环相扣,测试时间紧迫,测试用例更是堆积 如山,手工筛选测试用例,不但效率低下,而且覆盖率会大大下降,影响系统上线质量。由上 可见,现有用例筛选和执行方式,主要有以下缺点:
[0009] 执行效率低:脚本和测试用例不做任何筛选,无条件全部执行。这样会直接加重测 试执行的负担,所有脚本都做执行,显然会导致脚本执行后的分析任务增加,促使测试执行 时间加长,不能满足快速上线测试的要求;
[0010] 用例覆盖率低,测试不充分:人工筛选用例,存在较大的随意性,且如果测试人员 经验不足,会进一步导致测试用例覆盖率低下,对需求测试不充分,直接导致上线质量差;
[0011] 测试用例筛选颗粒度不一致:测试用例的筛选没有统一标准,都是按照个人的经 验进行筛选,这种因人而异的筛选方式,将直接导致测试执行的颗粒度不一致,不能形成统 一的标准;
[0012] 用例生命周期管理混乱:当业务功能变更或者下线后,测试用例和脚本不能立即 作出调整和删除,影响后续的测试执行和脚本的执行,会导致脚本执行的阻塞,用例不能执 行的现象发生。

【发明内容】

[0013] 本发明所要解决的技术问题是提供一种基于用例库的自动化测试方法,能够保证 测试用例筛选颗粒度的一致性,提高测试用例覆盖率和测试效率。
[0014] 本发明为解决上述技术问题而采用的技术方案是提供一种基于用例库的自动化 测试方法,包括如下步骤:a)先将系统包含的所有业务类型按所属功能模块进行初步归 类,每个业务类型至少包括一个业务流程节点;b)接着采用聚类算法对所有业务类型,按 照其包含的流程节点的相似度进行分类;c)确定需求变更涉及的业务类型,按照层次分析 法计算需求变更对关联业务类型的影响权值;d)按照影响权值大小对关联业务进行排序 筛选形成测试业务集合,然后按照测试业务名称从用例库中抽取测试用例并形成自动化测 试脚本。
[0015] 上述的基于用例库的自动化测试方法,其中,所述步骤a)中每个业务流程节点包 括所属功能模块、界面参数配置和数据库表。
[0016] 上述的基于用例库的自动化测试方法,其中,所述步骤b)包括如下步骤:确定初 步归类后每个业务类型和业务流程节点中的功能模块、界面参数配置和数据库表之间的量 化关系,如果有关联则赋予值1,否则赋予值0 ;指定聚类数目k,并将所有样本分为k类,k 为正整数,k的最小值为2,最大值不超过样本数;选择k行新需求影响的业务类型样本作为 聚类的中心点,选择欧式距离作为相似性度量计算数据样本点与中心点的距离。
[0017] 上述的基于用例库的自动化测试方法,其中,所述步骤c)以新需求为目标层,以 通过聚类算法分类后的业务类型为准则层构造判断矩阵,通过求出判断矩阵最大特征值及 其所对应的特征向量W,归一化后,即为各业务类型对于新需求的影响权值。
[0018] 上述的基于用例库的自动化测试方法,其中,所述步骤a)中初步归类后的业务类 型包括开户业务bl、过户业务b2、分合户业务b3和缴费业务b4,所述新需求为实名制需求 A,所述层次分析法采用变更数据库表作为方案层,所述变更数据库表包括实名表制表添加 C1和客户表字段添加C2 ;根据所述步骤b)中采用聚类算法分类后的业务类型,确定与实名 制需求A相关联的业务类型包括开户业务bl、过户业务b2、分合户业务b3和缴费业务b4 ; 所述步骤c)包括如下过程:i)先构造判断矩阵A-B判断实名制需求A对开户业务bl、过户 业务b2、分合户业务b3和缴费业务b4的关联度;ii)构建矩阵bl-C,判断实现实名制需求 的两个方案实名表制表添加C1和客户表字段添加C2对开户业务bl的影响;iii)构建矩 阵b2-C,判断实现实名制需求的两个方案实名表制表添加C1和客户表字段添加C2对过户 业务b2的影响;iv)构建矩阵b3-C,判断实现实名制需求的两个方案实名表制表添加C1和 客户表字段添加C2对分合户业务b3的影响;v)构建矩阵b4-C,判断实现实名制需求的两 个方案实名表制表添加C1和客户表字段添加C2对缴费业务b4的影响;vi)使用求根法计 算各矩阵的权重值,得出实名制表添加Cl和客户表字段添加C2对各业务类型的影响权值 大小。
[0019] 上述的基于用例库的自动化测试方法,其中,所述步骤a)中的业务类型还包括积 分兑换、用户积分查询和客户资料补录,所述步骤a)中的业务流程节点包括客户鉴权、选 号选卡、订单处理、工单处理、计费处理、开通处理和账务处理。
[0020] 上述的基于用例库的自动化测试方法,其中,还包括以条形图的方式展示新需求 对所有业务类型的影响权值。
[0021] 上述的基于用例库的自动化测试方法,其中,所述步骤d)选取影响权值大于第一 阀值的关联业务作为测试业务。
[0022] 上述的基于用例库的自动化测试方法,其中,所述步骤d)选取影响权值大于第二 阀值的关联业务作为全覆盖测试业务,所述第二阀值大于所述第一阀值。
[0023] 上述的基于用例库的自动化测试方法,其中,所述测试用例分为手工测试用例和 自动化测试用例,所述自动化测试用例通过自动化测试脚本触发执行,所述手工测试用例 通过Excel文档导出。
[0024] 本发明对比现有技术有如下的有益效果:本发明提供的基于用例库的自动化测试 方法,将所有业务类型先按所属功能模块进行初步归类,接着采用聚类算法对所有业务类 型的相似度进行分类,再按照层次分析法计算需求变更对关联业务类型的影响权值,最后 按照影响权值大小对关联业务进行排序筛选形成测试业务集合,从而能够保证测试用例筛 选颗粒度的一致性,提高测试用例覆盖率和测试效率。此外,本发明从基于用户的角度明 确需求变更直接影响的业务,并通过分析获取各个业务之间存在的依赖关系,明确业务的 变化对其他因素是否存在影响,通过合适的算法获取各业务之间的影响度,能够直观、准确 地计算新需求对各业务的影响度,从而便于后续的测试用例筛选并合理安排后续的测试任 务,大大增强系统变更的可控性。
【附图说明】
[0025] 图1为本发明基于用例库的自动化测试框架示意图;
[0026] 图2为本发明业务影响度分析控制流程示意图;
[0027]图3为本发明使用的系统功能模块架构示意图;
[0028] 图4为本发明采用聚类算法获取的每个业务与中心点业务的欧式距离坐标图;
[0029] 图5为本发明按照层次分析法计算关联业务类型影响度的架构示意图;
[0030]图6为本发明获取的所有业务的影响度数值条形图;
[0031] 图7为本发明针对CRM系统的积分改造业务分析示意图。
【具体实施方式】
[0032] 下面结合附图和实施例对本发明作进一步的描述。
[0033] 图1为本发明基于用例库的自动化测试框架示意图;图2为本发明业务影响度分 析控制流程示意图。
[0034] 请参见图1和图2,本发明提供的基于用例库的自动化测试方法包括如下步骤:
[0035] 步骤S1 :先将系统包含的所有业务类型按所属功能模块进行初步归类,如图3所 示;每个业务类型至少包括一个业务流程节点;每个业务流程节点包括所属功能模块、界 面参数配置和数据库表;所述业务类型包括开户业务、过户业务、分合户业务、缴费业务、积 分兑换、用户积分查询和客户资料补录,所述业务流程节点包括客户鉴权、选号选卡、订单 处理、工单处理、计费处理、开通处理和账务处理。
[0036] 步骤S2 :接着采用聚类算法对所有业务类型,按照其包含的流程节点的相似度进 行分类;具体步骤如下:
[0037] 确定初步归类后每个业务类型和业务流程节点中的功能模块、界面参数配置和数 据库表之间的量化关系,如果有关联则赋予值1,否则赋予值0 ;
[0038] 指定聚类数目k,并将所有样本分为k类,k为正整数,k的最小值为2,最大值不超 过样本数;
[0039] 选择k行新需求影响的业务类型样本作为聚类的中心点,选择欧式距离作为相似 性度量计算数据样本点与中心点的距离。
[0040] 步骤S3 :确定需求变更涉及的业务类型,按照层次分析法计算需求变更对关联业 务类型的影响权值;具体步骤如下:以新需求为目标层,以通过聚类算法分类后的业务类 型为准则层构造判断矩阵,通过求出判断矩阵最大特征值及其所对应的特征向量W
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1